<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Robot. AI</journal-id>
<journal-title>Frontiers in Robotics and AI</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Robot. AI</abbrev-journal-title>
<issn pub-type="epub">2296-9144</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">739062</article-id>
<article-id pub-id-type="doi">10.3389/frobt.2021.739062</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Robotics and AI</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Dynamic Semantic World Models and Increased Situational Awareness for Highly Automated Inland Waterway Transport</article-title>
<alt-title alt-title-type="left-running-head">Van Baelen et&#x20;al.</alt-title>
<alt-title alt-title-type="right-running-head">Semantic World Models for IWT</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Van Baelen</surname>
<given-names>Senne</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1256638/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Peeters</surname>
<given-names>Gerben</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Bruyninckx</surname>
<given-names>Herman</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Pilozzi</surname>
<given-names>Paolo</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1526645/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Slaets</surname>
<given-names>Peter</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1402764/overview"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Department of Mechanical Engineering, KU Leuven</institution>, <addr-line>Leuven</addr-line>, <country>Belgium</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Faculty of Mechanical Engineering, TU Eindhoven</institution>, <addr-line>Eindhoven</addr-line>, <country>Netherlands</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>Flanders Make &#x2013; Leuven</institution>, <addr-line>Leuven</addr-line>, <country>Belgium</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1117418/overview">Fausto Ferreira</ext-link>, University of Zagreb, Croatia</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1428884/overview">Dzordzoenyenye Kwame Minde&#x20;Kufoalor</ext-link>, Maritime Robotics, Norway</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/609545/overview">Enrica Zereik</ext-link>, National Research Council (CNR), Italy</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Senne Van Baelen, <email>senne.vanbaelen@kuleuven.be</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Smart Sensor Networks and Autonomy, a section of the journal Frontiers in Robotics and&#x20;AI</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>17</day>
<month>01</month>
<year>2022</year>
</pub-date>
<pub-date pub-type="collection">
<year>2021</year>
</pub-date>
<volume>8</volume>
<elocation-id>739062</elocation-id>
<history>
<date date-type="received">
<day>09</day>
<month>07</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>04</day>
<month>11</month>
<year>2021</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2022 Van Baelen, Peeters, Bruyninckx, Pilozzi and Slaets.</copyright-statement>
<copyright-year>2022</copyright-year>
<copyright-holder>Van Baelen, Peeters, Bruyninckx, Pilozzi and Slaets</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these&#x20;terms.</p>
</license>
</permissions>
<abstract>
<p>Automated surface vessels must integrate many tasks and motions at the same time. Moreover, vessels as well as monitoring and control services need to react to physical disturbances, to dynamically allocate software resources available within a particular environment, and to communicate with various other actors in particular navigation and traffic situations. In this work, the responsibility for the situational awareness is given to a mediator that decides <italic>how</italic>: 1) to assess the impact of the actual physical environment on the quality and performance of the ongoing task executions; 2) to make sure these tasks satisfy the system requirements; and 3) to be robust against disturbances. This paper proposes a set of semantic world models within the context of inland waterway transport, and discusses policies and methodologies to compose, use, and connect these models. Model-conform entities and relations are composed dynamically, that is, corresponding to the opportunities and challenges offered by the actual situation. The semantic world models discussed in this work are divided into two main categories: 1) the semantic description of a vessel&#x2019;s <italic>own</italic> properties and relationships, called the <italic>internal world model</italic>, or body model, and 2) the semantic description of its local environment, called the <italic>external world model</italic>, or map. A range of experiments illustrate the potential of using such models to decide the reactions of the application at runtime. Furthermore, three dynamic, context-dependent, ship domains are integrated in the map as two-dimensional geometric entities around a moving vessel to increase the situational awareness of automated vessels. Their geometric representations depend on the associated relations; for example, with: 1) the motion of the vessel, 2) the actual, desired, or hypothesised tasks, 3) perception sensor information, and 4) other geometries, e.g., features from the Inland Electronic Navigational Charts. The ability to unambiguously understand the environmental context, as well as the motion or position of surrounding entities, allows for resource-efficient and straightforward control decisions. The semantic world models facilitate knowledge sharing between actors, and significantly enhance explainability of the actors&#x2019; behaviour and control decisions.</p>
</abstract>
<kwd-group>
<kwd>inland navigation</kwd>
<kwd>modelling</kwd>
<kwd>situational awareness</kwd>
<kwd>semantic map</kwd>
<kwd>world model</kwd>
<kwd>navigation charts</kwd>
<kwd>COLREG</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The European Inland Waterway Transport (IWT) sector has a substantial yet under-exploited potential. A dense and distributed network of rivers and canals flows through the European hinterland, especially in the more northern areas. Compared to the dominating European road-based freight transport, the IWT sector has lower external costs (<xref ref-type="bibr" rid="B7">European Commission, 2019</xref>; <xref ref-type="bibr" rid="B41">van Essen, 2018</xref>; <xref ref-type="bibr" rid="B6">Essen et&#x20;al., 2016</xref>). Over the recent years, these lower external costs&#x2014;together with the expected increase in cargo flow in the upcoming decades&#x2014;have induced a collective effort by governments, research institutions, and companies to generate a modal shift from road-based to waterway-based transport. For example, the European Commission has set the ambitious goal to push 30% of road freight transport (tkm), longer than 300&#xa0;km, to rail and water-borne transport between 2011 and 2030, and 50% by 2050 (<xref ref-type="bibr" rid="B19">Kallas, 2011</xref>).</p>
<p>Today, most novel infrastructural and technological IWT developments focus on large waterways of type CEMT III&#x2013;V (E. <xref ref-type="bibr" rid="B42">Verberght, 2019</xref>). Moreover, over the last few decades, cargo transport <italic>via</italic> smaller waterways&#x2014;which enable connections to deeper parts of the European hinterland, and facilitates integration into the synchromodal transport network&#x2014;decreased considerably (<xref ref-type="bibr" rid="B36">Tavasszy et&#x20;al., 2015</xref>). This decrease can be partially attributed to: higher relative crew cost for smaller vessels, a lack of technological improvements, inadequate smaller waterway maintenance, and negative investment climate in the sector (<xref ref-type="bibr" rid="B6">Essen et&#x20;al., 2016</xref>; <xref ref-type="bibr" rid="B34">Sys and Vanelslander, 2011</xref>).</p>
<p>Various local and European projects and developments contribute(d) to re-discovering the full capacity of the inland waterways, as well as to systems-of-systems automation and coordination. Two novel smaller vessel concepts (CEMT I&#x2013;II) were recently introduced and constructed (<xref ref-type="bibr" rid="B37">The European Commission, 2019</xref>; <xref ref-type="bibr" rid="B42">Verberght, 2019</xref>) which exhibit a higher automation potential compared to older vessels (<xref ref-type="bibr" rid="B28">Peeters, 2021</xref>). Furthermore, the <xref ref-type="bibr" rid="B3">AVATAR (2021)</xref> project aims to develop urban vessels that are capable of navigating small rivers and canals in a highly automated manner. In addition, the European (<xref ref-type="bibr" rid="B18">IW-NET, 2021</xref>) and <xref ref-type="bibr" rid="B2">AUTOBarge (2021)</xref> projects investigate the integration of different automated vessels in the so-called &#x201c;experimental living labs.&#x201d;</p>
<p>Highly automated vessels and corresponding applications, as well as remote control and monitoring services, must integrate many tasks and motions at the same time. Moreover, they need to account for physical disturbances, and dynamically allocate software resources available within a particular environment (<xref ref-type="bibr" rid="B5">Bruyninckx, 2021</xref>). To enable these higher levels of automation for inland cargo vessels and their associated shoreside infrastructure, new IWT developments will need to incorporate <italic>shared</italic> situational awareness, and define, or extend formal knowledge systems accordingly (<xref ref-type="bibr" rid="B28">Peeters, 2021</xref>). In this regard, new developments can substantially benefit from a set of semantic world models, as part of this knowledge system, since it would allow co-operating (sub)systems to unambiguously interact with each other, as to understand environmental context or situation in which they operate. These models contribute to making safe, explainable, and resource-efficient control decisions.</p>
<sec id="s1-1">
<title>1.1 Related Work and Developments</title>
<sec id="s1-1-1">
<title>1.1.1 Situational Awareness for Vessels and Operators</title>
<p>
<xref ref-type="bibr" rid="B1">Arg&#xfc;elles et&#x20;al., (2021)</xref> compiled a list of the main reported causes for ship collisions involving human errors. The authors argue, in compliance with findings in <xref ref-type="bibr" rid="B33">Sotiralis et&#x20;al., (2016)</xref>; <xref ref-type="bibr" rid="B40">Ung (2019)</xref>; <xref ref-type="bibr" rid="B44">Weng et&#x20;al., (2019)</xref>; <xref ref-type="bibr" rid="B45">Yildirim et&#x20;al., (2019)</xref>; <xref ref-type="bibr" rid="B15">Huang et&#x20;al., (2020)</xref>, that the main causes for such collisions are: failure to take early action<xref ref-type="fn" rid="fn1">
<sup>1</sup>
</xref>, misinterpretation of collaborative regulations (COLREGs), and lacking communication between On-board Officers in charge of the Navigational Watch (OONWs)<xref ref-type="fn" rid="fn2">
<sup>2</sup>
</xref>. In other words, a lack of situational awareness (SA) for vessels and their operators (whether local or remote) lies at the root of these causes.</p>
<p>Then, <xref ref-type="bibr" rid="B1">Arg&#xfc;elles et&#x20;al., (2021)</xref> proceed to investigate how to decrease collision risks, with a focus on low-level vessel-to-vessel communication, and dialogues. That is, by means of onboard Programmable Logic Controllers (PLCs)&#x2014;in dialogue with OONWs&#x2014;using the onboard AIS for vessel-to-vessel communication. Furthermore, as no standard for collision avoidance messages exists (<xref ref-type="bibr" rid="B16">IMO, 2001</xref>). <xref ref-type="bibr" rid="B1">Arg&#xfc;elles et&#x20;al., (2021)</xref> proposes predefined messages and associated pictograms.</p>
<p>These developments emphasise the need for clear, explainable knowledge systems that can significantly enhance interactions between vessels, and between other related systems. In particular, the unambiguous application of COLREGs that are active in a certain situation, and the resulting actions/manoeuvres that need to be conducted, either implied or negotiated. As such, <italic>Reconfigurable</italic> and <italic>explainable</italic> ship domains can become a key communication and <italic>visualisation</italic> tool towards communication and visualisation, as well as reasoning.</p>
</sec>
<sec id="s1-1-2">
<title>1.1.2 Ship Domains</title>
<p>The term &#x201c;ship domains&#x201d; most likely originated from <xref ref-type="bibr" rid="B13">Fuji and Tanaka (1971)</xref>, whom defined it as a two-dimensional ellipsoid surrounding a ship&#x2014;which other ships must avoid. Since then, many definitions of ship domains have occurred. In their review study, <xref ref-type="bibr" rid="B35">Szlapczynski and Szlapczynska (2017)</xref> distinguished three&#x2014;partially overlapping&#x2014;ship domain groups based on: 1) theoretical analyses; 2) expert knowledge; and 3) empirical methods. They concluded that the factors that the ship domains take into account are usually more meaningful than the exact domain shapes themselves, although the latter are often more emphasised in the literature. In addition, they noted that while many collision avoidance studies refer to ship domains, not many of them actually use these ship domains (<xref ref-type="bibr" rid="B35">Szlapczynski and Szlapczynska, 2017</xref>) in an operational context.</p>
<p>It should be noted that more context has been added to ship domain models by tuning domains for different geographical regions <xref ref-type="bibr" rid="B14">Hansen et&#x20;al., (2013)</xref> and <xref ref-type="bibr" rid="B43">Wang and Chin (2016)</xref> and for different navigational situations. For example, as related to navigational situations, <xref ref-type="bibr" rid="B24">Liu et&#x20;al., (2016)</xref> differentiated ship domains for the following four situations: 1) navigating along the channel; 2) crossing the channel; 3) another flow joining; and 4) turning. This paper focusses on adding the higher-order<xref ref-type="fn" rid="fn3">
<sup>3</sup>
</xref> often symbolic, relations of the present situation and its context by explaining: <italic>why</italic> a ship domain was used, <italic>what</italic> it represents in this context, <italic>how</italic> the domains were computed, and <italic>how</italic> shared information can be interpreted by other entities.</p>
</sec>
<sec id="s1-1-3">
<title>1.1.3 Semantic World Models for Maps and Robots</title>
<p>This work uses the term &#x201c;world model&#x201d; for any formal representation of the world, as part of the knowledge representation of reality and the real world, and conforms to the modelling policies described in <xref ref-type="bibr" rid="B5">Bruyninckx (2021)</xref>, that, among other things, give the so-called open-world assumption a place in the policy of making models.</p>
<p>Semantic knowledge, i.e.,&#x20;formalised knowledge about objects, motion, tasks, events, and relations in the robot&#x2019;s environment, can help both robots and human operators to perform specific tasks more effectively, and more importantly, allow for more enhanced systems-of-systems automation and coordination (<xref ref-type="bibr" rid="B5">Bruyninckx, 2021</xref>). A map where its features, in addition to spatial information about the environment, are mapped to entities of known classes, and, furthermore, that knowledge about entities is available for reasoning in some knowledge base with an associated reasoning engine, is called a semantic map (<xref ref-type="bibr" rid="B25">N&#xfc;chter and Hertzberg, 2008</xref>; <xref ref-type="bibr" rid="B46">Bakillah et&#x20;al., 2013</xref>; <xref ref-type="bibr" rid="B21">Landsiedel et&#x20;al., 2017</xref>).</p>
<p>Maps used by robots and vessel operators, both remote and onboard, typically consist of representation based on metrical and/or topological data structures. Additionally, these maps can be extended with sensor-specific data, for instance, pointclouds from perceptive sensors, possibly with additional information about texture. However, these representations do not take information about the objects and their properties into account, nor do they incorporate relations between specific objects and their environment, or a specific operational context (<xref ref-type="bibr" rid="B22">Lang et&#x20;al., 2014</xref>).</p>
</sec>
</sec>
<sec id="s1-2">
<title>1.2 Research Objectives</title>
<p>This study proposes, applies and experimentally verifies a set of semantic <italic>world models</italic> for maps and vessels. As such, it is investigated <italic>how</italic> these models can enable 1) the dynamic&#x2014;context or situation-based&#x2014;adaptation of ship domains, and 2) the unambiguous representation of entities in a local, semantic&#x20;map.</p>
<p>The semantic descriptions in these world models, for instance of the geometry of features, can provide knowledge of where objects are with respect to each other in space and time. Position and motion of entities are always relative. Therefore, this work aims to model position and motion not as a property of an entity, but as a property of the relation between two entities. Consequently, such relations serve as the foundation for the dynamic world-model relations investigated in this paper, for example, the interactions between the local map and the vessel.</p>
<p>The following world-model relations will be handled explicitly or implicitly: 1) geometry&#x2013;geometry: the representations of the shapes of objects and robots, and how they shape the motion constraints between objects, 2) geometry&#x2013;perception: the representations of how properties of objects are detectable in sensor data, 3) geometry&#x2013;motion: the representations of how properties of objects are targets of the motions of the robot, and 4) geometry&#x2013;task: the representations of actual, desired, hypothesised, etc. states of the world, depending on the task requirements.</p>
<p>Throughout the experiments in <xref ref-type="sec" rid="s3-3-3">Section 3.3.3</xref>, the following list of sub-objectives are dealt with:<list list-type="simple">
<list-item>
<p>&#x2022; Define (higher-order) relations with (meta) models of the sensor subsystem, as part of the body model, that influence the geometric representation of the ship domains, for example, based on a geometry&#x2013;geometry relation (<xref ref-type="sec" rid="s4-1">Section 4.1</xref>), or a geometry&#x2013;perception relation (<xref ref-type="sec" rid="s4-6">Section&#x20;4.6</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Enable dynamic configuration and adaptation of ship domains by introducing geometry&#x2013;motion relations with vessel body entities, and geometry&#x2013;geometry relations with map entities (<xref ref-type="sec" rid="s4-2">Section 4.2</xref> and <xref ref-type="sec" rid="s4-4">Section 4.4</xref>, resp.).</p>
</list-item>
<list-item>
<p>&#x2022; Allow for dynamic adaptations of both the hydrodynamic model and the vessel&#x2019;s ship domains, by defining a descriptive<xref ref-type="fn" rid="fn4">
<sup>4</sup>
</xref> model related to the vessel&#x2019;s hydrodynamic characteristics, and adequate relations with other vessel subsystems (<xref ref-type="sec" rid="s4-3">Section&#x20;4.3</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Extend a local map with additional semantic features and metadata, to allow for unambiguous using and sharing of this map by other actors (<xref ref-type="sec" rid="s4-5">Section&#x20;4.5</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Integrate additional geometric entities at runtime that can help vessels and human operators to correctly interpret and automatically comply to COLREG rules in a particular situation (<xref ref-type="sec" rid="s4-6">Section 4.6</xref> and <xref ref-type="sec" rid="s4-7">Section&#x20;4.7</xref>).</p>
</list-item>
</list>
</p>
</sec>
</sec>
<sec id="s2">
<title>2 Materials</title>
<p>The main materials used throughout this work consist of four parts: 1) the semantic concepts for geometric world model compositions, handled by <xref ref-type="sec" rid="s2-1">Section 2.1</xref>, 2) the research vessel named &#x201c;the Cogge&#x201d; (<xref ref-type="bibr" rid="B27">Peeters et&#x20;al., 2020b</xref>) which relates to the body model, detailed in <xref ref-type="sec" rid="s2-2">Section 2.2</xref>, 3) the (Inland) Electronic Navigational Chart objects as static features which relate to the map, discussed in <xref ref-type="sec" rid="s2-3">Section 2.3</xref>, and 4) the hydrodynamic model, listed in <xref ref-type="sec" rid="s2-4">Section 2.4</xref> which, to some extent describes the physical connection between the vessel and the world (i.e.,&#x20;relating concepts of <xref ref-type="sec" rid="s2-2">Section 2.2</xref> and <xref ref-type="sec" rid="s2-3">Section&#x20;2.3</xref>).</p>
<sec id="s2-1">
<title>2.1 Semantic Concepts for Geometric World Model Compositions</title>
<p>The main semantic concepts for geometries in this work are 1) the entities of points, vectors, line segments, and polygons, 2) the relation of a map as an ordered or unordered set of geometric entities, 3) the relations of instantaneous motion of the vessel, and of its ship domains, and 4) the rigid body as a constraint on these motion relations. This work adopts a number of policies described in (<xref ref-type="bibr" rid="B5">Bruyninckx, 2021</xref>) to provide <monospace>Semantic_IDs</monospace> and relations to the entities described above. Consequently, this work uses the following two unique identifiers for a <monospace>Semantic_ID</monospace>
<xref ref-type="fn" rid="fn5">
<sup>5</sup>
</xref>:<list list-type="simple">
<list-item>
<p>&#x2022; ID (&#x201c;model ID&#x201d;): a unique identifier with which the entity can be referred to, unambiguously, in another part of this model, or in other models.</p>
</list-item>
<list-item>
<p>&#x2022; {MID} (&#x201c;meta model ID&#x201d;): a (set of) unique identifier(s) that each refer to a meta model, that is, a model in which the constraints are defined that describe the well-formedness of those entities and relations that the model uses from that particular meta&#x20;model.</p>
</list-item>
</list>
</p>
<p>In <xref ref-type="bibr" rid="B5">Bruyninckx (2021)</xref>, it is suggested all geometric entities are compositions of the <monospace>Point</monospace> model, whereas this work makes a distinction between two geometric feature compositions. The first one involves dynamically composed geometries from external datasets such as (I)ENC or OpenStreetMap, which&#x2014;on the application level&#x2014;can be queried from a database, and where the results can contain any of the types defined by the GeoJSON data format<xref ref-type="fn" rid="fn6">
<sup>6</sup>
</xref>. These features merely have a <monospace>Semantic_ID</monospace> and relations of the whole entity, and not on every coordinate. The second one includes geometries that are composed from a <monospace>Point</monospace> model. The latter can be desirable in a robotics context, as most sensors in robotics measure points, and not lines, planes, or bodies. Moreover, the concept of uncertainty is well-defined for points, but not for lines, planes, or bodies.</p>
<p>A mereo-logical<xref ref-type="fn" rid="fn7">
<sup>7</sup>
</xref> model of a Point in two-dimensional Euclidean space (E2), with <monospace>Semantic_ID</monospace> metadata, is referred to as <monospace>{Point: aPoint}</monospace> (with &#x201c;aPoint&#x201d; the name for this <monospace>Point</monospace> entity), and represented in full as follows:<statement content-type="algorithm" id="alg1">
<label>
<bold>Listing 1:</bold>
</label>
<p>Mereo-logical model of a Point</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g015.tif"/>
</p>
</statement>
</p>
<p>Other relevant representations of geometric entities include:<list list-type="simple">
<list-item>
<p>&#x2022; Vector: an ordered list of two Point entities that adds three constraints: 1) the ordering that gives an orientation to the Vector, 2) that list contains exactly two members (and not all the points on the line in between), and 3) the two Points in the list are different.</p>
</list-item>
<list-item>
<p>&#x2022; Simplex: (in a 2D space) an ordered list of two non-colinear Vectors, with the constraint that both have the same start&#x20;point.</p>
</list-item>
<list-item>
<p>&#x2022; LineString (or polyline): as an ordered set of points. It is equivalent to an ordered list of Vectors, with the constraints that 1) the start point of one Vector is the end point of the previous Vector in the ordered set, 2) each Point belongs to exactly two Vectors, except for the start point of the first Vector and the end point of the last Vector.</p>
</list-item>
<list-item>
<p>&#x2022; Polygon: similar, with the extra constraint relation that the two not yet connected start and end Points must now coincide.</p>
</list-item>
<list-item>
<p>&#x2022; Frame: it adds two metric constraints to the Simplex entity: 1) the length of each Line segment is the unity length, and 2) the Line segments are perpendicular (or orthogonal). The orientation of a Frame is typically an essential attribute, because of its use to represent coordinates.</p>
</list-item>
</list>
</p>
<p>Models of these entities are shown in <xref ref-type="other" rid="alg2">Listing 2</xref>.<statement content-type="algorithm" id="alg2">
<label>
<bold>Listing 2:</bold>
</label>
<p>Models for geometric entities</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g016.tif"/>
</p>
</statement>
</p>
<p>When no explicit name of an entity is known, or defined, this work uses the notation <monospace>aModel_Name</monospace> (prepending &#x201c;a,&#x201d; &#x201c;b,&#x201d; etc., to the model name). The associated IDs of an entity are named with the name of the entity, added with the postfix &#x201c;-ID.&#x201d;</p>
</sec>
<sec id="s2-2">
<title>2.2 Cogge: An Unmanned Inland Cargo Vessel</title>
<p>
<xref ref-type="bibr" rid="B27">Peeters et&#x20;al., (2020b)</xref> constructed a scale model unmanned inland cargo vessel to investigate the automation potential of its real-size counterpart. <xref ref-type="fig" rid="F1">Figure&#x20;1</xref> summarises the relevant technical details of this vessel, named the <italic>Cogge</italic>: (a) shows its three dimensional geometry, together with its body-fixed reference frame, (b) draws a two dimensional bottom view of the <italic>Cogge</italic>, which illustrates the position of its actuation system, and (c) provides a communication scheme of the main onboard components. A video of this vessel in operation is included in the <xref ref-type="sec" rid="s11">Supplementary Video&#x20;(S0)</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Geometry of the <italic>Cogge</italic>: <bold>(A)</bold> full geometry and reference frames, <bold>(B)</bold> bottom view of the hull with longitudinal dimensions, and <bold>(C)</bold> main components and communication links (as a single vessel). Panel <bold>(A)</bold> and <bold>(B)</bold> were modified from <xref ref-type="bibr" rid="B29">Peeters et&#x20;al., (2020c)</xref>, and <bold>(C)</bold> reproduced from <xref ref-type="bibr" rid="B30">Peeters et&#x20;al., (2020d)</xref>.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g001.tif"/>
</fig>
</sec>
<sec id="s2-3">
<title>2.3 The Inland Navigational Charts ((I)ENC)</title>
<p>Navigational charts for vessel operators, vessel autonomy systems, remote control operators, and remote monitoring services, use (I)ENC charts as the <italic>de facto</italic> standard dataset. These charts are typically displayed, and augmented with sensor data, in an (Inland) Electronic Chart Display and Information Systems (ECDIS). These chart displays have proven to be an indispensable navigational aid for operators. It already contains a standardised set of object models, including a limited set of semantic tags in the form of attributes. However, they lack adequate semantics for situational-aware reasoning in highly automated environments, and are not dynamic. For instance, they are&#x2014;depending on the administrator&#x2014;only updated on a yearly basis, there are no accuracy indications of chart features, additional (dynamic) data such as RADAR pointclouds or data from Automatic Identification Systems (AIS) is added as a separate, <italic>independent</italic> layer, and there are no policies in play for dynamically defining, updating, and adding entities and relations between these objects. This means, for the purpose of this work, that the (I)ENC charts serve as the static feature base of the map, which is extended with additional relations and semantic information, and context-dependent functionality at runtime.</p>
<p>
<xref ref-type="bibr" rid="B39">Tsou (2016)</xref> uses ECDIS as a platform for constructing a collision-avoidance decision support system. The ENC features and their corresponding geodetic coordinates, together with data from sensors such as AIS, integrated with the ECDIS, are used to predict areas of danger within a specific environment, and to plan the optimal route accordingly. This implies the need for rather complex geographical computations, whereas considering the ranges (up to one or several kilometres) to which these collision avoidance schemes apply, a local Cartesian reference systems, and corresponding map features with local relative coordinates, could significantly reduce the reasoning complexity, and thus reduce the need for computational resources. Moreover, it allows for a more straightforward integration with other software components, for instance towards control and coordination of the&#x20;robot.</p>
<p>Global maps and reasoning based on (projected) geographic features are relevant for mid- and long-term planning and decision making, that is, within a timeframe of minutes up to days. For these purposes, several established tools are available, not in the least spatial indexing and querying of features in a database (often with a <ext-link ext-link-type="uri" xlink:href="https://postgis.net/">GIS extension</ext-link>) (<xref ref-type="bibr" rid="B46">Bakillah et al., 2013</xref>). However, tasks that require short-term (seconds up to minutes) reasoning and decision making, knowledge about the dynamic body models of systems, and/or relative information about sensor data or the operational environment, could benefit substantially from interacting with local maps and features. This is especially true in highly dynamic environments, which are the focus of this paper. As such, the geometric features and models used in this paper consist of dynamically generated, local coordinates. Features related to a vessel&#x2019;s navigation environment, mainly constructed from (external) global coordinates, contain <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Local_tangent_plane_coordinates">local tangent plane coordinates</ext-link> (East-North-Up). Other local frames that are part of the world model, such as body-fixed sensor frames, will include at least one symbolic relation with a point on the local reference frame. <xref ref-type="fig" rid="F2">Figure&#x20;2</xref> shows both the ECDIS map and the corresponding local map used throughout this&#x20;work.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>OpenCPN ECDIS display, with global ENC features projected onto screen <bold>(A)</bold>, versus a local map <bold>(B)</bold> with features in local ENU coordinates, generated from global ENC dataset, displayed as a vector image (in SVG).</p>
</caption>
<graphic xlink:href="frobt-08-739062-g002.tif"/>
</fig>
</sec>
<sec id="s2-4">
<title>2.4 Hydrodynamic Modelling</title>
<p>The rigid-body kinetics of a vessel can be written in a vectorial setting according to <xref ref-type="bibr" rid="B12">Fossen (1991)</xref>:<disp-formula id="e1">
<mml:math id="m1">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:math>
<label>(1)</label>
</disp-formula>where <bold>
<italic>M</italic>
</bold>
<sub>
<italic>RB</italic>
</sub> represents the rigid-body inertia matrix, <bold>
<italic>C</italic>
</bold>
<sub>
<italic>RB</italic>
</sub> the rigid-body Coriolis and centripetal matrix, <bold>
<italic>&#x3c4;</italic>
</bold>
<sub>
<italic>RB</italic>
</sub> &#x3d; [<italic>X</italic>,<italic>Y</italic>,<italic>Z</italic>,<italic>K</italic>,<italic>M</italic>,<italic>N</italic>]<sup>
<italic>&#x22a4;</italic>
</sup> the vector of generalised forces, and <bold>
<italic>&#x3bd;</italic>
</bold> &#x3d; [<italic>u</italic>,<italic>v</italic>,<italic>w</italic>,<italic>p</italic>,<italic>q</italic>,<italic>r</italic>]<sup>
<italic>&#x22a4;</italic>
</sup> the generalized velocity vector, when using the SNAME convention <xref ref-type="bibr" rid="B32">SNAME (1950)</xref>. Here <bold>
<italic>&#x3c4;</italic>
</bold>
<sub>
<italic>RB</italic>
</sub> can be separated into:<disp-formula id="e2">
<mml:math id="m2">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>v</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>In addition, one can rearrange the terms into the following vectorial setting <xref ref-type="bibr" rid="B10">Fossen (1994)</xref>, <xref ref-type="bibr" rid="B9">Fossen and Fjellstad (1995)</xref>:<disp-formula id="e3">
<mml:math id="m3">
<mml:munder>
<mml:mrow>
<mml:munder accentunder="false">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:mtext>rigid</mml:mtext>
<mml:mo>-</mml:mo>
<mml:mtext>body</mml:mtext>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="false">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold-italic">D</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:mtext>hydrodynamic</mml:mtext>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="false">
<mml:mrow>
<mml:mi mathvariant="bold-italic">g</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b7;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:mtext>hydrostatic</mml:mtext>
</mml:mrow>
</mml:munder>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>v</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>(3)</mml:mo>
</mml:math>
</disp-formula>with:<list list-type="simple">
<list-item>
<p>&#x2022; <bold>
<italic>M</italic>
</bold>
<sub>
<italic>RB</italic>
</sub>(<bold>
<italic>&#x3bd;</italic>
</bold>) and <bold>
<italic>M</italic>
</bold>
<sub>
<italic>A</italic>
</sub>(<bold>
<italic>&#x3bd;</italic>
</bold>): system inertia matrices, (rigid body and added mass, resp.)</p>
</list-item>
<list-item>
<p>&#x2022; <bold>
<italic>C</italic>
</bold>
<sub>
<italic>RB</italic>
</sub>(<bold>
<italic>&#x3bd;</italic>
</bold>) and <bold>
<italic>C</italic>
</bold>
<sub>
<italic>A</italic>
</sub>(<bold>
<italic>&#x3bd;</italic>
</bold>): Coriolis-centripetal matrices, (rigid body and added mass, resp.)</p>
</list-item>
<list-item>
<p>&#x2022; <bold>
<italic>D</italic>
</bold>(<bold>
<italic>&#x3bd;</italic>
</bold>): damping matrix</p>
</list-item>
<list-item>
<p>&#x2022; <bold>
<italic>g</italic>
</bold>(<bold>
<italic>&#x3b7;</italic>
</bold>): vector of gravitational/buoyancy forces and moments</p>
</list-item>
<list-item>
<p>&#x2022; <bold>
<italic>g</italic>
</bold>
<sub>0</sub> vector used for pretrimming (ballast control)</p>
</list-item>
<list-item>
<p>&#x2022; <bold>
<italic>&#x3c4;</italic>
</bold> external forces (control, wind, and wave)</p>
</list-item>
</list>
</p>
<p>Here the modular matrix&#x2013;vector notation can lever matrix properties such as symmetry, skew-symmetry, and positiveness of matrices <xref ref-type="bibr" rid="B11">Fossen (2011)</xref>.</p>
<p>This study models the planar motions of the <italic>Cogge</italic>: <bold>
<italic>&#x3bd;</italic>
</bold> &#x3d; [<italic>u</italic>,<italic>v</italic>,<italic>r</italic>]<sup>
<italic>&#x22a4;</italic>
</sup>. Hence the impact of heave, roll, and pitch motions are neglected, together with their hydrostatic restoring forces, i.e.,&#x20;<bold>
<italic>&#x3c4;</italic>
</bold>
<sub>
<italic>hydrostatic</italic>
</sub> &#x3d; 0. The vessel will operate under the Manoeuvring Theory framework <xref ref-type="bibr" rid="B11">Fossen (2011)</xref> assumptions, <bold>
<italic>&#x3c4;</italic>
</bold>
<sub>
<italic>wave</italic>
</sub> &#x3d; 0, i.e.,&#x20;the (hydrodynamic) manoeuvring coefficients can be assumed to be frequency-independent, in calm water without current. Further assumptions include: a homogeneous mass distribution, the ur-plane symmetry of the vessel, i.e.,&#x20;<italic>I</italic>
<sub>
<italic>uv</italic>
</sub> &#x3d; <italic>I</italic>
<sub>
<italic>vr</italic>
</sub> &#x3d; 0, the origin of the body-frame (CO) positioned on the centre line of the vessel, i.e.,&#x20;<italic>v</italic>
<sub>
<italic>g</italic>
</sub> &#x3d; 0, calculating the added mass terms in CO, and aligning the CO axes with the principal inertia axes of the vessel.</p>
<p>The damping matrix will be modelled with a linear and non-linear part: <bold>D</bold>(<bold>
<italic>&#x3bd;</italic>
</bold>) &#x3d; <bold>D</bold>
<sub>
<bold>L</bold>
</sub> &#x2b; <bold>D</bold>
<sub>
<bold>N</bold>
</sub>(<bold>
<italic>&#x3bd;</italic>
</bold>). The linear damping components are important for the lower speed manoeuvres <xref ref-type="bibr" rid="B11">Fossen (2011)</xref>. The nonlinear damping will be modelled by a quadratic surge resistance (<xref ref-type="bibr" rid="B23">Lewis and Resistance, 1989</xref>) for the surge motion, and by a cross-flow-drag model fitted <xref ref-type="bibr" rid="B4">Blanke (1981)</xref> to second-order modulus functions <xref ref-type="bibr" rid="B8">Fedyaevsky and Sobolev (1964)</xref> for the sway&#x2013;yaw motions <xref ref-type="bibr" rid="B11">Fossen (2011)</xref>. More precisely, a simplified form will be used <xref ref-type="bibr" rid="B4">Blanke (1981)</xref>, normally intended for larger vessels, but providing sufficient parameters to capture the motions of the <italic>Cogge</italic> for the purpose of this&#x20;study.</p>
<p>For the control forces vector, <xref ref-type="bibr" rid="B29">Peeters et&#x20;al., (2020c)</xref> concluded that thruster models which neglect the vessel-speed-dependent thrust losses can still suffice to capture and describe the main hydrodynamic vessel behaviour in pure surge, sway, or yaw motion. Therefore, vessel-speed-independent thruster models will be used throughout this study. Furthermore, wind forces are modelled as seen in <xref ref-type="bibr" rid="B11">Fossen (2011)</xref>. with associated wind coefficients as derived by (<xref ref-type="bibr" rid="B17">Isherwood, 1972</xref>). Under the abovementioned assumptions, <xref ref-type="disp-formula" rid="e3">Eq. 3</xref> refines to:<disp-formula id="e4">
<mml:math id="m4">
<mml:munder>
<mml:mrow>
<mml:munder accentunder="false">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:mtext>rigid</mml:mtext>
<mml:mo>-</mml:mo>
<mml:mtext>body</mml:mtext>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="false">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="bold-italic">&#x3bd;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>
<xref ref-type="sec" rid="s11">Supplementary Appendix A</xref> details the resulting full component model, and its identified or estimated coefficients can be found in <xref ref-type="other" rid="alg18">Listing 19</xref>.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Methods</title>
<p>As discussed in <xref ref-type="sec" rid="s1-2">Section 1.2</xref>, this paper focusses on vessel-world interactions, employing internal and external world models, as related to inland waterway navigation along a channel. <xref ref-type="sec" rid="s3-1">Section 3.1</xref> and <xref ref-type="sec" rid="s3-2">Section 3.2</xref> describe, respectively, the internal (i.e., body) and external (i.e., map) world models. <xref ref-type="sec" rid="s3-3">Section 3.3</xref> illustrates such potential dynamic interactions, as well as maintained relations, between world models, by means of ship domains (SDs) and map domains (MDs). The high-level architecture depicted in <xref ref-type="fig" rid="F3">Figure&#x20;3</xref> gives an overview of the model-conform relations and entities discussed in this paper. While this figure includes only four entities (map, environment, two vessels), it should be noted that relations with other (external) entities can co-exist as well. The corresponding <xref ref-type="sec" rid="s3-3-3">experiments</xref> mainly focus on semantic models (grey ellipses), as well as on context-dependent ship and map domains (green rectangles).</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>High-level structure for model-integration and relations discussed throughout this paper, applied to a situation with two interacting vessels. Relations (rel) in blue. Grey ellipses (models) and green rectangles (ship and map-domains) are the main focus areas of this&#x20;paper.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g003.tif"/>
</fig>
<p>The models discussed here are represented using a <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/JSON">JSON</ext-link>-<italic>like</italic> syntax<xref ref-type="fn" rid="fn8">
<sup>8</sup>
</xref>, and their main aim is to demonstrate a methodology of composing such models. As such, not every symbolic model and corresponding data structure(s) used in <xref ref-type="sec" rid="s3-3">Section 3.3</xref> is listed in full throughout this section. Furthermore, whenever a symbolic model does not provide additional insights on model compositions, it is <italic>not</italic> listed in this work. Its corresponding data structure, however, often <italic>is</italic> listed, that is, whenever this information is deemed relevant with respect to the <xref ref-type="sec" rid="s3-3-3">experiments</xref>. While these data structures already provide a formal basis for situational-aware applications (see <xref ref-type="sec" rid="s3-3">Section 3.3</xref>), these models are not complete or meant to be generic. Rather they serve the purpose of a starting point on which (external) input, test results, and other feedback can be provided towards further development (see the discussion of <xref ref-type="sec" rid="s5">Section&#x20;5</xref>).</p>
<sec id="s3-1">
<title>3.1 Semantic Internal World Model or Body Model</title>
<p>World models related to the vessel and its subsystems are part of the body model. <xref ref-type="fig" rid="F1">Figure&#x20;1</xref> already showed the main components of the research vessel the <italic>Cogge</italic>. The body models discussed here aim to provide adequate semantic information to enable subsequent reasoning, and connecting these models with the external world model, i.e.,&#x20;the map. In that sense, the following entities and relations are considered relevant to the body model:<list list-type="simple">
<list-item>
<p>&#x2022;<monospace>Vessel:</monospace> represents the vessel (main entity), with relations to other entities described hereafter.</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Hull:</monospace> Describes characteristics about the hull of a vessel, e.g., geometries.</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Hydrodynamics:</monospace> hydrodynamic model structures and their parameters (to support context-driven dynamic configuration), as well as their relations to control tasks of the vessel.</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Actuation:</monospace> vessel actuation model, with lower-level models for bow and stern (potentially more). Both bow and stern contain an explicit geometric relation with the&#x20;Hull</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Sensors:</monospace> the sensor subsystem, further divided into:</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Proprio-ceptive:</monospace> <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/GNSS_applications">GNSS</ext-link> and <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Inertial_measurement_unit">IMU</ext-link> sensors (for Cogge)</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Extero-ceptive:</monospace> LiDAR and cameras (for Cogge)</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Carto-ceptive:</monospace> available semantic maps for a vessel or service</p>
</list-item>
<list-item>
<p>&#x2022;<monospace>Communication:</monospace> available communication channels, protocols, etc., divided into internal communication and external communication.</p>
</list-item>
</list>
</p>
<p>For example, AIS-related models are part of the <monospace>Communication</monospace> entity, however, a detailed specification of the communication entity and its sub-entities is outside the scope of this paper. Additionally, the existence of a set of (meta) meta models relevant to the IWT context is assumed, with the most generic meta model: <monospace>{MID: Inland_Waterway_Transport}</monospace>, providing domain-specific metadata for the models by means of the <monospace>MID</monospace> of the <monospace>Semantic_ID</monospace>.</p>
<sec id="s3-1-1">
<title>3.1.1 Vessel</title>
<p>
<xref ref-type="other" rid="alg3">Listing 3</xref> provides a high-level symbolic model for IWT vessels, with a limited set of properties. Its ID is related to the MMSI property, as it already provides a unique, 9-digit identifier for a vessel.<statement content-type="algorithm" id="alg3">
<label>
<bold>Listing 3:</bold>
</label>
<p>Iwt_Vessel_Name_Mmsi_Cemt&#x20;model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g017.tif"/>
</p>
</statement>
</p>
<p>The meta-models <monospace>Inland_Waterway_Transport</monospace>, <monospace>MMSI</monospace>, <monospace>CemtClass</monospace>, and <monospace>Name</monospace> contain information about data types, description, units, among other things related to the attributes in the <monospace>Iwt_Vessel</monospace> model. A data structure model adds numerical values to the symbolic model properties, as an <monospace>instance-of</monospace> the <monospace>Iwt_Vessel_Name_Mmsi_Cemt</monospace> model:<statement content-type="algorithm" id="alg4">
<label>
<bold>Listing 4:</bold>
</label>
<p>Iwt_Vessel_Name_Mmsi_Cemt_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g018.tif"/>
</p>
</statement>
</p>
<p>An <monospace>Iwt_Vessel_Name_Mmsi_Cemt</monospace> entity is in several relations. For example: it <monospace>has-a Iwt_Hull_Base</monospace> entity, and, inversely, the <monospace>Iwt_Hull_Base</monospace> is part-of (or <monospace>belongs-to</monospace>) an <monospace>Iwt_Vessel_Name_Mmsi_Cemt</monospace> entity.</p>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Hull</title>
<p>Similar to the above, a model for the vessel&#x2019;s hull can be composed (i.e.,&#x20;<monospace>Iwt_Hull_Base</monospace>). It provides sufficient symbolic information on data types, units, etc. Note that this symbolic model is not provided explicitly, instead, <xref ref-type="other" rid="alg5">Listing 5</xref> defines the associated data structure model of the vessel&#x2019;s hull:<statement content-type="algorithm" id="alg5">
<label>
<bold>Listing 5:</bold>
</label>
<p>Iwt_Hull_Base_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g019.tif"/>
</p>
</statement>
</p>
<p>In <xref ref-type="other" rid="alg6">Listing 6</xref>, a set of already defined mereo-logical <monospace>Point</monospace> entities is assumed, according to the model in <xref ref-type="other" rid="alg1">Listing 1</xref>. These include a body-fixed origin <italic>o</italic>
<sub>
<italic>b</italic>
</sub>: <monospace>PaPnt0</monospace> (Pa refers to principle axis), together with <monospace>PaPntU</monospace> (on longitudinal vessel axis), <monospace>PaPntV</monospace> (on transversal vessel axis), and <monospace>PaPntR</monospace> (on normal axis). Moreover, the origin point <monospace>PntCo</monospace> is defined, and relates to a point of the vessel&#x2019;s midship, at the height of the water line (this must be modelled as a constraint). In our case, the explicit relation exists between <monospace>PaPnt0</monospace> and <monospace>PntCo</monospace>, that is, the centroid of the vessel and the body-fixed origin have the same absolute position. The associated model for the vessel&#x2019;s principal axes, also used in <xref ref-type="sec" rid="s3-1-3">Section 3.1.3</xref>, is defined in 6.<statement content-type="algorithm" id="alg6">
<label>
<bold>Listing 6:</bold>
</label>
<p>Iwt_Vessel_Principal_Axes_Frame&#x20;model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g020.tif"/>
</p>
</statement>
</p>
<p>To enhance in-model reference clarity, an entity that conforms to the <monospace>Iwt_Vessel_Principal_Axes_Frame</monospace> model is hereafter called PA, which is <monospace>part-of</monospace> the <monospace>Iwt_Vessel_Name_Mmsi_Cemt</monospace> entity. Other relations with this PA are discussed in <xref ref-type="sec" rid="s3-2">Section 3.2</xref>. Assuming the points <monospace>PntGeom1, &#x2026;PntGeom6</monospace>, are also symbolically defined, corresponding to the top view of the vessel of the vessel in <xref ref-type="fig" rid="F1">Figure&#x20;1</xref>, a <monospace>Coordinate</monospace> model is constructed for these points. This model adds 1) numerical values to the earlier defined mereo-logical models defined already, as a position relative to an previously defined frame, and 2) the semantic tags for identifying the correct interpretation of those values. For the first point entity <monospace>PntGeom1</monospace>, the <monospace>Coordinate</monospace> model is defined in <xref ref-type="other" rid="alg7">Listing 7</xref>.<statement content-type="algorithm" id="alg7">
<label>
<bold>Listing 7:</bold>
</label>
<p>Coordinate_Point_Point_Frame_Meter_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g021.tif"/>
</p>
</statement>
</p>
<p>Note that the meta model <ext-link ext-link-type="uri" xlink:href="http://www.qudt.org/">QUDT</ext-link> is used here as well, including abstract representations of Quantity, Unit, Dimension, and (data) Type. The same <monospace>Coordinate</monospace> models are constructed for the other points in, identified in the 2D top view. By means of combining the aforementioned <monospace>Point</monospace> entities, various geometries can be composed. Since this work explicitly uses the 2D top view geometry of the vessel&#x2019;s hull in the semantic map (see <xref ref-type="sec" rid="s3-2">Section 3.2</xref>), as well as for the ship domains (see <xref ref-type="sec" rid="s3-3-1">Section 3.3.1</xref>), a model is constructed for this 2D top view, as a <monospace>Projection</monospace> relation:<statement content-type="algorithm" id="alg8">
<label>
<bold>Listing 8:</bold>
</label>
<p>Multiview_Projection_Entity_Plane_Type_Result model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g022.tif"/>
</p>
</statement>
</p>
<p>The <monospace>along_axis</monospace> property is to some extent redundant to the <monospace>Plane</monospace> of the vessel. The <monospace>Plane</monospace> is defined as a <monospace>join</monospace> of three <monospace>Points</monospace>, even though other definitions are possible as well, for instance, a <monospace>join</monospace> of intersecting <monospace>Lines</monospace>.</p>
</sec>
<sec id="s3-1-3">
<title>3.1.3 Hydrodynamics</title>
<p>The hydrodynamic behaviour of a vessel is not only relevant to simulation or control software, but is also relevant to (higher level) reasoning tasks and visualising ship domains. It is important to note that different behavioral models of a vessel can be appropriate to different situations. Even though a single model can capture behavior appropriate to all situations, such a &#x201c;one-size-fits-all&#x201d; hydrodynamical model is often overly complex for the situation at hand. Hence, considering computational efficiency, accuracy, degrees of freedom, observability, controllability, available identified coefficients, among many other factors, can motivate context-related simplifications.</p>
<p>Therefore, dynamic, context-dependent composability is a desired property of hydrodynamic models. In this work, a set of meta models are assumed to be available, for instance, <monospace>Hydro_Equation_Manoeuvring_F</monospace> is used as the meta model for <xref ref-type="disp-formula" rid="e3">Eq. 3</xref>. Other meta models relate to <xref ref-type="bibr" rid="B11">Fossen (2011)</xref>. In this work, entities that conform to such models are here as follows: <monospace>aHydro_States_F</monospace>, <monospace>aHydro_Ext_Forces_F</monospace>, and <monospace>aHydro_Coefficients_F</monospace>.</p>
<p>First, three additional body-fixed reference points are defined: <monospace>PntCg</monospace> (center of gravity), <monospace>PntCB</monospace> (center of buoyancy), and <monospace>PntCf</monospace> (center of flotation). Coordinate models as seen in <xref ref-type="other" rid="alg7">Listing 7</xref> can be used to represent these points. For our vessel, the Cogge, it is a reasonable assumption that all three <monospace>Points</monospace> have the exact absolute position as <monospace>PaPnt0</monospace>. The model used in this study, as shown in <xref ref-type="other" rid="alg9">Listing 9</xref> considers three degrees of freedom (surge, sway, yaw).<statement content-type="algorithm" id="alg9">
<label>
<bold>Listing 9:</bold>
</label>
<p>Iwt_Hydrodynamic_3DOF_States_Forces_Coef model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g023.tif"/>
</p>
</statement>
</p>
<p>Corresponding data structures for the states and forces can be constructed as an <monospace>instance-of</monospace> the respective embedded symbolic models of <xref ref-type="other" rid="alg9">Listing 9</xref>. Similarly, a data structure for the coefficients is constructed, as an <monospace>instance-of Hydro_Coefficients_F</monospace>. The values for these coefficients, used in the data structure, can be found in <xref ref-type="sec" rid="s11">Supplementary Appendix&#x20;A1</xref>.</p>
<p>With respect to the behaviour of the real vessel, and as discussed in <xref ref-type="sec" rid="s3-3-3">Section 3.3.3</xref>, a set of constraint relations are defined as well, mostly relating to the instantaneous motion of the vessel. They can apply to one or several matrix components as seen in <xref ref-type="sec" rid="s11">Supplementary Appendix A1</xref>. One example is a switch between linear damping (<italic>D</italic>
<sub>
<italic>L</italic>
</sub>), and linear &#x2b; non-linear damping (<italic>D</italic>
<sub>
<italic>N</italic>
</sub> &#x2b; <italic>D</italic>
<sub>
<italic>L</italic>
</sub>) when the vessel exceeds some velocity threshold. This threshold was determined experimentally, and can be modelled to a constraint. Both the velocity and the threshold constraint are modelled as relations, respectively in <xref ref-type="other" rid="alg10">Listing 10</xref> and <xref ref-type="other" rid="alg11">Listing 11</xref>.<statement content-type="algorithm" id="alg10">
<label>
<bold>Listing 10:</bold>
</label>
<p>Coordinate_Velocity_Point_Frame_Meter_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g024.tif"/>
</p>
</statement>
</p>
<p>Consider an entity <monospace>aVel</monospace> conform to the model in <xref ref-type="other" rid="alg10">Listing 10</xref>, then the threshold constraint model can be defined as follows:<statement content-type="algorithm" id="alg11">
<label>
<bold>Listing 11:</bold>
</label>
<p>Iwt_Hydrodynamic_Constraint_Entity_Velocity_ Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g025.tif"/>
</p>
</statement>
</p>
<p>The hydrodynamic constraint model listed in <xref ref-type="other" rid="alg11">Listing 11</xref> provides sufficient information to switch programatically between linear and linear&#x2b;non-linear damping. Note that a similar constraint is included for velocity in the v-direction, and a third constraint relation between both of these to determine the damping outcome unambiguously. Many other constraint relations can be added to a hydrodynamical model (e.g., to its coefficients), to support specific behaviours of or tasks performed by a vessel. A limited set of such constraints is illustrated in the experiments in <xref ref-type="sec" rid="s3-3">Section&#x20;3.3</xref>.</p>
<p>A different geometry&#x2013;motion relation used for the ship domains of <xref ref-type="sec" rid="s3-3-1">Section 3.3.1</xref>, related to the hydrodynamic behaviour of the vessel, consists of deceleration-related (third-order polynomial) coefficients, both to model 1) natural deceleration, i.e., the distance travelled by the vessel when no longer actuating (natural speed decay), and 2) actuated deceleration, i.e., the distance travelled by countering motion through reverse actuation commands for braking. Assuming the symbolic model, <monospace>Iwt_Hydrodynamic_Entity_Deacceleration_Coef</monospace> is already defined, as <monospace>part-of</monospace> a <monospace>Iwt_Vessel_Name_Mmsi_Cemt</monospace> entity, the corresponding data structure, as an instance-of this symbolic formalism, then becomes:<statement content-type="algorithm" id="alg12">
<label>
<bold>Listing 12:</bold>
</label>
<p>Iwt_Hydrodynamic_Entity_Deacceleration_Coef_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g026.tif"/>
</p>
</statement>
</p>
<p>Note that the <monospace>Iwt_Hydrodynamic_Entity_Deacceleration_</monospace>
<monospace>Coef</monospace> model contains all the necessary information, including appropriate meta models, to correctly interpret the data structure.</p>
</sec>
<sec id="s3-1-4">
<title>3.1.4 Actuation</title>
<p>Actuation, and the ability to reason about a vessel&#x2019;s actuation system, is essential for (remote) vessel operators, and for control software, to safely and effectively navigate a vessel. It can provide a minimal basis for mapping control inputs from joysticks in remote control centres to actuation commands of the vessel, and for mapping actuation commands to forces in the hydrodynamical model. Moreover, monitoring services should be able to identify, and potentially anticipate on, (electro-)mechanical failures as accurately as possible, especially when a vessel faces a handicap in performing its&#x20;tasks.</p>
<p>Here too the assumption is made that a model <monospace>Iwt_Actuation_Entity_Bow_Stern</monospace>, with a conform entity as a <monospace>part-of aIwt_Vessel_Name_Mmsi_Cemt</monospace> already exists, containing all necessary metadata for unambiguously interpreting the data structure. For example, a specific (constraint) relation exists between the dimensions of the actuation system and the vessel geometry defined earlier. This data structure then becomes:<statement content-type="algorithm" id="alg13">
<label>
<bold>Listing 13:</bold>
</label>
<p>Iwt_Actuation_Entity_Bow_Stern_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g027.tif"/>
</p>
</statement>
</p>
<p>Note that other information, for instance on the correct interpretation of the lookup-table for mapping drive system input commands to propulsion forces, can also be included as a <monospace>part-of</monospace> the actuation system&#x20;model.</p>
</sec>
<sec id="s3-1-5">
<title>3.1.5 Sensors</title>
<p>Similarly to the actuation subsystem, the sensor subsystem also strongly relates to control and decision making, but from an information source point of view. In the following, explicit relations with ship domains, and the semantic map are introduced, based on sensor information.</p>
<p>As introduced earlier, a distinction is made between the following subsystems:<list list-type="simple">
<list-item>
<p>&#x2022; Proprio-ceptive sensors: sensors to obtain information related to the vessel&#x2019;s own body model, e.g., <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/GNSS_applications">GNSS</ext-link>, <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Inertial_measurement_unit">IMU</ext-link>,&#x20;etc.</p>
</list-item>
<list-item>
<p>&#x2022; Extero-ceptive sensors: sensors related to the vessel&#x2019;s perception, and thus related to extending world models with objects/entities/actors in the vessel&#x2019;s environment, e.g., <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Lidar">LiDAR</ext-link>, cameras, ultrasound distance sensors,&#x20;etc.</p>
</list-item>
<list-item>
<p>&#x2022; Carto-ceptive sensors: maps that are available to the vessel, also related to extending the vessel&#x2019;s world model with objects/entities/actors in the vessel&#x2019;s environment, that are often not directly perceivable by the robot&#x2019;s extero-ceptive sensors, or are difficult to perceive.</p>
</list-item>
</list>
</p>
<p>For navigation, vessels typically use information from either a map, or from their perception sensors, as part of their world model to perform specific tasks. However, in order to use both of them together, switch between them as driven by situations and context, or in order to validate one another, additional (meta) information about the data is crucial. Detecting known map-landmarks in the perception sensor data, or vice versa, is only possible if these landmarks are unambiguously identifiable, and thus have appropriate semantic&#x20;tags.</p>
<p>A complete set of models for the sensor subsystems is beyond the scope of this work, however, current information used for the experiments in <xref ref-type="sec" rid="s3-3">Section 3.3</xref>, are interpreted according to the model in <xref ref-type="other" rid="alg14">Listing 14</xref>, which obviously is an <monospace>instance-of aIwt_Vessel_Name_Mmsi_Cemt</monospace>. Also note that further decoupling of this model might be desired, however, this was not necessary for the experiments in <xref ref-type="sec" rid="s3-3-3">Section 3.3.3</xref>.<statement content-type="algorithm" id="alg14">
<label>
<bold>Listing 14:</bold>
</label>
<p>Iwt_Sensor_Proprio_Extero_Carto&#x20;model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g028.tif"/>
</p>
</statement>
</p>
<p>The cartoceptive value here is a set of semantic maps. The map discussed in <xref ref-type="sec" rid="s3-2">Section 3.2</xref> could be one of&#x20;them.</p>
</sec>
</sec>
<sec id="s3-2">
<title>3.2 Semantic External World Model or Map Model</title>
<sec id="s3-2-1">
<title>3.2.1 Map Initialisation</title>
<p>As stated in <xref ref-type="sec" rid="s2-3">Section 2.3</xref>, local tangent plane coordinates (ENU) are used as a geographic reference system for the 2D maps presented in this work. A local map will be generated at runtime, on a specific timestamp, based on a specific situation, by some entity. Note that in the context of this paper, maps are generated by the vessel entity. The body-fixed origin <italic>o</italic>
<sub>
<italic>b</italic>
</sub> of the vessel, coinciding with a <monospace>Point</monospace> on the vessel that is tangent to the waterline, is used as origin of the local map. Assuming the <monospace>Point EnuPnt0</monospace> is defined, we get:<statement content-type="algorithm" id="alg15">
<label>
<bold>Listing 15:</bold>
</label>
<p>Iwt_Map_Entity_Point_Time model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g029.tif"/>
</p>
</statement>
</p>
<p>Moreover, assume a defined reference frame model <monospace>Geodetic_Frame_Enu</monospace>, as a composition of the points <monospace>EnuPnt0</monospace>, <monospace>EnuPntX</monospace>, <monospace>EnuPntY</monospace>, and <monospace>EnuPntZ</monospace>. Then, the map entity conforming to <monospace>Iwt_Map_Entity_Point_Time</monospace> has a <monospace>Geodetic_Frame_Enu</monospace> entity. The coordinate data structure for the origin <monospace>EnuPnt0</monospace> is shown in <xref ref-type="other" rid="alg16">Listing 16</xref>.<statement content-type="algorithm" id="alg16">
<label>
<bold>Listing 16:</bold>
</label>
<p>Coordinate_Point_Entity_Frame_Enu_Data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g030.tif"/>
</p>
</statement>
</p>
<p>Correct interpretation of this origin <monospace>Point</monospace> is absolutely critical, and has several additional geometry relations with vessel entities. When the map is shared between such entities, or with remote control centres, a necessary set of meta data allows for correct interpretations and model-to-model transformations, as every entity or service can have their own sets of conventions and compositions.</p>
<p>The conversion from geographic features, containing geodetic coordinates in the <ext-link ext-link-type="uri" xlink:href="https://epsg.io/4326">EPSG:4326</ext-link> reference system, to local ENU coordinates, is a two stage process, involving 1) to convert geodetic coordinates to <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/ECEF">ECEF coordinates</ext-link>, and 2) to convert ECEF coordinates to local ENU coordinates. The first step 1) is performed by using the <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Geographic_coordinate_conversion">following equations</ext-link>, with latitude <italic>&#x3d5;</italic>, longitude <italic>&#x3bb;</italic>, and height <italic>h</italic>:<disp-formula id="e5">
<mml:math id="m5">
<mml:mi>X</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>cos</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
</mml:math>
<label>(5)</label>
</disp-formula>
<disp-formula id="e6">
<mml:math id="m6">
<mml:mi>Y</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>cos</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
</mml:math>
<label>(6)</label>
</disp-formula>
<disp-formula id="e7">
<mml:math id="m7">
<mml:mi>Z</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mi>N</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>sin</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
</mml:math>
<label>(7)</label>
</disp-formula>where<disp-formula id="e8">
<mml:math id="m8">
<mml:mi>N</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>sin</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:math>
<label>(8)</label>
</disp-formula>and <italic>a</italic> and <italic>b</italic> are the equatorial radius semi-major axis and the polar radius semi-minor axis, respectively. Also note that here <inline-formula id="inf1">
<mml:math id="m9">
<mml:msup>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula> is the square of the first eccentricity of the ellipsoid. The prime vertical radius of curvature, <italic>N</italic>(<italic>&#x3d5;</italic>), is the distance from the surface to the Z-axis along the ellipsoid normal. For the second step 2), given a local reference point <inline-formula id="inf2">
<mml:math id="m10">
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.17em"/>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.17em"/>
<mml:msub>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
</inline-formula>, and an object at <inline-formula id="inf3">
<mml:math id="m11">
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.17em"/>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.17em"/>
<mml:msub>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
</inline-formula>, then the vector pointing from the reference point to the object in the ENU frame is:<disp-formula id="e9">
<mml:math id="m12">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>x</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>y</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>z</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>cos</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>sin</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>The envelope of the local map can be determined by the user, the situation, or by the application.</p>
<p>At the timestamp the map is generated, additional metadata is added to the features fetched from external sources, which allows for more efficient querying, sharing, and context negotiation at runtime. An example is illustrated in <xref ref-type="fig" rid="F4">Figure&#x20;4</xref>. In that example, the following semantic tags are allocated:<list list-type="simple">
<list-item>
<p>&#x2022; <monospace>navbounds:</monospace> symbolic tag allocated to (I)ENC features that represent navigation boundaries, here corresponding to COALNE (coastline, or shoreline) and DEPARE (depth area, i.e., water area with depth between a defined range of values) features (see also <xref ref-type="fig" rid="F7">Figure&#x20;7</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; <monospace>enc-feature-X:</monospace> relation with corresponding (I)ENC feature, also connecting the already existing tags such as object names <monospace>(OBJNAM)</monospace>, general feature info <monospace>(INFORM)</monospace>, and information about the visibility of objects to a certain context. For instance, the CONRAD attribute, which provides information on the conspicuousness of the feature for radars, e.g., whether this returns a strong radar echo. Note that this can then be connected with the model of the sensor subsystem, as given in <xref ref-type="other" rid="alg14">Listing 14</xref>.</p>
</list-item>
</list>
</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Part of local map from <xref ref-type="fig" rid="F2">Figure&#x20;2B</xref> with <monospace>Symbolic_IDs</monospace> and additional metadata.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g004.tif"/>
</fig>
<p>Furthermore, the following geometries and corresponding relations are defined:<list list-type="simple">
<list-item>
<p>&#x2022; <monospace>A1:</monospace> sub-area in the map containing all features within a certain range (property) of <monospace>BRIDGE-04</monospace>, that is, the railway bridge around the research area in <ext-link ext-link-type="uri" xlink:href="https://www.openstreetmap.org/search?query=leuven%20wilsele#map=12/50.9131/4.7177">Leuven, Belgium</ext-link>. Similary, this is done for locks, terminal, and any other critical regions. Note that these areas are computed at the initialisation of a map, using (geo)spatial computations on the features inside the global&#x20;map.</p>
</list-item>
<list-item>
<p>&#x2022; <monospace>FEATURE-NR-bbox:</monospace> bounding-box of a feature in the map, which can be used, for example, to model constraint relations like <monospace>Intersections</monospace>.</p>
</list-item>
</list>
</p>
<p>Furthermore, a set of attributes is given to all features. For example, <monospace>number_of_points</monospace>, or <monospace>feature_type</monospace>, as well as the set of local coordinates. The number in the feature IDs is also a property of each feature, and the number sequence is related to a predefined meta-model.</p>
<p>It should be noted that multiple maps can be generated, initialised at different timestamps and/or by various entities (which can in turn be related to one another).</p>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Ship Position on the Map</title>
<p>A coordinate model for <monospace>Position</monospace> of the vessel as a relation between the <monospace>Point</monospace> geometry <monospace>PaPnt0-ID</monospace> (body-fixed origin of vessel) and the <monospace>Geodetic_Frame_Enu</monospace> (<monospace>Frame</monospace> geometry) of the local map, is constructed as follows:<statement content-type="algorithm" id="alg17">
<label>
<bold>Listing 17:</bold>
</label>
<p>Coordinate_Point_Entity_Frame_Meter data instance</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g031.tif"/>
</p>
</statement>
</p>
<p>The position [0, 0] of the vessel in the local ENU reference system, is illustrated in <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Vessel, represented as a blue polygon and surrounded by ship domains, in local ENU frame, at position (0,0).</p>
</caption>
<graphic xlink:href="frobt-08-739062-g005.tif"/>
</fig>
<p>Similar to the ship <monospace>Position</monospace> relation model above, models for velocity, acceleration, etc., can be constructed. Generally speaking, motion has three parts: the <monospace>Position</monospace> relation, and the relations of <monospace>Velocity</monospace> and <monospace>Acceleration</monospace> that represent the first- and second-order derivatives in time of the <monospace>Position</monospace> relation. Because of this relation model, the same geometric entity can have several <monospace>Positions</monospace> and <monospace>Motions</monospace> at the same time: one for each other entity involved in a <monospace>Position</monospace> or <monospace>Motion</monospace> relation, and thus in this case, relative to a specific feature entity in the semantic&#x20;map.</p>
<p>Furthermore, the top view <monospace>Projection</monospace> of the vessel hull is used in the map, as seen in <xref ref-type="other" rid="alg8">Listing 8</xref>, with the following two constraint relations:</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g032.tif"/>
</p>
</sec>
</sec>
<sec id="s3-3">
<title>3.3 Semantic Dynamic Models for IWT</title>
<p>This work uses ship domains (SD) and map domains (MD) to illustrate relations that are relevant within a situation. The adjective <italic>dynamic</italic> denotes the ability to update these sets of model-conform entities and relations at runtime. A modelling&#x20;approach for these domains is briefly discussed in <xref ref-type="sec" rid="s3-3-1">Section 3.3.1</xref> and <xref ref-type="sec" rid="s3-3-2">Section 3.3.2</xref>. Subsequently, these models are used in the range of experiments of <xref ref-type="sec" rid="s3-3-3">Section 3.3.3</xref>, where situations are considered that require dynamic behaviour. Note that corresponding results are covered in <xref ref-type="sec" rid="s4">Section&#x20;4</xref>.</p>
<sec id="s3-3-1">
<title>3.3.1 Ship Domains</title>
<p>Dynamic, context-dependent ship domains have relations with the body model of the vessel, and with the semantic map. These SDs are the main focus throughout the experiments in <xref ref-type="sec" rid="s3-3-3">Section&#x20;3.3.3</xref>, as they allow for situational-aware reacting of&#x20;the application, and subsequent visualisation, based on the&#x20;integration of the internal and external world models. The ship domain geometries contain relations with (a combination of) the <monospace>Motion, Task, Perception</monospace>, and Map of the&#x20;robot.</p>
<p>In the recently finished <ext-link ext-link-type="uri" xlink:href="https://www.sintef.no/projectweb/hull-to-hull/">hull-to-hull (H2H)</ext-link> project, experiments were conducted with the explicit use of uncertainty and proximity vessel zones as a navigational aid for remote operators <xref ref-type="bibr" rid="B31">SINTEF (2020)</xref>; <xref ref-type="bibr" rid="B20">Kotz&#xe9; et&#x20;al., (2019)</xref>. In accordance to this project, this work adopts a similar three-level domain taxonomy, and subsequently focusses on the composability of the SDs, based on earlier defined relations. The three domains, illustrated in <xref ref-type="fig" rid="F6">Figure&#x20;6</xref>, are defined as follows:<list list-type="simple">
<list-item>
<p>&#x2022; <bold>SD0</bold> (&#x201c;&#x2026;&#x201d;, black dotted line): uncertainty zone, discussed in&#x20;<xref ref-type="sec" rid="s3-3-3-1">Experiment 1</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; <bold>SD1</bold> (&#x201c;&#x2014;&#x201d;, red line): sometimes referred to as the danger zone, as it is typically related to the required breaking distance (<monospace>Motion</monospace>) of the vessel, as seen in <xref ref-type="sec" rid="s3-3-3-2">Experiment 2</xref>&#x2013;<xref ref-type="sec" rid="s3-3-3-5">Experiment 5</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; <bold>SD2</bold> (&#x201c;- -&#x201d;, orange dashed line): the geometry of this zone is highly dependent on the situation, and various representations or paramterisations exist depending on its (set of) relation(s), illustrated in <xref ref-type="sec" rid="s3-3-3-2">Experiment 2</xref>&#x2013;<xref ref-type="sec" rid="s3-3-3-7">Experiment 7</xref>.</p>
</list-item>
</list>
</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Example configuration of vessel ship domains.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g006.tif"/>
</fig>
<p>This work advocates to have at least one, fundamental, axiomatic, ship domain &#x201c;SD0&#x201d; as part of its world model, which connects the vessel with the map, taking into account the knowledge of the uncertainty of the position associated with the symbolic connection point, and the orientation of the vessel. This information is considered essential to enable higher levels of autonomy. Moreover, two additional zones (&#x201c;<bold>SD1</bold>&#x201d; and &#x201c;<bold>SD2</bold>&#x201d;) make sense from the perspective of a human interpreter, however, as discussed before, a vessel can interpret several domain compositions and relations simultaneously. As such, more (sets of) ship domains can be added at all times, given they have semantic relations that allow for unambiguous interpretation of these domains.</p>
<p>Consider the mereo-logical models of these three ship domains, and their conforming entities defined as: <monospace>SD0</monospace>, <monospace>
<bold>SD1</bold>
</monospace>, and <monospace>
<bold>SD2</bold>
</monospace>. Next, the geometries of these ship domains and their relations need to be defined. For instance, for SD0, this can be a two-dimensional affine transformation of the top view hull geometry entity. A model for this <bold>SD0</bold> is shown in <xref ref-type="other" rid="alg18">Listing 18</xref>:<statement content-type="algorithm" id="alg18">
<label>
<bold>Listing 18:</bold>
</label>
<p>Iwt_Ship_Domain_A2_Scale_Rotate_Skew_Translate model</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g033.tif"/>
</p>
</statement>
</p>
<p>Several additional relations and constraints between <monospace>aShip_Domain_A2</monospace> entity and other entities can be added. For example, the scale factors in <monospace>Ship_Domain_A2</monospace> can be determined by the uncertainties of the proprioceptive sensor subsystem in <xref ref-type="other" rid="alg14">Listing 14</xref> (SD0). The models to apply at a certain point in time, given a specific situation, will be determined by the relations of the domains and corresponding constraints. Another example is to connect ship domain geometry with the de-acceleration motion model in <xref ref-type="other" rid="alg12">Listing 12</xref>, or any other motion relation, as discussed in <xref ref-type="sec" rid="s3-3-3-2">Section 3.3.3.2</xref> for <bold>SD1</bold> and&#x20;<bold>SD2</bold>.</p>
</sec>
<sec id="s3-3-2">
<title>3.3.2 Map Domains</title>
<p>Currently, only two map domains are explicitly defined. These are:<list list-type="simple">
<list-item>
<p>&#x2022; <bold>MD0</bold>: geometries, or collections of geometries, that form the static backbone of the map, i.e.,&#x20;the <ext-link ext-link-type="uri" xlink:href="https://www.gislounge.com/basemaps-defined/">basemap</ext-link>. These are typically composed from external chart datasets, and generated during the map initialisation process, discussed in <xref ref-type="sec" rid="s3-2-1">Section&#x20;3.2.1</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; <bold>MD1</bold>: all geometric entities that are dynamically added to the map at runtime, for example, the vessel and its ship domains belong to this level. These entities must contain relations with entities in <monospace>MD0</monospace>, and can moreover be divided into sub-domains, such as perception, navigation, control, other actors, map feature updates, and others. Generating this taxonomy is beyond the scope of this&#x20;work.</p>
</list-item>
</list>
</p>
</sec>
<sec id="s3-3-3">
<title>3.3.3 Experimental Design</title>
<p>Each experiment contains one or more elementary IWT situations (as seen in <xref ref-type="table" rid="T1">Table 1</xref>), consisting of semantic areas and actions (or manoeuvres). These situations are motivated by a series of real-world experiments, conducted over the last couple of years. It was found that many decisions were <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Hard_coding">hard-coded</ext-link> in the software while they should have been available as externally configurable parameters. Consequently, the software proved to be hard to maintain and extend. While in these real-world scenarios, multiple, more complex situations can (co-)exist, this paper focusses on the simplest and most essential ones that can already improve interoperability and long-term developments significantly.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Overview experiments: short description, main features, and reference to corresponding results.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left"/>
<th align="center">Description</th>
<th align="center">Main feature(s)</th>
<th align="center">Result</th>
<th align="center">Example</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-1">Experiment 1</xref>
</td>
<td align="left">Introduction zeroth level domains for ship, <bold>SD0</bold>, and map, <bold>MD0</bold>
</td>
<td align="left">The uncertainty of the vessel position and its orientation determine the size of <bold>SD0</bold>; its shape is based on the vessel geometry</td>
<td align="left">
<xref ref-type="sec" rid="s4-1">Section 4.1</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g035.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-2">Experiment 2</xref>
</td>
<td align="left">Introduction of first, <bold>SD1</bold>, and second, <bold>SD2</bold>, level ship domains</td>
<td align="left">The size of <bold>SD1</bold> corresponds to the minimally feasible breaking distance for the vessel, and its shape relates to the geometry of <bold>SD0</bold>. Similarly, <bold>SD2</bold> corresponds to the minimal speed decay distance</td>
<td align="left">
<xref ref-type="sec" rid="s4-2">Section 4.2</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g036.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-3">Experiment 3</xref>
</td>
<td align="left">Tolerances for <bold>SD1</bold> and <bold>SD2</bold> based on the hydrodynamic model</td>
<td align="left">A predetermined tolerance factor scales the size of <bold>SD1</bold> and <bold>SD2</bold> based on whether or not the available hydrodynamic model of the vessel incorporates external forces (e.g., wind&#x20;in this case)</td>
<td align="left">
<xref ref-type="sec" rid="s4-3">Section 4.3</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g037.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-4">Experiment 4</xref>
</td>
<td align="left">The declaration of <bold>SD2</bold> as an anticipation zone</td>
<td align="left">The shape of <bold>SD2</bold> will follow the navigational bounds of <bold>MD0</bold>, with a corresponding horizon configured by the user/operator</td>
<td align="left">
<xref ref-type="sec" rid="s4-4">Section 4.4</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g038.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-5">Experiment 5</xref>
</td>
<td align="left">Dynamic shortest-distance point features in <bold>MD1</bold>
</td>
<td align="left">Temporary features are added to <bold>MD1</bold> indicating the shortest linear distance between <bold>SD0</bold> and a point from <bold>MD0</bold> that has the <monospace>navbounds</monospace> meta tag</td>
<td align="left">
<xref ref-type="sec" rid="s4-5">Section 4.5</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g039.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-6">Experiment 6</xref>
</td>
<td align="left">The lane switch primitive added to <bold>MD1</bold>
</td>
<td align="left">A lane geometry is added to <bold>MD1</bold>, based on a set of relations between 1) the vessel entity, 2) its ship domains, 3) the COLREG meta model (avoiding collision in head-on situation), and 4) the map domains</td>
<td align="left">
<xref ref-type="sec" rid="s4-6">Section 4.6</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g040.tif"/>
</td>
</tr>
<tr>
<td align="left">
<xref ref-type="sec" rid="s3-3-3-7">Experiment 7</xref>
</td>
<td align="left">Composability&#x2014;integrated experiment combining several relations together</td>
<td align="left">All the relations corresponding to previous experiments hold here as well, and are extended with a relation between the communication subsystem and <bold>SD2</bold>
</td>
<td align="left">
<xref ref-type="sec" rid="s4-7">Section 4.7</xref>
</td>
<td align="left">
<inline-graphic xlink:href="frobt-08-739062-g041.tif"/>
</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Furthermore, each experiment is discussed by means of providing 1) the context, including the motivation for the experiment, 2) a set of relations between the model-conform entities relevant within this context, and 3) a configuration, i.e., a description on how the models and relations are used in the situation(s).</p>
<sec id="s3-3-3-1">
<title>3.3.3.1 Experiment 1: The Axiomatic Body&#x2013;Map Model Interaction</title>
<p>
<bold>Context:</bold> A basic assumption for situational awareness in IWT, is a need for knowing a vessel&#x2019;s pose within the physical world. <xref ref-type="fig" rid="F2">Figure&#x20;2</xref> visualises this basic interaction between the body and world models. In the physical world there is always an uncertainty associated with the pose of a vessel, as well as an accuracy of the local map. Furthermore note that pose uncertainty depends on accuracy and tolerances of proprioceptive sensors, possibly improved <italic>via</italic> exteroceptive sensors (see <xref ref-type="fig" rid="F1">Figure&#x20;1C</xref>).</p>
<p>
<bold>Relations:</bold> This experiment declares the <bold>SD0</bold> <italic>via</italic> a geometry&#x2013;geometry relation. More precisely, the uncertainty of the vessel position and its orientation, provided by proprioceptive sensors, determine the size of <bold>SD0</bold> whereas its shape is based on the vessel geometry. The present IENCs have no explicit accuracy information available, hence <bold>MD0</bold> will be declared without uncertainty.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; Causal connection in visualisation of <bold>SD0</bold>: when the heading accuracy drives the width or length of the uncertainty zone, i.e.,&#x20;its size, an additional transparent vessel geometry rotated clockwise and counter-clockwise is plotted, in order to indicate that the vessel orientation causes the width of the ship domain. When the position accuracy determines the size of the domain, these additional rotated vessel geometries are not&#x20;shown.</p>
</list-item>
<list-item>
<p>&#x2022; The position for this ship domain in the map corresponds to <xref ref-type="other" rid="alg17">Listing 17</xref>, with the shape according to <xref ref-type="other" rid="alg18">Listing 18</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; To illustrate this causal link between the uncertainty source and the visualisation of <bold>SD0</bold>, the uncertainties in position (m) and heading (rad) i.e., (<bold>
<italic>&#x025B;</italic>
</bold>
<sub>
<bold>
<italic>&#x3bd;</italic>
</bold>
</sub> &#x3d; [<italic>&#x3f5;</italic>
<sub>
<italic>x</italic>
</sub>, <italic>&#x3f5;</italic>
<sub>
<italic>y</italic>
</sub>, <italic>&#x3f5;</italic>
<sub>
<italic>&#x3b8;</italic>
</sub>]), change in the first 40&#xa0;s of the simulation (see <xref ref-type="sec" rid="s4-1">Section 4.1</xref>), as follows:</p>
</list-item>
</list>
</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g034.tif"/>
</p>
</sec>
<sec id="s3-3-3-2">
<title>3.3.3.2 Experiment 2: A Navigation Aid for (Remote) Operators and Control Systems</title>
<p>
<bold>Context:</bold> The braking distance of a vessel, or its natural speed-decay distance, with corresponding polynomial coefficients in <xref ref-type="other" rid="alg12">Listing 12</xref>, is crucial for a motion control system, or for a monitoring or controlling (onboard or remote) officer.</p>
<p>
<bold>Relations:</bold> This experiment declares the <bold>SD1</bold> and <bold>SD2</bold> <italic>via</italic> a geometry&#x2013;motion relation. More precisely, the size of <bold>SD1</bold> corresponds to the minimally feasible breaking distance for the vessel, whereas its shape relates to the geometry of <bold>SD0</bold>. Similarly, <bold>SD2</bold> corresponds to the minimal speed decay distance.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; Tolerance (in longitudinal and transversal direction), can be context-dependent on its&#x20;own.</p>
</list-item>
<list-item>
<p>&#x2022; Experimentally obtained third-order polynomials, with velocity as variable (using coefficients in <xref ref-type="other" rid="alg12">Listing 12</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; Static reverse-motion tolerance, in addition to the pose uncertainty, in longitudinal and transversal direction. This small margin increases safety for motion-based decisions making.</p>
</list-item>
</list>
</p>
</sec>
<sec id="s3-3-3-3">
<title>3.3.3.3 Experiment 3: Hydrodynamic Model Composition and Constraints</title>
<p>
<bold>Context:</bold> Humans and robots should be able to unambiguously interpret the composition of the hydrodynamic model&#x2014;and its constraints or assumptions&#x2014;to operate and control the vessel, and to assign tolerances to specific control tasks accordingly, wherever needed. For example, especially for smaller vessels, such as the <italic>Cogge</italic>, it is generally important to account for wind whenever possible, and to <italic>know</italic> about whether or not wind is taken into account in the planned trajectories and short-term motion predictions of nearby vessels. If it is not, either by exclusion in the model, or by lack of an appropriate wind sensor, every application can decide for itself <italic>how</italic> to account for this shortcoming in the&#x20;model.</p>
<p>
<bold>Relations:</bold> This experiment adds tolerances to <bold>SD1</bold> and <bold>SD2</bold> <italic>via</italic> a geometry&#x2013;motion relation. More precisely, when the hydrodynamic model of a vessel lacks the integration of wind forces, a predetermined tolerance factor scales the size of <bold>SD1</bold> and <bold>SD2</bold>. The semantic hydrodynamic model in <xref ref-type="other" rid="alg9">Listing 9</xref>, has the <monospace>external_forces</monospace> property which includes the information of whether or not external forces, such as the wind forces, are included into its hydrodynamic model. This moreover imposes the constraint that the sensor subsystem <monospace>has-a Iwt_Sensor_Wind</monospace> entity.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; The tolerances can be dynamically activated, however, in this particular experiment, a human selects or deselect the checkbox, depending on whether external wind forces are included in the hydrodynamic model of the vessel or not (see <xref ref-type="sec" rid="s4-3">Section&#x20;4.3</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; The determination of tolerances on the geometry of the vessel, more specifically, its surface above the waterline. The surface dimensions are factored with the static tolerance of the ship domains<xref ref-type="fn" rid="fn9">
<sup>9</sup>
</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; It should be noted that not only wind induces tolerance adjustments on the ship domains, however, for the purpose of <italic>this</italic> experiment, it is the only affecting parameter.</p>
</list-item>
</list>
</p>
</sec>
<sec id="s3-3-3-4">
<title>3.3.3.4 Experiment 4: Cartoceptive Anticipation Domain</title>
<p>
<bold>Context:</bold> Within the perception context, it can be useful to define explicit relations between a ship domain and other features in the semantic map. Such a ship domain could represent an area of interest for the vessel or operator. For example, this domain can be defined as an anticipation zone in which obstacles should be detected (within the navigation bounds of the map), to be used by the control system or operator.</p>
<p>
<bold>Relations:</bold> This experiment declares <bold>SD2</bold> <italic>via</italic> a geometry&#x2013;geometry relation. More precisely, the shape of <bold>SD2</bold> will follow the navigational bounds of <bold>MD0</bold>, and its size, or rather horizon, can be configured by the operator or the vessel.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; This experiment fetches all features that: 1) have the semantic tag (metadata) navbounds in the map, i.e.,&#x20;features related to the navigation bounds for the vessel, and 2) are within distance <italic>U</italic> from the vessel, with distance <italic>U</italic> in the direction <monospace>Vessel_Principal_Axes_Frame.frame.u</monospace>.</p>
</list-item>
<list-item>
<p>&#x2022; This distance <italic>U</italic> is determined by the vessel, or operator, at runtime, and can be context-dependent on itself.</p>
</list-item>
<list-item>
<p>&#x2022; A distance of 50&#xa0;m in the sailing direction, and 20&#xa0;m in the reverse direction is&#x20;used.</p>
</list-item>
<list-item>
<p>&#x2022; The resulting <bold>SD2</bold> domain is a <monospace>Polygon</monospace> composed from <monospace>Points</monospace> that belong to these <monospace>navbounds</monospace> features and fall within the range constraints of&#x20;<bold>SD2.</bold>
</p>
</list-item>
</list>
</p>
</sec>
<sec id="s3-3-3-5">
<title>3.3.3.5 Experiment 5: Shortest Distance Between Uncertainty Zone and Navigation Boundary</title>
<p>
<bold>Context:</bold> Knowledge of the distance between the vessel and an object, e.g., the shoreline, can augment situation awareness of the operator and/or the control systems.</p>
<p>
<bold>Relations:</bold> This experiment adds temporary features to <bold>MD1</bold>&#x2014;which indicate this shortest distance&#x2014;<italic>via</italic> a main geometry&#x2013;geometry relation. More precisely, a calculation determines the closest linear distance between <bold>SD0</bold> and a point from <bold>MD0</bold>, that is, a coordinate of a feature that has the semantic navbounds tag. As <bold>MD0</bold> features are currently not composed of symbolic, uniquely identifiable points, a temporary clone with the same coordinates is composed, and <italic>does</italic> get assigned a semantic tag. As such, this <monospace>Point</monospace> entity, i.e.,&#x20;<monospace>aPntShortestDistNavbounds</monospace>, can be used for online reasoning. For the experiments in this work, that means to determine whether <monospace>aPntShortestDistNavbounds</monospace> lies <italic>within</italic> <bold>SD1</bold> or <bold>SD2</bold>. This implies computing the <monospace>Intersection</monospace> between {<bold>SD0</bold>, <bold>SD1</bold>, <bold>SD2</bold>} and <monospace>aPntShortestDistNavbounds</monospace>.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022;As discussed in <xref ref-type="sec" rid="s2-1">Section 2.1</xref>, semantic metadata is only added to each map feature (e.g., <monospace>LineString, Polygon, &#x2026;</monospace>) and not to each individual geometric map point. For example, the COALNE features (see also <xref ref-type="fig" rid="F7">Figure 7</xref>) in the example map typically contain a <monospace>LineString</monospace> of 5&#x2013;15 points, over a distance of 10&#x2013;20&#xa0;m.</p>
</list-item>
<list-item>
<p>&#x2022;The associated <monospace>navbounds</monospace> are not yet treated as lines or polygons, but rather as the just-mentioned set of discrete points during the presently implemented shortest distance between <bold>SD0</bold>&#x2013;<bold>MD0</bold> calculations.</p>
</list-item>
<list-item>
<p>&#x2022;A temporary <monospace>Semantic_ID</monospace> is assigned to the <monospace>Point</monospace> that is <monospace>part-of</monospace> the Polygon geometry in <xref ref-type="other" rid="alg8">Listing 8</xref>, and moreover holds the shortest distance relation with <monospace>aPntShortestDistNavbounds</monospace> in&#x20;<bold>MD0.</bold>
</p>
</list-item>
<list-item>
<p>&#x2022;The following &#x201c;intersection point representation&#x201d; illustrate the result of the vessel&#x2013;shoreline intersection calculation:</p>
</list-item>
<list-item>
<p>&#x2022;{result: no intersection}: point &#x3d; circle,&#x20;black</p>
</list-item>
<list-item>
<p>&#x2022;{result: intersect with <bold>SD2</bold>}: point &#x3d; square, orange</p>
</list-item>
<list-item>
<p>&#x2022;{result: intersect with <bold>SD1</bold>} : point &#x3d; triangle,&#x20;red</p>
</list-item>
<list-item>
<p>&#x2022;A list of 6&#x20;<italic>past</italic> shortest points are kept as &#x201c;recent history,&#x201d; however, this value is dynamically configurable.</p>
</list-item>
<list-item>
<p>&#x2022;Note that, presently, intersections with <bold>SD0</bold> trigger the same warning as an intersection with <bold>SD1.</bold> This need not be the case, however, their differentation falls out of the scope of the current experiment and&#x20;work.</p>
</list-item>
</list>
</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>General legend for map features depicted throughout this&#x20;paper.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g007.tif"/>
</fig>
</sec>
<sec id="s3-3-3-6">
<title>3.3.3.6 Experiment 6: The Lane Shift Primitive for COLREGs</title>
<p>
<bold>Context:</bold> <ext-link ext-link-type="uri" xlink:href="https://www.imo.org/en/About/Conventions/Pages/COLREG.aspx">COLREG</ext-link> Rule 14, head-on situation (a) states that: &#x201c;when two power-driven vessels are meeting on reciprocal or nearly reciprocal courses so as to involve risk of collision, each shall alter her course to starboard so that each shall pass on the port side of the other.&#x201d; To safely comply to this, and to other COLREG rules, especially in a highly automated environment, additional knowledge can significantly reduce confusion, and enhance safe, automated decision making to avoid collisions.</p>
<p>
<bold>Relations:</bold> This experiment declares a lane shift primitive, based on a set of relations between 1) the vessel entity, 2) its ship domains, 3) the COLREG meta model, and 4) the map domains. The lane geometry, which is added to <bold>MD1</bold>, has a geometry&#x2013;geometry relation with the <monospace>navbounds</monospace>-tagged entities in <bold>MD0</bold> (lane translation). Two additional geometry&#x2013;geometry relations exists between <bold>SD0</bold> of the vessel entity, and the geometry of the lane, i.e., 1) to determine an <monospace>intersection</monospace> between these areas, and 2) to set the <monospace>within</monospace> constraint. A third, geometry&#x2013;perception relation is present, where knowledge about the perception subsystem determines the geometry of <bold>SD2</bold>. Furthermore, the relation geometry&#x2013;task is present, i.e. that the vessel&#x2019;s task is to follow the lane in this particular situation, with corresponding implications for the controller.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; By default, when no objects are within the perception range, the lane in <bold>MD1</bold> is centred in the channel, with a width <italic>w</italic>
<sub>
<italic>lane</italic>
</sub> &#x3d; <italic>w</italic>
<sub>
<italic>channel</italic>
</sub>/<italic>f</italic>, where <italic>f</italic> is determined by the current situation, taking into account the relevant operational range (here 300&#x20;m). In this particular head-on case, <italic>f</italic>&#x20;&#x3d;&#x20;3.</p>
</list-item>
<list-item>
<p>&#x2022; When a vessel&#x2019;s <bold>SD0</bold> geometry is completely <italic>within</italic> the lane geometry, the lane has a &#x201c;light green&#x201d; colour. If not, the lane turns &#x201c;red&#x201d;. This visual confirmation can help (remote) operators to check whether they are in fact properly executing a task. The <monospace>is-within</monospace> relation offers similar knowledge for robots.</p>
</list-item>
<list-item>
<p>&#x2022; Information about the exteroceptive sensor system, as modelled in <xref ref-type="other" rid="alg14">Listing 14</xref>, helps determining an appropriate range for the circle geometry of <bold>SD2</bold>, in the geometry&#x2013;perception context. The vessel velocity (see <xref ref-type="other" rid="alg10">Listing 10</xref>) is also factored here. The perception range is divided into two sub-ranges, that is, a short range (0&#x2013;50 m), and a long range (50&#x2013;150 m). The LiDAR can detect movement and allows for a high-level classification of obstacles within the long range. At a relatively low forward speed (<inline-formula id="inf4">
<mml:math id="m13">
<mml:mo>&#x3c;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mi>m</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>s</mml:mi>
</mml:math>
</inline-formula>), it can properly identify obstacles and corresponding geometries within the short-range. The visualised circle radius (<bold>SD2</bold>) is set to the short range, as this range is connected to the task execution (<italic>discrete</italic> control) of the vessel (in this case the lane shift execution). Data processing and context-reasoning within this horizon can still adjust the range of ship domain <bold>SD2</bold> at runtime, i.e.,&#x20;the range that triggers the lane switch.</p>
</list-item>
<list-item>
<p>&#x2022; When another vessel&#x2019;s <bold>SD0</bold> geometry is <italic>within</italic> the perception-related zone <bold>SD2</bold>, a lane switch is triggered, associated with an affine transformation of the centre lane(s), taking into account 1) COLREG rule 14, and 2) the width of the channel in <bold>MD0.</bold> This moreover triggers the controllers (of both vessels) to adjust their constraint values, in order to continue executing the &#x201c;stay within the lane&#x201d;&#x20;task.</p>
</list-item>
<list-item>
<p>&#x2022; It should be noted that several additional relations with considerable implications are <italic>not</italic> taken into account during in this experiment, such&#x20;as:</p>
</list-item>
<list-item>
<p>&#x2022; compliance to other COLREG rules, with respect to the width of the channel, or type of the vessel;&#x20;and</p>
</list-item>
<list-item>
<p>&#x2022; water depth information, as well as motion of the vessel, which can also have explicit (constraint) relations with the lane geometry.</p>
</list-item>
</list>
</p>
</sec>
<sec id="s3-3-3-7">
<title>3.3.3.7 Experiment 7: Combination of Previous Experiments, With Additional Sensor-Subsystem Reasoning</title>
<p>
<bold>Context:</bold> This experiment combines several of the above experiments. A vessel navigates a narrow channel, and passes two approaching vessels in opposite (head-on) directions. The first vessel <italic>does</italic> have AIS, and thus communicates its position to the <italic>Cogge</italic>, and the second vessel does not have AIS, meaning there is no way of knowing whether this second vessel is approaching without having a line of&#x20;sight.</p>
<p>
<bold>Relations:</bold> The abovementioned relations hold here as well. An additional relation between the <monospace>Communication</monospace> subsystem (AIS position of surrounding vessels), and the geometry of the cartoceptive <bold>SD2</bold> (own vessel), is&#x20;added.</p>
<p>
<bold>Configuration:</bold>
<list list-type="simple">
<list-item>
<p>&#x2022; By default, when no objects are within the short-range perception range (<bold>SD2</bold>), the lane in <bold>MD1</bold> is centred in the channel, similar to <xref ref-type="sec" rid="s3-3-3-6">Section 3.3.3.6</xref>. The same <italic>within</italic> relation applies here as&#x20;well.</p>
</list-item>
<list-item>
<p>&#x2022; Perception horizon of 50&#x2013;150&#xa0;m is used to confirm movement of surrounding actors.</p>
</list-item>
<list-item>
<p>&#x2022; When AIS position is communicated, the geometry&#x2013;geometry relation between the cartoceptive ship domain <bold>SD2</bold> (similar to <xref ref-type="sec" rid="s3-3-3-4">Section 3.3.3.4</xref>), and the AIS position and approaching vessel, triggers a lane switch is (AIS position is <monospace>within</monospace> the cartoceptive <bold>SD2</bold> geometry).</p>
</list-item>
<list-item>
<p>&#x2022; When no AIS position is communicated, the geometry&#x2013;perception related ship domain <bold>SD2</bold> (similar to <xref ref-type="sec" rid="s3-3-3-6">Section 3.3.3.6</xref>), is used to trigger the lane switch.</p>
</list-item>
<list-item>
<p>&#x2022; After passing a vessel, the geometry corresponding to the motion relation of <bold>SD2</bold> is used to trigger a &#x201c;back-to-centre&#x201d; lane switch, i.e.,&#x20;when the <bold>SD0</bold> domain geometry of the other vessel <monospace>is-below</monospace> the <bold>SD2</bold> motion-based geometry. This, together with the geometry&#x2013;geometry relation between <bold>MD0</bold> and the vessel geometry in <bold>MD1</bold>, in combination with the motion of the vessel, determines whether a lane switch is appropriate.</p>
</list-item>
</list>
</p>
</sec>
</sec>
</sec>
<sec id="s3-4">
<title>3.4 Implementation</title>
<p>Implementation with respect to the content in this work includes (i) the models and their integration in an application context; (ii) solvers, such as: query solvers, solvers for kinematics and dynamics, optimisation engines, etc.; and (iii) situation monitoring and discrete control (performed by a mediator), e.g., higher-level services that: trigger the execution of the relevant solvers, provide constraints to the low-level (continuous) controllers, monitor a solver's quality and performance, among other things. Implementations related to the solvers are beyond the scope of this work. Actions and manoeuvres triggered by a mediator are to some extent described informally throughout <xref ref-type="sec" rid="s3-3-3">Section 3.3.3</xref>, however, this work does not include their formal models and relations needed for higher-level reasoning. Hence, such actions and manoeuvres are still hard-coded in the software.</p>
<p>Consider <xref ref-type="sec" rid="s3-3-3-6">Section 3.3.3.6</xref> and <xref ref-type="sec" rid="s3-3-3-7">Section 3.3.3.7</xref>, corresponding to the high-level structure in <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>, where a map is shared between two crossing vessels, and the mediator uses this map to determine the parameters to discretely control the head-on situation. Both vessels are able to interpret the models and relations that are used in the map composition. The shared map can be initialised by either one of the vessels, or by an external service. Furthermore, both vessels can have their own basemap(s), and/or their own map domains on top of the (shared) map. It is also important to note that the visualisation is always relative: this paper visualises the data from the perspective of the <monospace>own-ship</monospace> entity, however, local coordinate transformations, corresponding to other perspectives, result in different visualisations of the exact same data structures. When <monospace>Vessel A</monospace> initialises the shared map, that is, offering the model-conform data structures in a particular situation, and <monospace>Vessel B</monospace> is familiar with these models, both entities can agree on using the map for mediating this situation. For this lane shift primitive, the model-conform data structures include: 1) the static navigation bounds (from the navigational charts), 2) <bold>SD0</bold> of both vessels, 3) and the lane geometries and associated relations, e.g., with the motion constraints of both vessels. When linked with the perception subsystem, this list can be extended with relations to dynamic obstacles and their geometries. The dynamically composed lane geometries and situation-specific policies<xref ref-type="fn" rid="fn10">
<sup>10</sup>
</xref> can in turn be used as control constraints for the respective vessels to perform COLREG-compliant, hence, collision-free manoeuvres. The internal processing, integration in the controller, and general implementation, are completely up to the user, as long as all constraints are met. Such constraints can be imposed by a mediator, or by any of the relations, both internally and externally, relevant in a certain situation. The lane geometry and corresponding lane-shift procedure could be updated dynamically, for example, when the perception subsystem of <monospace>Vessel A</monospace> detects an obstacle<xref ref-type="fn" rid="fn11">
<sup>11</sup>
</xref>. Even if only <monospace>Vessel A</monospace> is able to detect such obstacles, these kind of events tend to have implications for both vessels, e.g., by updating the lane geometries in the shared map, at runtime. As long as the world models and relations are known by both actors, such discrete control decisions can be understood/explained, and justified.</p>
<p>Models are implemented using <ext-link ext-link-type="uri" xlink:href="http://en.wikipedia.org/wiki/FlatBuffers">flatbuffer</ext-link> schemas, or human-readable <ext-link ext-link-type="uri" xlink:href="https://json-ld.org/">JSON-LD</ext-link> schemas (or both), depending on the application layer. JSON-LD offers a modelling standard for graph-structured relations, as it introduces additional property types such as <monospace>@id</monospace> to assign a model ID, <monospace>@context</monospace> for meta model connections, and <monospace>@type</monospace> for meta model <monospace>conforms-to</monospace> relations. In addition to flatbuffers and JSON-LD, this work adopts the <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Scalable_Vector_Graphics">SVG</ext-link>-standard to compose the semantic map<xref ref-type="fn" rid="fn12">
<sup>12</sup>
</xref>. This standard already offers a set of <ext-link ext-link-type="uri" xlink:href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Basic_Shapes">standardised primitives</ext-link> to define and compose geometric features. SVG elements can have a symbolic identifier (<monospace>id</monospace>), and (meta) model tags can be added to their <monospace>class</monospace>-list. Additionally, this approach offers a straightforward query interface for free (next to querying spatial features from a database, for example), directly on the shared map itself, using Javascript&#x2019;s built-in <ext-link ext-link-type="uri" xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector?retiredLocale=nl">querySelector</ext-link> method in a situation-related scope in the <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Document_Object_Model">Document Object Model (DOM)</ext-link> tree. The SVG can moreover be directly rendered, for instance, in a browser. For realtime exchange of model-conform data structures, flatbuffers are preferred considering their performance benefits, as they allow for compressed payloads and zero-copy deserialisation of the data. Moreover, these flatbuffers are defined using an interface description language that is compatible to the <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Protocol_Buffers">protocol buffer format</ext-link> (.proto). Naturally, many other data formats could be used as&#x20;well.</p>
<sec id="s3-4-1">
<title>3.4.1 Assumptions</title>
<p>All experiments are conducted using systems that are capable of interpreting a minimal number of data structures conform to the models discussed in this work. Currently, no validation service is implemented to check whether or not a system is actually compliant. On the application layer, a simple <monospace>boolean</monospace> (always <monospace>true</monospace> in our case) determines whether an actor can interpret the data associated with a certain model. This implies that non-compliant actors with respect to the semantic map are not allowed to dynamically add/update features to/on a <italic>shared</italic> map. Similar to a shared map, a realtime peer-to-peer stream of hydrodynamical data, perception data, or any other relevant piece of information for that matter, can be set up between actors, as long as appropriate (meta) model information is exchanged at the initial handshake to guarantee correct interpretation (again, always assumed <monospace>true</monospace> here).</p>
<p>Regarding shared updates, a <monospace>boolean</monospace> property is added to the meta data of a model-conform data structure. This allows actors that produce such data to indicate whether or not the data may be updated by other compliant actors in the same environment. A relevant example could be the geometry of the bounding box of a detected obstacle in a particular environment. Distributed data structure updates can be rather complex, and will require additional policies, models, and some kind of validation or voting system. This, however, is beyond the scope of this work, that aims to focus on the building blocks for such future developments. The same limitation holds for validation of uncertainties, i.e.,&#x20;<bold>SD0</bold>, of various objects, including vessels. This is closely related to the perception-subsystem of the vessel. Consequently, additional models within this very context are necessary.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<title>4 Results</title>
<p>The results of the above-designed experiments can be found in the supplementary material videos in <xref ref-type="sec" rid="s5-1">Section 5.1</xref>. This section briefly shows a few core snapshots of each video to illustrate the results. An overview was provided in <xref ref-type="table" rid="T1">Table&#x20;1</xref>. These snapshots include (some of) the following features shown in <xref ref-type="fig" rid="F7">Figure&#x20;7</xref>. In <xref ref-type="sec" rid="s4-1">Section 4.1</xref>, <xref ref-type="sec" rid="s4-2">Section 4.2</xref>, <xref ref-type="sec" rid="s4-3">Section 4.3</xref>, <xref ref-type="sec" rid="s4-4">Section 4.4</xref>, the main vessel entity is considered the mediator, as it determines its related ship domains according to information provided by its body-model subsystems. In <xref ref-type="sec" rid="s4-5">Section 4.5</xref>, an additional higher-level mediator is introduced, i.e.,&#x20;an operator controlling the&#x20;vessel in open loop, where relations between the body model and map are used, together with internal world model-based information, to determine appropriate actuation inputs. Lastly, in <xref ref-type="sec" rid="s4-6">Section 4.6</xref>, <xref ref-type="sec" rid="s4-7">Section 4.7</xref>, the semantic map, which is shared between various actors, is used by a situation monitoring service to mediate the situation. The additional lanes are added to the map at runtime, and hence, the map influences continuous control tasks and constraints for each actor.</p>
<sec id="s4-1">
<title>4.1 Experiment 1</title>
<p>
<xref ref-type="fig" rid="F8">Figure&#x20;8</xref> shows three snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S1</xref> which demonstrates the causal relation between the vessel&#x2019;s pose uncertainty and its&#x20;<bold>SD0</bold>.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Dynamic behaviour of the axiomatic <bold>SD0</bold> for the different time steps and associated uncertainties.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g008.tif"/>
</fig>
</sec>
<sec id="s4-2">
<title>4.2 Experiment 2</title>
<p>
<xref ref-type="fig" rid="F9">Figure&#x20;9</xref> shows several snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S2</xref> which introduces <bold>SD1</bold> and <bold>SD2</bold> based on the hydrodynamic motion model of the vessel.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Dynamic behaviour of <bold>SD1</bold> and <bold>SD2</bold> based on the hydrodynamic motion model of the vessel.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g009.tif"/>
</fig>
<p>In this experiment, and in all subsequent experiments, the constraint in <xref ref-type="other" rid="alg11">Listing 11</xref> is applied to the hydrodynamic model. When the forward velocity of the vessel is below a certain threshold (0.5&#x20;m/<italic>s</italic>), the damping is linear, whereas above, it is linear &#x2b; non-linear. This is especially important when the vessel has to perform specific, complex, tasks at low speeds (docking, mooring). When the 3DOF model of <xref ref-type="other" rid="alg9">Listing 9</xref> is used inside the control loop (e.g., for <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/Model_predictive_control">model predictive control</ext-link>), at low speeds, the model is very sensitive to the non-linear damping matrix, and will not mimic the physical behaviour of the vessel. Similarly, when encountering one or multiple vessels in a canal, or at a terminal, a mediator needs to know whether the models used to execute the respective control tasks of systems involved are adjustable to the context and motion of the vessel. Not having this information could lead to unexpected behaviour, such as unfeasible control objectives resulting in collisions.</p>
</sec>
<sec id="s4-3">
<title>4.3 Experiment 3</title>
<p>
<xref ref-type="fig" rid="F10">Figure&#x20;10</xref> shows four snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S3</xref> which illustrates the effect of the incorporation of the external wind forces on <bold>SD1</bold> and&#x20;<bold>SD2</bold>.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Dynamically allocated tolerances to <bold>SD1</bold> and <bold>SD2</bold> <italic>via</italic> a main geometry&#x2013;motion relation (with hydrodynamical model of the vessel), both for a static vessel <bold>(A,B)</bold> and a moving vessel <bold>(C,D)</bold>.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g010.tif"/>
</fig>
<p>For the simulator, by default, wind is modelled. The video shows how gusts of wind (of 10&#x20;m/<italic>s</italic>, or 4&#x2013;5 Beaufort), can have a significant impact on the behaviour of the vessel. For example, the vessel drifts several meters in the x-direction without any thrust forces applied in this direction.</p>
</sec>
<sec id="s4-4">
<title>4.4 Experiment 4</title>
<p>
<xref ref-type="fig" rid="F11">Figure&#x20;11</xref> shows four snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S4</xref> which illustrates the anticipation domain of <bold>SD2</bold> as a cartoceptive relation with the navbounds features in <bold>MD0</bold>. These domains can help a robot anticipate by triggering discrete control tasks based on geometry relations such as <monospace>within</monospace> or <monospace>intersect</monospace>. For example, when no perception sensors are available, and another vessel&#x2019;s AIS position claims to be <monospace>within</monospace> this range, it can trigger a lane shift, as demonstrated in <xref ref-type="sec" rid="s4-7">Section 4.7</xref>. Another use case for this domain is to detect, or link, known shoreline landmarks, e.g., <monospace>Points</monospace> integrated in the map, in the perception sensor data (geometry&#x2013;perception), or vice&#x20;versa.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Anticipation domain declaration, i.e., the zone in which obstacles should be detected (within the navigation bounds of the map), of <bold>SD2</bold> <italic>via</italic> a main cartoceptive geometry&#x2013;geometry relation.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g011.tif"/>
</fig>
</sec>
<sec id="s4-5">
<title>4.5 Experiment 5</title>
<p>
<xref ref-type="fig" rid="F12">Figure&#x20;12</xref> shows four snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S5</xref> which illustrates the shortest distance between the <monospace>Point</monospace> entities in vessel&#x2019;s <bold>SD0</bold> and the local coordinates of the <monospace>navbounds</monospace> features in <bold>MD0</bold>. By means of dynamically allocating a semantic tag to each closest <monospace>Point</monospace> entity, it allows vessel (sub)systems, as well as other actors within the operating range, to unambiguously identify this point, as part of a feature. Furthermore, it can be seen that whenever the vessel&#x2019;s danger zone <bold>SD1</bold>, related to the minimum aided deceleration distance (see <xref ref-type="other" rid="alg12">Listing 12</xref>), intersects with the shoreline in <bold>MD0</bold>, the vessel almost hits the shoreline. The added tolerances on this zone keep the vessel from colliding with the shoreline, although this particular scenario should, obviously, be avoided when executing the <monospace>move-along-channel</monospace>&#x20;task.</p>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Dynamic shortest distance between vessel and shoreline additions to <bold>MD0</bold> <italic>via</italic> a main geometry&#x2013;geometry relation.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g012.tif"/>
</fig>
</sec>
<sec id="s4-6">
<title>4.6 Experiment 6</title>
<p>
<xref ref-type="fig" rid="F13">Figure&#x20;13</xref> shows four snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S6</xref> which illustrates the lane shift primitive. This lane shift primitive, integrated in <bold>MD1</bold>, provides semantic information in the form of additional geometric entities and constraint relations for the vessel to simply follow the COLREG rule in a highly automated environment.</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Lane shift primitive, triggered by geometry&#x2013;perception relation (exteroceptive sensor subsystem), i.e., an approaching vessel detected by exteroceptive sensor(s), within predefined range. Lanes with vessel <italic>inside</italic> is shown in transparent green; lanes with vessels <italic>outside</italic> are shown in red.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g013.tif"/>
</fig>
</sec>
<sec id="s4-7">
<title>4.7 Experiment 7</title>
<p>
<xref ref-type="fig" rid="F14">Figure&#x20;14</xref> lists eight snapshots of the <xref ref-type="sec" rid="s11">Supplementary Video S7</xref> which illustrates a combination of situations and relations discussed in the previous experiments.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Combination of situations and relations of previous experiments, with additional sensor subsystem relations.</p>
</caption>
<graphic xlink:href="frobt-08-739062-g014.tif"/>
</fig>
<p>After passing the first vessel, the geometry corresponding to the motion relation of <bold>SD2</bold> triggers a &#x201c;back-to-centre&#x201d; lane switch. After passing the second vessel, the mediator uses the geometry&#x2013;geometry relation between <bold>MD0</bold> and <bold>MD1</bold>, in combination with the current position of the vessel in the map, to overrule the &#x201c;back-to-centre&#x201d; lane switch. Additional knowledge about the lane switch, i.e.,&#x20;switching lanes takes about 25&#xa0;m at this speed, determines that a lane switch <italic>before</italic> the channel narrowing is not very efficient, or safe. Note that in this case, it is still feasible. Therefore, in the second case, the vessel stays in the switched side-lane for passing the bridge, based on the cartoceptive information provided by the semantic&#x20;map.</p>
<p>The shared semantic map is used by the mediator, who acknowledges the fact that both actors are able to interpret the map-based constraints unambiguously in order to proceed. Once the agreement is reached, the information provided by the map, given there is sufficient, model-compliant input from each actor, could be used in the discrete controllers of the respective vessels. In this case, the dynamic lane geometry is used as a set of controller constraints. This includes geometric constraints as well as tolerances, desired navigation direction for each lane, speed limits, among other relevant (shared) data.</p>
</sec>
</sec>
<sec id="s5">
<title>5 Discussion</title>
<p>This paper presents a set of semantic world models within the context of Inland Waterway Transport. The models are a first step towards the formalisation of various situations that can occur on a waterway, focusing on the simplest and most essential ones. Each situation consists of 1) a set of &#x201c;semantic areas&#x201d; (represented by geometrical polygons on a basemap, with symbolic labels), and 2) a set of &#x201c;actions,&#x201d; for motion, perception, and information processing. The models are inter-connected, by so-called &#x201c;higher-order relations,&#x201d; to support the creation of a &#x201c;context.&#x201d; The paper focuses on making the models in such a way that 1) their granularity is small enough to compose models together in higher-order models without loss of interpretability, 2) they form the basis for inter-vessel messaging, and 3) (hence) result in explainable engineering systems and higher levels of shared automation.</p>
<p>The elementary situations discussed in the experiments were motivated by a range of real-world experiments, performed over the past couple of years. Developing the software for these real-world experiments turned out to be hard to maintain and extend, because so many decisions were hard-coded in the software while they should have been available as externally configurable parameters.</p>
<p>In the context of this paper, the formal extensions have not yet been tested on the real vessels, because their on-board control software is not (yet) capable of exploiting them. So, to illustrate the added value of the formalisations, a simulation of the vessels was used, with real-world navigation maps as basemaps, and simplified motion models for the vessels. In such simulation environments, it is rather straightforward to make all entities in a certain local environment compliant to a set of world models. In reality, this will rarely be the case, hence, research on how to be robust against &#x201c;unknown&#x201d; entities and features is required. The envisaged approach to reach such robustness is to extend the number of situations, linking them together with higher-order relations that encode how a more complex situation conforms to a composition of simpler situations together with a particular set of disturbances.</p>
<p>As a next step, new real-world experiments will be conducted in a <italic>controlled</italic> environment, that is, an environment in which only model-conform entities operate, such as vessels from <ext-link ext-link-type="uri" xlink:href="https://mech.kuleuven.be/imp/?n=Main.InlandWaterwayResearchVessels">our research fleet</ext-link>. Since our experimental facilities lie in an area where all of the simulated situations in this paper exist in reality, similar real-world experiments can be performed. To this end, a perception-based control strategy without any semantic reasoning will serve as a benchmark. Then, additional experiments with actors that have access to a cartoceptive subsystem, i.e. a (shared) semantic map, and corresponding world models, will test against that benchmark. These experiments will be performed with both remote controlled vessels, and with autonomous vessels. Regarding the former, it is expected that visual feedback of, for instance, a lane shift primitive, will help the remote operator to safely (smaller error margins) and efficiently (smaller manoeuvre time) navigate the vessel. With respect to the latter, it is expected that such shared, discrete control functionality (provided by a mediator) will reduce overall complexity of the highly automated environment, and as such improve safety, explainability and performance. Especially in close encounter manoeuvring, higher-level control decisions influenced by the shared map are expected to allow a vessel to quicker anticipate, and thus better avoid potential collisions.</p>
<sec id="s5-1">
<title>5.1 Conclusion</title>
<p>The simulation experiments in this paper corroborate the research hypothesis of the authors that the investment in formalising IWT situations adds value to the automation of (semi-)autonomous shipping. And that starting with the formalisation of the &#x201c;traffic rules&#x201d; in the waterways is a very appropriate starting point: the existing commercial navigation maps provide the basemap information of the geometrical layout of the waterways, so that we can add &#x201c;semantic traffic areas&#x201d; on top of the map, as well as the situations that are relevant in such areas.</p>
<p>A collaborative effort from research institutions, standardisation committees, and the IWT industry is a necessary next step to develop a workable set of models and relations that can be tested and integrated in daily operations. The existence of such internal world models of the robot, and external world models of a local environment, can significantly enhance safe, cost-effective (shared) automation procedures. It provides a necessary complementary extension to the existing legacy models and standards, such as AIS or <ext-link ext-link-type="uri" xlink:href="https://www.nmea.org/content/STANDARDS/STANDARDS">NMEA</ext-link>. As such, it can accommodate higher levels of automation, as well as better task anticipation by humans and robots. Explainable operational (meta) data will help a mediator to reason about particular situations, and take over control whenever necessary. Furthermore, formal models can be a crucial part in regulatory frameworks for IWT. The allowed level of automation for a robot can depend on its capability to comply to a formal set of standardised models, and thus to be able to justify its automated decision making to a reasonable extent. As such, improving, and extending world models in close collaboration with policy makers, waterway administrators, and IWT companies, is a challenging goal for the near future.</p>
</sec>
</sec>
</body>
<back>
<sec id="s6">
<title>Data Availability Statement</title>
<p>The original contributions presented in the study are included in the article/<xref ref-type="sec" rid="s11">Supplementary Material</xref>, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="s7">
<title>Author Contributions</title>
<p>Conceptualisation, SV, GP, HB, PP, and PS; methodology, SV, HB, and GP; software, SV; validation, SV and GP; investigation, SV and GP, resources, HB; writing&#x2014;original draft preparation, SV and GP; writing&#x2014;review and editing, SV, GP, HB, PP, and PS; visualization, SV and GP; supervision, HB, PP, and PS; All authors have read and agreed to the published version of the manuscript.</p>
</sec>
<sec id="s8">
<title>Funding</title>
<p>The <italic>Cogge</italic> was funded by the EFRO-Flanders project &#x201c;Autonoom Varen in de Westhoek.&#x201d; Additional instrumentation for the <italic>Cogge</italic> as well as shoreside infrastructure was funded in part by 1) the Interreg North Sea Region project &#x201c;AVATAR&#x201d;, 2) the Horizon 2020 project &#x201c;IW-NET&#x201d;, and 3) the VLAIO (ICON) project &#x201c;SSAVE&#x201c;.</p>
</sec>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<sec id="s11">
<title>Supplementary Material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/frobt.2021.739062/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/frobt.2021.739062/full&#x23;supplementary-material</ext-link>
</p>
<supplementary-material>
<label>Supplementary Video S0</label>
<caption>
<p>Research Vessel Cogge in operation.</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S1</label>
<caption>
<p>Video&#x2014;Introduction zeroth level ship and map domain.</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S2</label>
<caption>
<p>Video&#x2014;Motion based <bold>SD1</bold> and&#x20;<bold>SD2.</bold>
</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S3</label>
<caption>
<p>Video&#x2014;Tolerances for <bold>SD1</bold> and <bold>SD2</bold> based on the hydrodynamic model with or without&#x20;wind.</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S4</label>
<caption>
<p>Video&#x2014;Cartoceptive geometry relation for <bold>SD2</bold> based on <monospace>navbounds</monospace> map features in&#x20;<bold>MD0.</bold>
</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S5</label>
<caption>
<p>Video&#x2014;Shortest distance, based on the cartoceptive geometry relation with <bold>SD0</bold>, i.e.,&#x20;its <monospace>Intersection</monospace> with <monospace>navbounds</monospace> map features in&#x20;<bold>MD0.</bold>
</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S6</label>
<caption>
<p>Video&#x2014;Lane shift primitive, in compliance with COLREG head-on vessel operations.</p>
</caption>
</supplementary-material>
<supplementary-material>
<label>Supplementary Video S7</label>
<caption>
<p>Video&#x2014;Combination of previous experiments, with additional sensor subsystem relations.</p>
</caption>
</supplementary-material>
<supplementary-material xlink:href="Video3.MP4" id="SM1" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video8.MP4" id="SM2" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video4.MP4" id="SM3" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video7.MP4" id="SM4" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video2.MP4" id="SM5" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video5.MP4" id="SM6" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video1.MP4" id="SM7" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video6.MP4" id="SM8" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<sec id="s12">
<title>Abbreviations</title>
<p>IW, Inland Waterway(s); IWT, Inland Waterway Transport; SD, Ship Domain; MD, Map Domain; (I)ENC, (Inland) Electronic Navigational Charts.</p>
</sec>
<fn-group>
<fn id="fn1">
<label>1</label>
<p>It is important to note here that a failure to take early action&#x2014;i.e.,&#x20;without malintent&#x2014;is merely a consequence of the ability to take early action, hence, it fully relies on&#x20;SA.</p>
</fn>
<fn id="fn2">
<label>2</label>
<p>Although the COLREGs, i.e.,&#x20;regulations for decision making, have been designed to determine vessel manoeuvres without requiring any communication between the vessels, it does demand the use of all available means to obtain optimum situational awareness (COLREGs rule 5) (<xref ref-type="bibr" rid="B38">Tsimplis and Papadas, 2019</xref>).</p>
</fn>
<fn id="fn3">
<label>3</label>
<p>A higher-order relation is a relation about a relation, that is, a relation that has other relations as its entities, or &#x201c;arguments.&#x201d;</p>
</fn>
<fn id="fn4">
<label>4</label>
<p>The words symbolic and descriptive, both referring to the model representation, are used interchangeably throughout this&#x20;work.</p>
</fn>
<fn id="fn5">
<label>5</label>
<p>An optional, third, meta meta model ID (MMID) can be used: a set of unique identifiers that each point to a meta meta model of this model, needed to transform the model to another formal representation, while keeping the meaning of the model unchanged. However, this is <italic>not</italic> included in this&#x20;work.</p>
</fn>
<fn id="fn6">
<label>6</label>
<p>the GeoJSON format contains the following geometric objects: &#x201c;Point&#x201d;, &#x201c;MultiPoint&#x201d;, &#x201c;LineString&#x201d;, &#x201c;MultiLineString&#x201d;, &#x201c;Polygon&#x201d;, &#x201c;MultiPolygon&#x201d;, and &#x201c;GeometryCollection&#x201d;.</p>
</fn>
<fn id="fn7">
<label>7</label>
<p>In this work, a mereo-logical representation refers to the simplest interpretation (or also the &#x201c;highest&#x201d; level of abstraction). A mereo-logical model just represents the parts that make up the world, without any additional structure or behaviour. Hence, the meta model of a mereo-logical model is trivial: a list of acceptable keywords.</p>
</fn>
<fn id="fn8">
<label>8</label>
<p>Various standardised data formats can be used to formally describe elements, e.g., the <ext-link ext-link-type="uri" xlink:href="https://json-schema.org/draft/2020-12/json-schema-core.html">JSON</ext-link> or <ext-link ext-link-type="uri" xlink:href="https://www.w3.org/XML/Schema">XML</ext-link> schemas. For this text, some minor adjustments to the JSON syntax are applied to increase readability.</p>
</fn>
<fn id="fn9">
<label>9</label>
<p>The experiments in this work use scaling factors inspired by wind-modelling in <xref ref-type="bibr" rid="B10">Fossen (1994)</xref>, i.e., corresponding to the vessel&#x0027;s surface geometries above the waterline, i.e.,&#x20;1.12 (1&#x2b;<italic>h</italic>
<sub>
<italic>v</italic>,<italic>aw</italic>
</sub> &#xd7; <italic>l</italic>
<sub>
<italic>v</italic>
</sub>) in the longitudinal direction, and 1.96 (1&#x2b;<italic>h</italic>
<sub>
<italic>v</italic>,<italic>aw</italic>
</sub> &#xd7; <italic>w</italic>
<sub>
<italic>v</italic>
</sub>) in the and transversal direction.</p>
</fn>
<fn id="fn10">
<label>10</label>
<p>Situation-specific policies include issuing a warning whenever a vessel&#x2019;s <bold>SD0</bold> threatens to exceed the lane boundaries (&#x2b; tolerance). If no correction occurs, and the manoeuvre is still ongoing, termination of the manoeuvre is required, and some &#x201c;safe fallback mode&#x201d; could be enabled. As seen in Result 4.6, part of this policy is visualised on the map by changing the colour of the&#x20;lanes.</p>
</fn>
<fn id="fn11">
<label>11</label>
<p>Object detection <italic>via</italic> the perception sensor subsystem is not simulated, hence, dynamic updates of the lane geometry are not part of the experiments discussed in this&#x20;work.</p>
</fn>
<fn id="fn12">
<label>12</label>
<p>Composing an SVG map from various lower-level models <italic>can</italic> involve model-to-model transformations, e.g., between the JSON-LD standard and the SVG standard.</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Arg&#xfc;elles</surname>
<given-names>R. P.</given-names>
</name>
<name>
<surname>Garc&#xed;a Maza</surname>
<given-names>J.&#x20;A.</given-names>
</name>
<name>
<surname>Mart&#xed;n</surname>
<given-names>F. M.</given-names>
</name>
<name>
<surname>Bartolom&#xe9;</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Ship-to-ship Dialogues and Agreements for Collision Risk Reduction</article-title>. <source>J.&#x20;Navigation</source>, <fpage>1</fpage>&#x2013;<lpage>18</lpage>. </citation>
</ref>
<ref id="B2">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>AUTOBarge</surname>
</name>
</person-group> (<year>2021</year>). <source>The Autobarge Project</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://etn-autobarge.eu/project/">https://etn-autobarge.eu/project/</ext-link>
</comment>. </citation>
</ref>
<ref id="B3">
<citation citation-type="book">
<collab>AVATAR</collab> (<year>2021</year>). <source>The Avatar Project by the North Sea Region Programme 2014&#x2013;2020</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://northsearegion.eu/avatar/.%20AVATAR%20is%20a%20project%20co-funded">https://northsearegion.eu/avatar/. AVATAR is a project co-funded</ext-link>
</comment>. </citation>
</ref>
<ref id="B46">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bakillah</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Liang</surname>
<given-names>S. H. L.</given-names>
</name>
<name>
<surname>Zipf</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Mostafavi</surname>
<given-names>M. A.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>A Dynamic and Context-Aware Semantic Mediation Service for Discovering and Fusion of Heterogeneous Sensor Data</article-title>. <source>J. Spat. Informat. Sci.</source> <volume>6</volume>, <fpage>155</fpage>&#x2013;<lpage>185</lpage>. <pub-id pub-id-type="doi">10.5311/JOSIS.2013.6.104</pub-id> </citation>
</ref>
<ref id="B4">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Blanke</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>1981</year>). <source>Ship Propulsion Losses Related to Automatic Steering and Prime Mover Control</source>. <comment>Ph.D. thesis</comment>. <publisher-loc>Oxford</publisher-loc>: <publisher-name>Technical University of Denmark</publisher-name>. <isbn>87-87950-14-6</isbn>. </citation>
</ref>
<ref id="B5">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Bruyninckx</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2021</year>). <source>Design of Complicated Systems (Online Book). Work in Progress</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://robmosys.pages.gitlab.kuleuven.be/">https://robmosys.pages.gitlab.kuleuven.be/</ext-link>
</comment>. </citation>
</ref>
<ref id="B6">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Essen</surname>
<given-names>H. V.</given-names>
</name>
<name>
<surname>Schroten</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Otten</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Sutter</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Schreyer</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zandonella</surname>
<given-names>R.</given-names>
</name>
<etal/>
</person-group> (<year>2016</year>). <source>Developping a Cost Calculation Model for Inland Navigation</source>. <publisher-loc>Amsterdam</publisher-loc>: <publisher-name>Research in Transportation Business &#x26; Management</publisher-name>, <fpage>64</fpage>&#x2013;<lpage>74</lpage>. </citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<collab>European Commission</collab> (<year>2019</year>). <article-title>Mobility and Transport: Promotion of Inland Waterways</article-title>. <comment>Tech. rep.</comment> </citation>
</ref>
<ref id="B8">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Fedyaevsky</surname>
<given-names>K. K.</given-names>
</name>
<name>
<surname>Sobolev</surname>
<given-names>G. V.</given-names>
</name>
</person-group> (<year>1964</year>). <source>Control and Stability in Ship Design</source>. <publisher-loc>Leningrad</publisher-loc>: <publisher-name>State Union Shipbuilding Industry Publishing House</publisher-name>. </citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fossen</surname>
<given-names>T. I.</given-names>
</name>
<name>
<surname>Fjellstad</surname>
<given-names>O.-E.</given-names>
</name>
</person-group> (<year>1995</year>). <article-title>Nonlinear Modelling of marine Vehicles in 6 Degrees of freedom</article-title>. <source>Math. Model. Syst.</source> <pub-id pub-id-type="doi">10.1080/13873959508837004</pub-id> </citation>
</ref>
<ref id="B10">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Fossen</surname>
<given-names>T. I.</given-names>
</name>
</person-group> (<year>1994</year>). <source>Guidance and Control of Ocean Vehicles</source>. <publisher-name>John Wiley &#x26; Sons</publisher-name>. </citation>
</ref>
<ref id="B11">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Fossen</surname>
<given-names>T. I.</given-names>
</name>
</person-group> (<year>2011</year>). <source>Handbook of Marine Craft Hydrodynamics and Motion Control</source>. <publisher-loc>Chichester, UK</publisher-loc>: <publisher-name>John Wiley &#x26; Sons, Ltd</publisher-name>. </citation>
</ref>
<ref id="B12">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Fossen</surname>
<given-names>T. I.</given-names>
</name>
</person-group> (<year>1991</year>). <source>Nonlinear Modeling and Control of Underwater Vehicles</source>. <publisher-loc>phdthesis</publisher-loc>: <publisher-name>Norwegian Institute of Technology</publisher-name>. </citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fujii</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Tanaka</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>1971</year>). <article-title>Traffic Capacity</article-title>. <source>J.&#x20;Navigation</source> <volume>24</volume>, <fpage>543</fpage>&#x2013;<lpage>552</lpage>. <pub-id pub-id-type="doi">10.1017/s0373463300022384</pub-id> </citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hansen</surname>
<given-names>M. G.</given-names>
</name>
<name>
<surname>Jensen</surname>
<given-names>T. K.</given-names>
</name>
<name>
<surname>Lehn-Schi&#xf8;ler</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Melchild</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Rasmussen</surname>
<given-names>F. M.</given-names>
</name>
<name>
<surname>Ennemark</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>Empirical Ship Domain Based on Ais Data</article-title>. <source>J.&#x20;Navigation</source> <volume>66</volume>, <fpage>931</fpage>&#x2013;<lpage>940</lpage>. <pub-id pub-id-type="doi">10.1017/s0373463313000489</pub-id> </citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Huang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Negenborn</surname>
<given-names>R. R.</given-names>
</name>
<name>
<surname>van Gelder</surname>
<given-names>P. H. A. J.&#x20;M.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Ship Collision Avoidance Methods: State-Of-The-Art</article-title>. <source>Saf. Sci.</source> <volume>121</volume>, <fpage>451</fpage>&#x2013;<lpage>473</lpage>. <pub-id pub-id-type="doi">10.1016/j.ssci.2019.09.018</pub-id> </citation>
</ref>
<ref id="B16">
<citation citation-type="book">
<collab>IMO</collab> (<year>2001</year>). <source>Resolution A.918(22)</source>. <comment>Tech. rep.</comment> in <source>Standard Marine Communication Phrases</source> (<publisher-name>International Maritime Organization</publisher-name>). </citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Isherwood</surname>
<given-names>R. M.</given-names>
</name>
</person-group> (<year>1972</year>). <article-title>Wind Resistance of Merchant Ships</article-title>. <source>RINA Transcripts</source> <volume>115</volume>, <fpage>327</fpage>&#x2013;<lpage>338</lpage>. </citation>
</ref>
<ref id="B18">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Iw-Net</surname>
</name>
</person-group> (<year>2021</year>). <article-title>The Iw-Net Project from the European Union&#x2019;s Horizon 2020 Research and Innovation Programme under grant Agreement No 861377</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.isl.org/en/projects/iw-net.%20This%20project%20has%20received%20funding">https://www.isl.org/en/projects/iw-net. This project has received funding</ext-link>
</comment>. </citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kallas</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Transport 2050: Comission Outlines Ambitious Plan to Increase Mobility and Reduce Emmisions</article-title>. <comment>Tech. Rep. March</comment>. </citation>
</ref>
<ref id="B20">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Kotz&#xe9;</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Junaid</surname>
<given-names>A. B.</given-names>
</name>
<name>
<surname>Afzal</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Slaets</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Use of Uncertainty Zones for Vessel Operation in Inland Waterways</article-title>. <source>J.&#x20;Phys. Conf. Ser.</source> (<publisher-loc>Bristol</publisher-loc>: <publisher-name>IOP Publishing</publisher-name>), <volume>Vol. 1357</volume>, <fpage>012031</fpage>. <pub-id pub-id-type="doi">10.1088/1742-6596/1357/1/012031</pub-id> </citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Landsiedel</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Rieser</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Walter</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wollherr</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>A Review of Spatial Reasoning and Interaction for Real-World Robotics</article-title>. <source>Adv. Robotics</source> <volume>31</volume>, <fpage>222</fpage>&#x2013;<lpage>242</lpage>. <pub-id pub-id-type="doi">10.1080/01691864.2016.1277554</pub-id> </citation>
</ref>
<ref id="B22">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Lang</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Friedmann</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Haselich</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Paulus</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Definition of Semantic Maps for Outdoor Robotic Tasks</article-title>. <conf-name>2014 IEEE International Conference on Robotics and Biomimetics (ROBIO 2014)</conf-name>. <publisher-name>IEEE</publisher-name>, <fpage>2547</fpage>&#x2013;<lpage>2552</lpage>. <pub-id pub-id-type="doi">10.1109/robio.2014.7090724</pub-id> </citation>
</ref>
<ref id="B23">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Lewis</surname>
<given-names>E. V.</given-names>
</name>
</person-group> (<year>1989</year>). <source>Principles of Naval Architecture</source>. in <source>Resistance, Propulsion and Vibration</source>. <edition>2nd rev. ed. edn</edition> (<publisher-loc>Jersey City, NJ</publisher-loc>: <publisher-name>Society of Naval Architects and Marine Engineers</publisher-name>), <volume>Vol. 2</volume>. </citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>R. W.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Dynamic Ship Domain Models for Capacity Analysis of Restricted Water Channels</article-title>. <source>J.&#x20;Navigation</source> <volume>69</volume>, <fpage>481</fpage>&#x2013;<lpage>503</lpage>. <pub-id pub-id-type="doi">10.1017/s0373463315000764</pub-id> </citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>N&#xfc;chter</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Hertzberg</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>Towards Semantic Maps for mobile Robots</article-title>. <source>Robotics Autonomous Syst.</source> <volume>56</volume>, <fpage>915</fpage>&#x2013;<lpage>926</lpage>. </citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Afzal</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Vanierschot</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Boonen</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Slaets</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2020a</year>). <article-title>Model Structures and Identification for Fully Embedded Thrusters: 360-Degrees-Steerable Steering-Grid and Four-Channel Thrusters</article-title>. <source>Jmse</source> <volume>8</volume>, <fpage>220</fpage>. <pub-id pub-id-type="doi">10.3390/jmse8030220</pub-id> </citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Kotz&#xe9;</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Afzal</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Catoor</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Van Baelen</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Geenen</surname>
<given-names>P.</given-names>
</name>
<etal/>
</person-group> (<year>2020b</year>). <article-title>An Unmanned Inland Cargo Vessel: Design, Build, and Experiments</article-title>. <source>Ocean Eng.</source> <volume>201</volume>, <fpage>107056</fpage>. <pub-id pub-id-type="doi">10.1016/j.oceaneng.2020.107056</pub-id> </citation>
</ref>
<ref id="B28">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2021</year>). <source>Towards Unmanned Inland Shipping</source>. <comment>phdthesis</comment>, <publisher-loc>KU Leuven</publisher-loc>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://lirias.kuleuven.be/3391744?limo=0">https://lirias.kuleuven.be/3391744?limo&#x3d;0</ext-link>
</comment>. </citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Van Baelen</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Yayla</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Catoor</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Afzal</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Christofakis</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2020c</year>). <article-title>Decoupled Hydrodynamic Models and Their Outdoor Identification for an Unmanned Inland Cargo Vessel with Embedded Fully Rotatable Thrusters</article-title>. <source>Jmse</source> <volume>8</volume>, <fpage>889</fpage>. <pub-id pub-id-type="doi">10.3390/jmse8110889</pub-id> </citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Peeters</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Yayla</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Catoor</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Van Baelen</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Afzal</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Christofakis</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2020d</year>). <article-title>An Inland Shore Control centre for Monitoring or Controlling Unmanned Inland Cargo Vessels</article-title>. <source>J.&#x20;Mar. Sci. Eng.</source> <volume>8</volume>. <pub-id pub-id-type="doi">10.3390/jmse8100758</pub-id> </citation>
</ref>
<ref id="B31">
<citation citation-type="book">
<collab>SINTEF</collab> (<year>2020</year>). <source>The hull-to-hull (H2h) Project from the European GNSS Agency under the European Union&#x2019;s Horizon 2020 Research and Innovation Programme grant Agreement No 775998</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.sintef.no/projectweb/hull-to-hull/.%20This%20project%20has%20received%20funding">https://www.sintef.no/projectweb/hull-to-hull/. This project has received funding</ext-link>
</comment>. </citation>
</ref>
<ref id="B32">
<citation citation-type="book">
<collab>SNAME</collab> (<year>1950</year>). &#x201c;<article-title>Nomenclature for Treating the Motion of a Submerged Body through a Fluid</article-title>,&#x201d;. <source>Technical and Research Bulletin</source> (<publisher-loc>Jersey City, NJ</publisher-loc>: <publisher-name>The Society of Naval Architects and Marine Engineers</publisher-name>), <fpage>1</fpage>&#x2013;<lpage>5</lpage>. <source>Tech. Rep.</source> </citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sotiralis</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Ventikos</surname>
<given-names>N. P.</given-names>
</name>
<name>
<surname>Hamann</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Golyshev</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Teixeira</surname>
<given-names>A. P.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Incorporation of Human Factors into Ship Collision Risk Models Focusing on Human Centred Design Aspects</article-title>. <source>Reliability Eng. Syst. Saf.</source> <volume>156</volume>, <fpage>210</fpage>&#x2013;<lpage>227</lpage>. <pub-id pub-id-type="doi">10.1016/j.ress.2016.08.007</pub-id> </citation>
</ref>
<ref id="B34">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Sys</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Vanelslander</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2011</year>). <source>Future Challenges for Inland Navigation</source>. <comment>No. 978&#x20;90 5487&#x20;845 4 in (UPA)</comment>. </citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Szlapczynski</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Szlapczynska</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Review of Ship Safety Domains: Models and Applications</article-title>. <source>Ocean Eng.</source> <volume>145</volume>, <fpage>277</fpage>&#x2013;<lpage>289</lpage>. <pub-id pub-id-type="doi">10.1016/j.oceaneng.2017.09.020</pub-id> </citation>
</ref>
<ref id="B36">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Tavasszy</surname>
<given-names>L. A.</given-names>
</name>
<name>
<surname>Behdani</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Konings</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Intermodality and Synchromodality</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2592888">https://papers.ssrn.com/sol3/papers.cfm?abstract_id&#x3d;2592888</ext-link>
</comment>. </citation>
</ref>
<ref id="B37">
<citation citation-type="web">
<collab>The European Commission</collab> (<year>2019</year>). <article-title>Watertruck&#x2b;</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="http://www.watertruckplus.eu/">http://www.watertruckplus.eu/</ext-link>
</comment>. </citation>
</ref>
<ref id="B38">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tsimplis</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Papadas</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Information Technology in Navigation: Problems in Legal Implementation and Liability</article-title>. <source>J.&#x20;Navigation</source> <volume>72</volume>, <fpage>833</fpage>&#x2013;<lpage>849</lpage>. <pub-id pub-id-type="doi">10.1017/s0373463318001030</pub-id> </citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tsou</surname>
<given-names>M.-C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Multi-target Collision Avoidance Route Planning under an Ecdis Framework</article-title>. <source>Ocean Eng.</source> <volume>121</volume>, <fpage>268</fpage>&#x2013;<lpage>278</lpage>. <pub-id pub-id-type="doi">10.1016/j.oceaneng.2016.05.040</pub-id> </citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ung</surname>
<given-names>S.-T.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Evaluation of Human Error Contribution to Oil Tanker Collision Using Fault Tree Analysis and Modified Fuzzy Bayesian Network Based Cream</article-title>. <source>Ocean Eng.</source> <volume>179</volume>, <fpage>159</fpage>&#x2013;<lpage>172</lpage>. <pub-id pub-id-type="doi">10.1016/j.oceaneng.2019.03.031</pub-id> </citation>
</ref>
<ref id="B41">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>van Essen</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Sustainable Transport Infrastructure Charging and Internalisation of Transport Externalities</article-title>. <comment>Tech. Rep. December</comment>. </citation>
</ref>
<ref id="B42">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Verberght</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2019</year>). <source>INN-IN: Innovative Inland Navigation. Tech. Rep.</source> <publisher-name>University of Antwerp, Department of Transport and Regional Economics</publisher-name>. </citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chin</surname>
<given-names>H.-C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>An Empirically-Calibrated Ship Domain as a Safety Criterion for Navigation in Confined Waters</article-title>. <source>J.&#x20;Navigation</source> <volume>69</volume>, <fpage>257</fpage>&#x2013;<lpage>276</lpage>. <pub-id pub-id-type="doi">10.1017/s0373463315000533</pub-id> </citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Weng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Chai</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Fu</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Investigation of Occurrence Likelihood of Human Errors in Shipping Operations</article-title>. <source>Ocean Eng.</source> <volume>182</volume>, <fpage>28</fpage>&#x2013;<lpage>37</lpage>. <pub-id pub-id-type="doi">10.1016/j.oceaneng.2019.04.083</pub-id> </citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yildirim</surname>
<given-names>U.</given-names>
</name>
<name>
<surname>Basar</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Ugurlu</surname>
<given-names>O.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Assessment of Collisions and Grounding Accidents with Human Factors Analysis and Classification System (Hfacs) and Statistical Methods</article-title>. <source>Saf. Sci.</source> <volume>119</volume>, <fpage>412</fpage>&#x2013;<lpage>425</lpage>. </citation>
</ref>
</ref-list>
<app-group>
<app id="app1">
<title>Appendices</title>
<sec>
<title>A Hydrodynamic motion model Cogge</title>
<sec>
<title>A.1 Full components form</title>
<p>
<disp-formula id="e10">
<mml:math id="m14">
<mml:mtable class="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>m</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>r</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
<mml:mi>u</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>m</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>r</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>u</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mi>v</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mi>u</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mi>v</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mi>r</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:msub>
<mml:mi>u</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>u</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">&#x7c;</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">&#x7c;</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold">N</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xfe38;</mml:mo>
</mml:munder>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold">L</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munder>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>u</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(10)</label>
</disp-formula>With:<disp-formula id="e11">
<mml:math id="m15">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#xd7;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#xd7;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2026;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2026;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mo>&#x2026;</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>.</mml:mo>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
</sec>
<sec>
<title>A.2 Identified hydrodynamic coefficients</title>
<p>As mentioned in <xref ref-type="sec" rid="s3-1-3">Section 3.1.3</xref>, the hydrodynamic model of <italic>the Cogge</italic> has threshold speed values (see Listing 11), which trigger the configuration of the damping matrices. For the higher velocity regime of <italic>the Cogge</italic>, meaning, <inline-formula id="inf5">
<mml:math id="m16">
<mml:mi>u</mml:mi>
<mml:mo>&#x3e;</mml:mo>
<mml:mn>0.5</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mtext>m</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mtext>s</mml:mtext>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>, and <inline-formula id="inf6">
<mml:math id="m17">
<mml:mi>v</mml:mi>
<mml:mo>&#x3e;</mml:mo>
<mml:mn>0.15</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mtext>m</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mtext>s</mml:mtext>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>, the value of the coefficients for <bold>M</bold>
<sub>
<italic>RB</italic>
</sub>, <bold>C</bold>
<sub>
<italic>RB</italic>
</sub>, <bold>M</bold>
<sub>
<italic>A</italic>
</sub>, <bold>C</bold>
<sub>
<italic>A</italic>
</sub>, <bold>D</bold>
<sub>
<italic>N</italic>
</sub>, and <bold>D</bold>
<sub>
<italic>L</italic>
</sub> can be found in the Listing 9. The diagonal terms (except <italic>N</italic>
<sub>&#x7c;<italic>v</italic>&#x7c;<italic>r</italic>
</sub>&#x7c;<italic>v</italic>&#x7c;) of these matrices are based on the <inline-formula id="inf7">
<mml:math id="m18">
<mml:mi mathvariant="script">M</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">e</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf8">
<mml:math id="m19">
<mml:mi mathvariant="script">M</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">e</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf9">
<mml:math id="m20">
<mml:mi mathvariant="script">M</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">r</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> model structures, identified and discussed in <xref ref-type="bibr" rid="B29">Peeters et al., (2020c)</xref>. The remaining off-diagonal terms were manually tuned with reference to a port and starboard side turning circle.</p>
<p>For the lower speed regime, <bold>D</bold>(<bold>
<italic>&#x3bd;</italic>
</bold>) switches from <bold>D</bold>
<sub>
<bold>N</bold>
</sub> &#x2b; <bold>D</bold>
<sub>
<bold>L</bold>
</sub> to <bold>D</bold>
<sub>
<bold>L</bold>
</sub>. Accordingly, all the terms of <bold>D</bold>
<sub>
<bold>N</bold>
</sub> become zero. The terms of <bold>D</bold>
<sub>
<bold>L</bold>
</sub> change to <italic>X</italic>
<sub>
<italic>u</italic>
</sub> &#x3d; 39.3, <italic>Y</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 226.31, based on <inline-formula id="inf10">
<mml:math id="m21">
<mml:mi mathvariant="script">M</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf11">
<mml:math id="m22">
<mml:mi mathvariant="script">M</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">f</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> from <xref ref-type="bibr" rid="B29">Peeters et al., (2020c)</xref>, note that the yaw motion already had a linear damping with respect to the yaw-rate.</p>
<p>As mentioned in <xref ref-type="sec" rid="s2-4">Section 2.4</xref>, bollard pull thrust models suffice in the context of this work. Therefore, two look-up-table actuation models were implemented based on the bollard pull data discussed in <xref ref-type="bibr" rid="B26">Peeters et al., (2020a)</xref>. Note that for the stern thruster, the data were cleaned accordingly: constant propeller rate for each angular data set, and the assumption that the thrust force at zero degrees control angle is aligned with this angle.</p>
<p>Hydrodynamic coefficients used in this work are shown in Listing 19.</p>
<p>
<bold>Listing 19:</bold> Hydrodynamical coefficients</p>
<p>
<inline-graphic xlink:href="frobt-08-739062-g042.tif"/>
</p>
</sec>
</sec>
</app>
</app-group>
</back>
</article>