WO2024049109A1 - 접안 경로 생성 방법 및 그 장치 - Google Patents
접안 경로 생성 방법 및 그 장치 Download PDFInfo
- Publication number
- WO2024049109A1 WO2024049109A1 PCT/KR2023/012570 KR2023012570W WO2024049109A1 WO 2024049109 A1 WO2024049109 A1 WO 2024049109A1 KR 2023012570 W KR2023012570 W KR 2023012570W WO 2024049109 A1 WO2024049109 A1 WO 2024049109A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- berthing
- node
- path
- expected
- transit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 150
- 230000006870 function Effects 0.000 claims description 73
- 238000010586 diagram Methods 0.000 description 31
- 238000004891 communication Methods 0.000 description 18
- 238000013528 artificial neural network Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 4
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 210000000225 synapse Anatomy 0.000 description 2
- 241000380131 Ammophila arenaria Species 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B49/00—Arrangements of nautical instruments or navigational aids
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B79/00—Monitoring properties or operating parameters of vessels in operation
- B63B79/40—Monitoring properties or operating parameters of vessels in operation for controlling the operation of vessels, e.g. monitoring their speed, routing or maintenance schedules
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G3/00—Traffic control systems for marine craft
Definitions
- the present invention relates to a method and device for generating a berthing path for a ship, and more specifically, to a method and device for generating a berthing path using different methods for determining transit nodes depending on whether a ship is located within a reference distance from a berthing position.
- One object of the present invention is to provide a berthing path generation method and device that uses different transit node determination methods depending on whether the vessel is located within a reference distance from the berthing position.
- Another object of the present invention is to provide an autonomous navigation method and device that performs route following so that a ship can operate along a generated route.
- a method for generating a berthing path for a ship comprising: obtaining an obstacle map including a plurality of nodes corresponding to a position at sea; selecting a current node corresponding to the current location of the vessel on the obstacle map and a berthing node corresponding to a berthing position; determining a current bow direction of the vessel at the current node and a berthing bow direction at the berthing node; determining a reference distance by considering at least one of the length of the vessel, the width of the vessel, the weight of the vessel, the steering performance of the vessel, and the length of the berthing facility; Determining a plurality of transit nodes from the current node to the berth node on the obstacle map and an expected bow direction to be assigned to the transit node using the reference distance and a predetermined expected berthing path cost function - the transit node corresponds to at least one of the unit nodes -; and generating the berthing path using the determined
- an apparatus for generating a berthing path for a ship includes: a memory storing information about the ship, information about the port, and a method of determining a transit node; and at least one processor, wherein the processor acquires an obstacle map including a plurality of nodes corresponding to a position on the sea, and a current node and berthing position corresponding to the current position of the vessel on the obstacle map.
- a berthing node corresponding to, determine the current bow direction of the vessel at the current node and the berthing bow direction at the berthing node, the length of the vessel, the width of the vessel, the weight of the vessel, the A reference distance is determined in consideration of at least one of steering performance and the length of a berthing facility, and a plurality of stops are made from the current node to the berthing node on the obstacle map using the reference distance and a predetermined expected berthing path cost function.
- Determine nodes and an expected heading direction to be assigned to the transit node - the transit node corresponds to at least one of the unit nodes - and generate the berthing route using the determined plurality of transit nodes, and generate the berthing route in advance.
- the determined expected berthing path cost function is, for the vessel located at a position farther than the reference distance from the berthing position, regarding the first expected berthing path from the current node to the reference distance via node in consideration of the current bow direction.
- a berthing path generation device that is different from the second expected berthing path cost function may be provided.
- a berthing path generation method and device using different transit node determination methods depending on whether the vessel is located within a reference distance from the berthing position generates a path that minimizes collisions with berthing facilities within the reference distance. This can reduce the risk of collision between the ship and the berthing facility when docking.
- a ship can be controlled using an autonomous navigation method and device that performs path tracking so that the ship can navigate along a generated path.
- FIG. 1 is a diagram of an eyepiece guide system according to an embodiment.
- Figure 2 is a block diagram showing the configuration of a path creation device according to an embodiment.
- Figure 3 is a block diagram showing the configuration of a sensor module according to an embodiment.
- Figure 4 is a block diagram showing the configuration of an external server according to an embodiment.
- Figure 5 is a block diagram showing the configuration of a ship navigation device according to an embodiment.
- Figure 6 is a diagram showing an obstacle map according to an embodiment.
- Figure 7 is a diagram showing an obstacle map with points assigned according to one embodiment.
- Figure 8 is a diagram of an obstacle map including nodes corresponding to ships according to an embodiment.
- Figure 9 is a flowchart of a path creation method according to one embodiment.
- Figure 10 is a diagram showing an obstacle map according to an embodiment.
- FIG. 11 is a diagram showing a path generated by performing a conventional berthing path creation method on the obstacle map of FIG. 10.
- Figure 12 is a diagram for explaining a reference distance according to an embodiment.
- Figures 13, 14, and 15 are diagrams showing a berthing path and a passing node on an obstacle map according to an embodiment.
- Figure 16 is an example algorithm for obtaining a transit node and route based on the 3D A* algorithm.
- Figure 17 is a flowchart of a route creation method according to one embodiment.
- Figure 18 is a diagram for explaining a method of determining a reference distance passing node according to an embodiment.
- Figure 19 is a diagram showing each node and the generated berthing path on an obstacle map according to an embodiment.
- Figure 20 is a flowchart of a path tracking control method according to an embodiment.
- Figures 21 and 22 are diagrams for explaining path tracking control according to an embodiment.
- Figure 23 is a flowchart of a ship berthing method using path-following control according to an embodiment.
- a method for generating a berthing path for a ship comprising: obtaining an obstacle map including a plurality of nodes corresponding to a position at sea; selecting a current node corresponding to the current location of the vessel on the obstacle map and a berthing node corresponding to a berthing position; determining a current bow direction of the vessel at the current node and a berthing bow direction at the berthing node; determining a reference distance by considering at least one of the length of the vessel, the width of the vessel, the weight of the vessel, the steering performance of the vessel, and the length of the berthing facility; Determining a plurality of transit nodes from the current node to the berth node on the obstacle map and an expected bow direction to be assigned to the transit node using the reference distance and a predetermined expected berthing path cost function - the transit node corresponds to at least one of the unit nodes -; and generating the berthing path using the determined
- the reference distance passing node may be one of reference distance nodes corresponding to a location distant from the pier node by the reference distance.
- the reference distance passing node may be a node corresponding to a position that is separated from the berthing node by the reference distance in the berthing bow direction or in a direction opposite to the berthing bow direction among the reference distance nodes.
- the second expected berthing path cost function may include a term that considers the berthing bow direction.
- the term considering the berthing bow direction may be a term considering the difference between the expected bow direction to be assigned to a transit node on the second expected berthing path and the berthing bow direction.
- a score is given to each of the plurality of nodes according to the operational safety of the vessel, and the expected berthing path cost function may include a term that considers the score.
- Determining the plurality of transit nodes includes determining the current speed of the vessel; and calculating a maximum turning angle of the vessel based on the current speed, wherein the expected berthing path cost function may include a term that considers the maximum turning angle.
- an apparatus for generating a berthing path for a ship includes: a memory storing information about the ship, information about the port, and a method of determining a transit node; and at least one processor, wherein the processor acquires an obstacle map including a plurality of nodes corresponding to a position on the sea, and a current node and berthing position corresponding to the current position of the vessel on the obstacle map.
- a berthing node corresponding to, determine the current bow direction of the vessel at the current node and the berthing bow direction at the berthing node, the length of the vessel, the width of the vessel, the weight of the vessel, the A reference distance is determined in consideration of at least one of steering performance and the length of a berthing facility, and a plurality of stops are made from the current node to the berthing node on the obstacle map using the reference distance and a predetermined expected berthing path cost function.
- Determine nodes and an expected heading direction to be assigned to the transit node - the transit node corresponds to at least one of the unit nodes - and generate the berthing route using the determined plurality of transit nodes, and generate the berthing route in advance.
- the determined expected berthing path cost function is, for the vessel located at a position farther than the reference distance from the berthing position, regarding the first expected berthing path from the current node to the reference distance via node in consideration of the current bow direction.
- a berthing path generation device that is different from the second expected berthing path cost function may be provided.
- the processor determines the plurality of transit nodes, determines a current speed of the vessel, and calculates a maximum turning angle of the ship based on the current speed, and the expected berthing path cost function includes the maximum turning angle. It may include terms that take into account.
- FIG. 1 is a diagram of an eyepiece guide system 10 according to one embodiment.
- the berthing guide system 10 may generate a berthing path from the current location of the ship to the berthing location.
- An obstacle map may be obtained to create a berthing path, and a reference distance may be determined.
- the transit node from the current node on the obstacle map corresponding to the current location to the berthing node on the obstacle map corresponding to the berthing location can be determined, and the berthing path can be created using the current node, berthing node, and transit node. .
- a path can be created considering the bow direction of the ship when the ship docks at the berthing position. Meanwhile, a route can also be created considering the safety of navigation at sea. Additionally, the ship can be controlled so that it can navigate by following the created path.
- the berthing guide system 10 may include a path creation device 100, a sensor module 200, an external server 300, and a ship navigation device 400.
- the berthing guide system 10 does not have to include all of the above-described configurations, but may include some configurations selected from the path creation device 100, sensor module 200, external server 300, and ship navigation device 400. It may also be included. At this time, the number of components among the route creation device 100, sensor module 200, external server 300, and ship navigation device 400 included in the route guide system 10 may be one or more.
- the route guide system 10 may include one sensor module 200 or two or more sensor modules 200.
- the path creation device 100 may generate a path from the current location of the ship to the berthing location using data stored internally or data acquired from the outside.
- the route creation device 100 may determine a transit node from the current node of the ship to the berthing node on the obtained obstacle map using a transit node determination method.
- the route creation device 100 may generate a berthing route using the determined transit nodes.
- An obstacle map is a map that reflects the location of obstacles and object information. Specific details on how to create an obstacle map and a berthing path will be described later.
- the sensor module 200 can detect the state of the ship and surrounding environmental factors. Additionally, the path creation device 100 may detect various elements necessary for creating an ocular path and transmit them to the path creation device 100.
- the external server 300 stores at least one of information about the ship, information about the port, real-time ship status information, real-time port status information, and real-time environment data, and provides data required by the route creation device 100. can be transmitted. Specifically, if there is data that is not stored in the route creation device 100 but is necessary for creating a berthing route, or if real-time data is needed to create a berthing route even if the data is stored, the external server 300 generates the route. Data necessary for creating an ocular path can be transmitted to the device 100.
- the ship navigation device 400 may generate a control signal so that the ship can navigate along the berthing path generated by the path creation device 100.
- the generated control signal can be transmitted to the ship's driving device to control the ship's operation.
- the control signal may include a vessel speed control signal and/or a bow direction control signal.
- route creation device 100 the route creation device 100, sensor module 200, and ship navigation device 400 are located on the ship, and the external server 300 is located in the control center.
- the route creation device 100 may also be located in the control center.
- the path creation device 100 can remotely receive data from the sensor module 200 and remotely transmit data related to the generated path to the ship navigation device 400.
- both the route creation device 100 and the ship navigation device 400 may be located in a control center, and in this case, the ship navigation device 400 can remotely transmit the generated control signal to the ship.
- FIG. 2 is a block diagram showing the configuration of a route creation device 100 according to an embodiment.
- the route creation device 100 may include a memory 110, a processor 120, and a communication device 130.
- the memory 110 may store various processing programs, parameters for processing the programs, or data resulting from such processing.
- the memory 110 may store instructions for the operation of the processor 120, a method for determining a transit node, an algorithm for determining a transit node, etc., which will be described later.
- the memory 110 may further store information about ships and ports.
- Information about the ship may include the length of the ship, the width of the ship, the volume of the ship, the weight of the ship, the steering performance of the ship, the maximum steering angle of the ship, etc.
- Information about the port includes port maps, port structure, location of port facilities, port length, location of berthing facilities, length of berthing facilities, location of obstacles, attributes of obstacles, obstacle map, berthing location of vessel, berthing location. It may include the bow direction of the ship when the ship docks.
- Information about the ship and/or information about the port stored in the memory 110 may be data received from outside.
- the memory 110 is a non-volatile semiconductor memory, hard disk, flash memory, RAM (Random Access Memory), ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), or other tangible (tangible) non-volatile memory. It can be implemented as a recording medium, etc.
- the processor 120 may operate according to instructions stored in the memory 110, determine a transit node using a transit node determination method, and create a berthing path using a path creation method.
- various operations or steps of ocular path generation disclosed in embodiments of the present invention are interpreted as being performed by the processor 120 of the path creation device 100 or under the control of the processor 120, unless otherwise specified. It can be. The specific operating method of the processor 120 will be described later.
- the processor 120 includes a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a state machine, and a custom semiconductor (Application). It can be implemented with Specific Integrated Circuit (ASIC), Radio-Frequency Integrated Circuit (RFIC), and combinations thereof.
- CPU central processing unit
- GPU graphics processing unit
- DSP digital signal processor
- Application a custom semiconductor
- ASIC Specific Integrated Circuit
- RFIC Radio-Frequency Integrated Circuit
- the communication device 130 may transmit data and/or information to or receive data and/or information from the outside through wired and/or wireless communication.
- the communication device 130 can perform bi-directional or unidirectional communication.
- the communication device 130 may communicate with the sensor module 200, the external server 300, and/or the ship navigation device 400. Specifically, sensing data can be received from the sensor module 200 and various data necessary for path creation can be received from the external server 300. also. Information related to the determined transit node and/or information related to the generated route may be transmitted to the ship navigation device 400. It is not limited to this, and the communication device 130 may also communicate with other external devices.
- the path creation device 100 may be installed on a ship. It is not limited to this, and the path creation device 100 may be installed outside the ship. As an example, the route creation device 100 may be installed on a port control server, a terminal device of a person involved, an external server, etc.
- Figure 3 is a block diagram showing the configuration of the sensor module 200 according to one embodiment.
- the sensor module 200 can detect the state of the ship and surrounding environmental factors. More specifically, the sensor module 200 may perform position detection, bow direction detection, speed detection, steering angle detection, and/or weight detection for the vessel, and current detection, wind direction, and wind speed detection for the external environment. It can also be done. Objects that can be detected are not limited to the above-mentioned objects, and the sensor module 200 can also detect various elements necessary for creating an eyeing path.
- the sensor module 200 may include at least one sensor 210 and a communication device 220.
- the sensor 210 includes GPS (Global Positioning System) (211), Automatic Identification System (AIS) (212), ultrasonic detector (213), and inertial measurement unit (IMU) (214). , Inertial Navigation system (INS) (215), speedometer (216), camera (217), radar (218), LidDar (219), RTK-GPS (Real-Time Kinematic GPS) may be included. It is not limited to the above-described configuration, and the sensor 210 may include a sensor for detecting the state of the ship and/or a sensor for detecting the surrounding environment of the ship.
- GPS Global Positioning System
- AIS Automatic Identification System
- IMU inertial measurement unit
- INS Inertial Navigation system
- speedometer 216
- camera camera
- radar radar
- LidDar LidDar
- RTK-GPS Real-Time Kinematic GPS
- the communication device 220 of the sensor module 200 is capable of transmitting or receiving data and/or information from the outside through wired and/or wireless communication, and includes the route creation device 100, the external server 300, And/or data communication with the ship navigation device 400 may be performed.
- Figure 4 is a block diagram showing the configuration of an external server 300 according to an embodiment.
- the external server 300 stores at least one of information about the ship, information about the port, real-time ship status information, real-time port status information, and real-time environmental data, and is required to generate a route in the route creation device 100. Data can be transmitted to the route creation device 100.
- the external server 300 creates the route. Data necessary for creating an berthing path can be transmitted to the generating device 100.
- the external server 300 may determine the port where the ship is located using ship location data received from the ship, and transmit information about the determined port to the route creation device 100.
- the external server 300 may transmit data necessary for ship operation to the route creation device 100, the sensor module 200, and/or the ship navigation device 400 in addition to the data required for path creation.
- the external server 300 may be various types of servers, such as a control server and a cloud server.
- the external server 300 may include a memory 310, a processor 320, and a communication device 330.
- the memory 310 of the external server 300 may store information about at least one port.
- Information about the port is not limited to the port where the ship is currently located, and may include information about nearby ports or all ports. Since information on specific ports has been described above, redundant description will be omitted.
- Memory 310 may store information about at least one ship. Information about the ship may be data received from the ship, and since information about the specific ship has been described above, redundant description will be omitted.
- the memory 310 may store data received from the outside by the external server 310 in real time.
- the memory 310 may store at least one of real-time ship status information, real-time port status information, and real-time environmental data.
- the processor 320 of the external server 300 may determine the port in which the ship is located using data received from the ship. For example, when the external server 300 receives GPS location data from a ship, the processor 320 can use this to determine the port where the ship is located or nearby.
- the processor 320 may transmit an obstacle map corresponding to the determined port to the path creation device 100 and/or the ship navigation device 400.
- the processor 320 generates an obstacle map including a node corresponding to the current position of the ship and a node corresponding to the berthing position of the ship, or selects from a plurality of obstacle maps to route through the communication device 330, which will be described later. It may also be transmitted to the generation device 100 or the ship navigation device 400. Details related to the obstacle map will be described later.
- the external server 300 can receive weather information about the port from a separate Meteorological Administration server, and sends the received weather information, etc. to the route creation device 100 and/or Alternatively, it can be transmitted to the ship navigation device 400.
- the communication device 330 of the external server 300 is capable of transmitting or receiving data and/or information from the outside through wired and/or wireless communication, and includes the path creation device 100, the sensor module 200, And/or data communication with the ship navigation device 400 may be performed.
- the external server 300 may be placed outside the ship and may be located in a control center, navigation management center, etc.
- Figure 5 is a block diagram showing the configuration of a ship navigation device 400 according to an embodiment.
- the ship navigation device 400 may generate a control signal so that the ship can navigate along the berthing path or transit node received from the path creation device 100.
- the control signal may include a vessel speed control signal and/or a bow direction control signal.
- the ship speed control signal may be a signal that controls the rotational speed of the ship's propeller, a signal that controls the number of revolutions per unit time of the propeller, or an engine output control signal, but is not limited thereto, and controls the power unit of the ship. It may include various signals for:
- the bow direction control signal may be a signal for controlling the rudder of the ship or a signal for controlling the rudder (wheel, helm), but is not limited thereto and includes various signals for controlling the direction of movement of the ship. can do.
- a ship navigation device 400 may include a control signal generator 410 and a communication device 420.
- the control signal generator 410 may include a ship speed control signal generator 411 and/or a bow direction control signal generator 412.
- the ship speed control signal generator 411 may generate the above-described ship speed control signal to control the ship's propeller or engine.
- the bow direction control signal generator 412 may generate the above-described bow direction control signal to control the rudder or rudder of the ship. Specific details related to the control signal will be described later.
- the communication device 420 of the ship navigation device 400 may receive information related to a transit node or information related to a berthing path from the route creation device 100. Meanwhile, the ship navigation device 400 may receive the current state of the ship and surrounding environment information from the sensor module 200. Meanwhile, the ship navigation device 400 may receive weather information or navigation rules from the external server 300. Navigation rules refer to promises or laws that must be observed when operating a ship. As an example, the navigation rules may be the International Regulations for Preventing Collisions at Sea (COLREG). Meanwhile, the ship navigation device 400 may transmit the generated control signal to the ship to allow the ship to navigate along the generated berthing path.
- the ship navigation device 400 may transmit the generated control signal to the ship to allow the ship to navigate along the generated berthing path.
- FIG. 6 is a diagram illustrating an obstacle map 600 according to an embodiment.
- An obstacle map is a grid image or matrix data used in path creation, but is not limited to this and can be implemented in various forms.
- Figure 6 shows an obstacle map 600 implemented as a grid image.
- a route at sea may be created by considering the location of the node 630 corresponding to the obstacle on the obstacle map 600.
- the path creation device 100 may generate a berthing path using the obstacle map 600.
- the obstacle map 600 may include a plurality of nodes 610.
- Each node 610 may correspond to a location at sea and may also correspond to a location on the ground.
- each node 610 may represent each area of the grid image.
- 'one node' included in the obstacle map may correspond to 'one pixel' constituting the two-dimensional image, or 'one pixel' included in the obstacle map A 'node' may correspond to a plurality of adjacent pixels constituting the two-dimensional image.
- the matrix data includes a plurality of matrices, and some of the elements of each matrix correspond to position values (e.g., x coordinate, y coordinate, etc.) and the elements The remaining part may correspond to attribute values assigned to the corresponding location value.
- the node of the above-described obstacle map may correspond to one matrix included in the above-described matrix data, or the node of the obstacle map may correspond to a plurality of nodes corresponding to adjacent positions among the matrices included in the above-described matrix data. It can correspond to the matrices of .
- the obstacle map 600 may include nodes 620 corresponding to the sea and nodes 630 corresponding to obstacles.
- nodes 620 corresponding to the sea are displayed in bright colors
- nodes 630 corresponding to obstacles are displayed in dark colors.
- Nodes 630 corresponding to obstacles mean that the ship cannot navigate to the location corresponding to each node.
- the distribution of nodes 630 corresponding to obstacles may vary depending on the type of port facility and the type of berthing facility. Obstacles can refer to any object that can become an obstacle to the operation of a ship, such as terrain, buildings, islands, ports, ships, buoys, offshore structures, breakwaters, and people.
- attribute information may be provided to each node 610 of the obstacle map 600.
- Attribute information refers to information related to the object corresponding to each node, and there is no limitation as long as it is information about the object.
- Objects may include not only obstacles that may become obstacles during navigation of the above-mentioned vessel, but also areas where the vessel can operate, such as the sea. Accordingly, the nodes 620 corresponding to the above-described sea may be given information related to the sea, and the nodes 630 corresponding to the obstacle may be given information related to the obstacle. Meanwhile, nodes corresponding to land may be given land-related information.
- Attribute information is not limited to the presence or absence of an object, its type, location, direction of arrangement, direction of movement, and speed of movement, and may also include a score based on the presence or absence of obstacles and suitability for navigation.
- Figure 7 is a diagram illustrating an obstacle map 700 with points assigned according to an embodiment.
- the scored obstacle map 700 may also be referred to as a cost map.
- some or all of the plurality of nodes included in the obstacle map 700 may be given scores depending on the presence of obstacles and suitability for navigation.
- the score given to a specific node reflects the operational suitability of that specific node, which is determined based on several criteria. Accordingly, if the value of the score given to one node is different from the value of the score given to another node, it means that the operational suitability determined for each node is different.
- the operational suitability for a specific node can be determined by considering the probability that an obstacle exists at the specific node.
- the operational suitability for a specific node may be determined by considering the probability that the vessel will collide with an obstacle when the vessel is located at a specific node.
- the navigation suitability for a specific node may be determined by considering the distance that the specific node is away from the node corresponding to the obstacle.
- the operational suitability for a specific node can be determined by a combination of two or more of the three methods described above.
- a high navigation suitability for a specific node may mean that there is a low probability of a ship colliding with an obstacle when passing through the specific node.
- low operational suitability for a specific node may mean that there is a high probability of a ship colliding with an obstacle when passing through the specific node.
- a higher score means lower operational suitability
- a lower score means higher operational suitability
- the score may have a value between, but not limited to, 0-255.
- the above-mentioned range is shown as an example, and the score range is not limited to the above-mentioned range.
- a higher score means a higher probability of obstacle presence or unsuitability for navigation, and a lower score means suitability for navigation.
- the score given to a node may be determined according to the distance from the node corresponding to the obstacle. For example, a node that is farther away from a node corresponding to an obstacle may be given a lower score. In this case, different score determination criteria may be applied depending on the characteristics of the obstacle.
- a node nearby a node that corresponds to an obstacle that has characteristics that are difficult for ships to access has a relatively higher score than a node that corresponds to an obstacle that has characteristics that make it easy for ships to access, such as a buoy. may be granted.
- the score of a node nearby a node corresponding to an obstacle that has characteristics that are difficult for ships to access has a score that decreases as the distance from the node that corresponds to the obstacle increases. It may be smaller than the width of the scores in the neighboring nodes of .
- the node 710 corresponding to the obstacle is given the highest score and is therefore displayed darkest.
- the node (720) with the lowest score is shown in the brightest color
- the node (730) with the middle score is shown in a medium bright color
- the node 720 with a high score was displayed in a slightly bright color.
- FIG. 8 is a diagram of an obstacle map 800 including a node 810 corresponding to a ship according to an embodiment.
- the shape 820 of the ship is also reflected on the obstacle map 800 of FIG. 8, but the present invention is not limited thereto, and only the node 810 corresponding to the ship may be displayed on the obstacle map 800.
- the bow direction 830 of the ship located at a position on the sea corresponding to the node 810 may be assigned as attribute information to the node 810 corresponding to the ship on the obstacle map 800.
- Heading refers to the direction in which the bow of the ship is pointing.
- the bow direction may mean the direction in which the ship is intended to proceed, that is, the angle formed between the fore and aft line and the baseline (Meridian line) passing through the ship.
- a node 810 corresponding to a ship may be assigned a value of 270 degrees or 1.5 ⁇ in the bow direction 830.
- the bow direction may mean the angle formed between the set reference direction and the fore-end line.
- Obstacle maps can be created in a variety of ways.
- an obstacle map may be created from an electronic chart, or may be created using images such as satellite photos or aerial photos.
- image segmentation can be used to identify the sea area and obstacle area reflected in the image, and then create an obstacle map based on the identified area.
- an obstacle map can be created by placing nodes corresponding to the sea in the sea area and placing nodes corresponding to the obstacle in the obstacle area.
- an obstacle map can also be created using LiDAR point cloud data.
- a two-dimensional obstacle map can be created by projecting each point included in the LIDAR point cloud onto a reference plane.
- the reference plane may refer to a plane that can be assumed to be the average sea level.
- LiDAR sensors to detect the surrounding environment may be deployed on ships or port facilities.
- a plurality of LiDAR sensors can be placed and installed without limitation in their location.
- an obstacle map can also be created using camera images. Specifically, after performing image segmentation on an image, an obstacle map can be generated by converting the segmented image to a reference plane.
- the reference plane may refer to a plane that can be assumed to be the average sea level.
- cameras that capture images of the surrounding environment may be placed on ships or port facilities.
- a plurality of cameras can be arranged and can be installed without limitation in their positions.
- the method of generating an obstacle map is not limited to this, and various methods of generating a port map can be used.
- the obstacle map may be generated in the external server 300.
- the external server 300 may generate an obstacle map using electronic charts or image data.
- the external server 300 may generate an obstacle map using LiDAR point cloud data or captured images obtained by a port facility or ship.
- the obstacle map may be generated in the path creation device 100.
- the path creation device 100 may generate an obstacle map using data stored in the path creation device 100 or data received from outside.
- an obstacle map can be generated using LiDAR point cloud data acquired by the ship's LiDAR sensor or images captured by the ship's camera.
- the path creation device 100 may generate an obstacle map using LiDAR point cloud data or captured images acquired by a port facility or ship.
- Figure 9 is a flowchart of a path creation method according to one embodiment.
- the path creation method acquires an obstacle map (S910), selects the current node and the berthing node on the obstacle map (S920), and determines the current player at the current node.
- the obstacle map may be stored in a path creation device or may be acquired from an external source. Even if an obstacle map is stored in the route creation device, it can be newly acquired from an external source to update it.
- FIG. 10 is a diagram illustrating an obstacle map 1000 according to an embodiment.
- the current node 1020 may refer to a node corresponding to the current location of the ship on the obstacle map 1000.
- the current node 1020 may correspond to the starting position of the path.
- the shape of the ship is reflected in the position 1010 on the obstacle map 1000 corresponding to the current position of the ship, but the shape of the ship is reflected in the obstacle map. It may not be there.
- the path creation device can receive coordinates about the current location of the ship through a sensor module.
- the path creation device can select the current node on the obstacle map using the acquired information about the current location of the ship.
- the scale of the obstacle map and mapping of the obstacle map to the absolute coordinate system may be performed by the path creation device.
- the current location of the vessel may be determined based on the location of the center point of the vessel. It is not limited to this, and the current location of the ship may be determined based on any point on the ship, such as the bow or stern of the ship.
- the path creation device may obtain an obstacle map 1000 in which the current node 1020 is selected from an external source.
- the berthing node 1050 may refer to a node corresponding to the berthing position of a ship on the obstacle map 1000.
- the berthing node 1050 may correspond to the end location of the route.
- the shape of the ship is reflected in the position 1040 on the obstacle map 1000 corresponding to the berthing position of the ship, but the shape of the ship is reflected in the obstacle map. It may not be there.
- the berthing location of a ship refers to the position where the ship will berth in a berthing facility, and may be determined based on data about the port stored in a route creation device or data acquired from an external server.
- the berthing position of a ship can be determined based on the location of the center point of the ship when the ship docks at a berthing facility. It is not limited to this, and the berthing location of the ship may be determined based on any point on the ship, such as the bow or stern of the ship. Meanwhile, the reference position of the ship for selecting the current node and the reference position of the ship for selecting the berthing node may be set to be the same.
- the path creation device may obtain the obstacle map 1000 in which the ocular node 1050 is selected from the outside.
- the current bow direction 1030 of the ship may be assigned to the selected current node 1020.
- the current bow direction 1030 refers to the ship's bow direction at the current point in time, and can be determined using data obtained from a sensor module. Since the content related to assigning the player direction to the node on the obstacle map has been described above, redundant explanation will be omitted.
- the selected berthing node 1050 may be assigned a berthing bow direction 1060.
- the berthing bow direction 1060 refers to the bow direction when the ship docks at the berthing facility.
- the berthing bow direction 1060 can be determined based on information about the port stored in the route creation device or data acquired from outside.
- the berthing bow direction 1060 is the expected bow when the ship is located at the berthing position based on information about the port (shape of the port, etc.) on the obstacle map 1000. It can also be judged from the direction. Since the content related to assigning the player's direction to the node on the obstacle map has been described above, redundant explanation will be omitted.
- FIG. 11 is a diagram showing a path 1070 generated by performing a conventional berthing path creation method on the obstacle map 1000 of FIG. 10.
- the 3D A* algorithm can be used to generate a path
- Figure 11 shows the path 1070 from the current node 1020 to the berthing node 1050 created using only the existing 3D A* algorithm.
- the existing 3D A* algorithm generates the shortest path 1070 from the current node 1020 to the berthing node 1050, and the generated path 1070 includes a course change section 1080. There is a short stretch just before this berthing facility.
- the present invention seeks to create a berthing path using a reference distance that will be described later.
- FIG. 12 is a diagram for explaining a reference distance 1110 according to an embodiment.
- the standard distance (1110) is set when a ship docks at a berthing facility, and if the difference between the ship's bow direction and the berthing bow direction (1160) is large and it is difficult or dangerous for the ship to enter the berthing facility directly, the ship must turn 360 degrees. This refers to the distance considering enough room for re-entry.
- the path creation device When generating a berthing path considering the reference distance 1110, the path creation device generates a path that minimizes the change in the ship's bow direction within the reference distance range 1120 from the berthing node 1150, and follows the generated path.
- the risk of collision between the ship and berthing facilities can be reduced.
- the reference distance 1110 may be calculated by considering at least one of the length of the ship, the width of the ship, the weight of the ship, the steering performance of the ship, and the length 1170 of the berthing facility. For example, the longer the length of the ship, the wider the width of the ship, the heavier the weight of the ship, the lower the steering performance of the ship, and the longer the length 1170 of the berthing facility, the longer the reference distance 1110 may be. Meanwhile, the reference distance 1110 may be calculated by considering the turning radius of the ship. In this case, the longer the turning radius of the ship, the longer the reference distance 1110 may be. Meanwhile, the reference distance 1110 may be calculated by considering the combined length of twice the length 1170 of the berthing facility and five times the length of the ship.
- the reference distance 1110 can be calculated in a path creation device.
- the route creation device may calculate the reference distance 1110 using information about the ship and information about the port stored in the path creation device.
- information about the ship and/or information about the port may be data received from outside.
- the reference distance 1110 may be calculated from an external server.
- the external server may calculate the reference distance 1110 using information about the port stored in the external server and information about the ship received from the ship.
- the external server may transmit the calculated reference distance to the route creation device.
- the reference distance node 1130 which is a node corresponding to a position distant from the ocular node 1150 by the reference distance 1110, may be used to create an ocular path to be described later.
- Figures 13, 14, and 15 are diagrams showing a berthing path and a passing node on an obstacle map 1200 according to an embodiment.
- a path may mean the order of at least two or more nodes, and determining a path may mean determining the nodes and their order.
- a transit node may refer to a node on an obstacle map corresponding to a specific location of the vessel when the vessel moves from the current location to the berthing location along the route.
- the specific location may be the head, stern, or center point of the ship.
- the specific location is determined to be the same as the location used when determining the current node corresponding to the current location of the ship. For example, if the center point of the ship is used when determining the current node, it is desirable that the center point of the ship be also used when determining the transit node.
- the transit node determination method can be used to determine the transit node on the obstacle map.
- a method for determining a transit node according to an example may include a method for determining a first transit node and a method for determining a second transit node. A specific method of determining a transit node will be described with reference to FIG. 13.
- the method for determining the first transit node includes a plurality of first transit nodes 1240 from the current node 1210-1 to one of the reference distance nodes 1230 in consideration of the current bow direction 1220-1. -1) This is how to determine them.
- the first transit node 1240-1 may be determined by considering the maximum turning angle of the ship. Specifically, the first transit node 1240-1 immediately following the current node 1210-1 may be determined from among nodes within the maximum turning angle based on the current bow direction 1220-1.
- the method for determining the first transit node can also determine the expected heading direction at each of the determined first transit nodes 1240-1.
- the determined expected heading direction may be assigned to the corresponding transit node.
- the expected bow direction for a specific transit node means the expected bow direction of the vessel at the corresponding location, assuming that the vessel moving along the expected route is located at a location corresponding to the specific transit node. Since an expected player direction is assigned to each of the determined first transit nodes 1240-1, the subsequent first transit node immediately following the determined first transit node 1240-1 is the determined first transit node 1240-1. ) can be determined from among the nodes within the maximum turning angle based on the expected bow direction assigned to.
- the maximum turning angle of a ship may be a value proportional to the ship speed and inversely proportional to the turning radius.
- the turning radius can be set to five times the length of the vessel.
- the maximum turning angle, ship speed, and/or turning radius at each node may be calculated.
- the method for determining the first transit node may determine the first transit node 1240-1 by considering the scores given to each node of the obstacle map 1200 described above. Specifically, the method for determining the first transit node includes the score given to the subsequent first transit node when determining the current node 1210-1 or the subsequent first transit node immediately following the determined first transit node 1240-1. The first transit node can be determined by considering . As an example, among preliminary subsequent first transit nodes, the node with the lowest score assigned to the corresponding node may be determined as the subsequent first transit node.
- the method for determining the first transit node may determine the first transit node 1240-1 by considering the remaining distance to the berthing node 1280. Specifically, the method for determining the first transit node is, when determining the next first transit node immediately following the current node 1210-1 or the determined first transit node 1240-1, starting from the next first transit node, the berthing node The subsequent first transit node may be determined so that the remaining distance to 1280 becomes smaller.
- the first transit nodes 1240-1 are determined so that there is a distance between the first transit nodes 1240-1, but the first transit nodes 1240-1 are connected to the current node 1210-1. It may be determined continuously from to one of the reference distance nodes 1230.
- the reference distance node 1230 considered to determine the first transit node 1240-1 means at least one node corresponding to a location distant from the berthing node 1280 by the reference distance.
- the node determined as the first transit node 1240-1 among the reference distance nodes 1230 may be set as the reference distance transit node 1250-1.
- the bow direction when the ship is located at the reference distance transit node 1250-1 may be assigned to the reference distance transit node 1250-1 as the expected bow direction 1260-1.
- the first transit node determination method may determine the first transit nodes 1240-1 so that the second transit nodes 1270-1 can be determined according to the second transit node determination method to be described later. Specific details will be described later.
- the second transit node determination method considers the berthing bow direction 1290 and determines a plurality of second transit nodes 1270-1 from the reference distance transit node 1250-1 to the berthing node 1280. This is a way to decide.
- the second transit node 1270-1 may be determined by considering the maximum turning angle of the ship. Specifically, the second transit node (1270-1) immediately following the reference distance transit node (1250-1) makes the maximum turn based on the expected bow direction (1260-1) assigned to the reference distance transit node (1250-1). It can be determined from among the nodes within each.
- the method for determining the second transit node can also determine the expected heading direction at each of the determined second transit nodes 1270-1.
- the determined expected heading direction may be assigned to the corresponding transit node. Since the expected heading direction is assigned to each of the determined second transit nodes 1270-1, even when determining the subsequent second transit node immediately following the determined second transit node 1270-1, the determined second transit node 1270-1 Based on the expected bow direction in -1), the subsequent second transit node may be determined from among the nodes within the maximum turning angle.
- the method for determining the second transit node sets the second transit nodes 1270 so that the expected bow direction to be assigned to the second transit node 1270-1 corresponding to the berthing node 1280 matches the berthing bow direction 1290. You can decide.
- the method for determining the second transit node may determine the second transit node 1270-1 by considering the scores given to each node of the obstacle map 1200 described above. Specifically, the method for determining the second transit node is, when determining the subsequent second transit node immediately following the reference distance transit node 1250-1 or the determined second transit node 1270-1, assigning a value to the subsequent second transit node
- the second transit node can be determined by considering the obtained score. As an example, the node with the lowest assigned score among the preliminary subsequent second transit nodes may be determined as the subsequent second transit node.
- the method for determining the second transit node may determine the second transit node 1270-1 by considering the remaining distance to the berthing node 1280. Specifically, the method for determining the second transit node is, when determining the reference distance transit node 1250-1 or the subsequent second transit node immediately following the determined second transit node 1270-1, starting from the subsequent second transit node. A subsequent second transit node may be determined so that the remaining distance to node 1280 becomes smaller.
- the second transit nodes 1270-1 are determined so that there is a distance between the second transit nodes 1270-1, but the second transit nodes 1270-1 have a reference distance between the transit nodes 1250-1. It may be determined continuously from 1) to the berthing node 1280.
- the second transit node determination method is used when determining the reference distance transit node 1250-1 or the subsequent second transit node immediately following the determined second transit node 1270-1.
- the subsequent second transit node may be determined by considering the difference between the expected bow direction to be assigned to the second transit node and the berthing bow direction 1290. As an example, among preliminary subsequent second transit nodes, the node with the smallest difference between the expected bow direction to be assigned to the node and the berthing bow direction 1290 may be determined as the subsequent second transit node.
- the second transit node determination method may determine the subsequent second transit node by considering only the difference between the expected bow direction to be assigned to the subsequent second transit node and the berthing bow direction 1290.
- the method for determining the second transit node may determine a node whose expected bow direction to be assigned to the corresponding node is the same as the berthing bow direction 1290 among preliminary subsequent second transit nodes as the subsequent second transit node.
- the second transit nodes 1270-1 are configured so that the difference between the expected bow direction to be assigned to the second transit nodes 1270-1 and the berthing bow direction 1290 is small or must be decided. Accordingly, the first transit node determination method may determine the first transit nodes 1240-1 by also considering whether the second transit nodes 1270-1 can be determined through the second transit node determination method.
- the reference distance transit node 1250-1 is determined using the second route creation method. ), if the second transit nodes 1270-1 from the berthing node 1280 cannot be determined, at least one first transit node among the determined first transit nodes is newly determined, or a new first transit node is added. It may be decided.
- the newly determined first transit node will be described with reference to FIGS. 14 and 15.
- a first path is generated.
- the shortest path is via the reference distance node (1250-2) and the reference distance due to limitations in the ship's steering performance, etc.
- the expected bow direction 1260-2 assigned to the node 1250-2 must be determined as shown in FIG. 14.
- the second transit nodes 1270-2 cannot be created until the berthing node 1280. That is, the second transit node 1270-1 cannot be determined through the second transit node determination method.
- the first transit node is determined under the condition that the current node 1210-2 is located close to the reference distance node 1230 and the current bow direction 1220-2 has a large difference from the berthing bow direction 1290.
- the method may determine first transit nodes 1240-3 so that the ship can approach the reference distance node 1230 by turning around outside the reference distance.
- the second transit node determination method can determine the second transit nodes 1270-3 from the reference distance transit node 1250-3 to the berthing node 1280.
- the above-described method of determining a transit node may be implemented based on the 3D A* algorithm.
- the expected berthing path cost function can be set as the cost function considered in the 3D A* algorithm.
- the expected berthing path cost function may include a first expected berthing path cost function and a second expected berthing path cost function.
- n represents the sequence number of the first transit node from the current node, and n may be 0 at the current node.
- ⁇ m , ⁇ c , and ⁇ d are weight values for C m , C c , and C d, respectively.
- C m is the score given to each node in the obstacle map, and is intended to consider a location that is safe from obstacles.
- C c is the angle change to the next node based on the current or expected bow direction in radians, and is intended to reflect the limited steering performance of the ship.
- C d is the remaining distance from the transit node to the berthing node, and means the heuristic value.
- the first transit node from the current node to the reference distance transit node can be determined using the above-described cost function.
- a cost function is required for each of a plurality of successor node candidates based on the nth transit node. Cost values determined by can be calculated, and the subsequent node candidate with the smallest calculated cost value can be determined as the n+1th transit node. That is, in determining the n+1th subsequent transit node based on the nth transit node, the score given to each node of the obstacle map to consider a safe location from obstacles, and the radian to reflect the limited steering performance of the ship.
- the angle change to the next node based on the unit's current or expected bow direction and the remaining distance from the transit node to the berthing node may be considered. This process is repeated from the current node to the reference distance transit node, so that a plurality of first transit nodes can be determined.
- n represents the sequence number of the second transit node, and n may be 0 at the reference distance transit node.
- ⁇ m , ⁇ c , ⁇ d and ⁇ b are weight values for C m , C c , C d and C b , respectively. Since C m , C c , and C d have been described above, redundant description will be omitted.
- Cb is the difference between the expected bow direction and the berthing bow direction in radians at the transit node, and is intended to minimize the difference between the expected bow direction and the berthing bow direction.
- A is a value set to increase the weight on the difference between the expected bow direction and the berthing bow direction when using the second transit node determination method.
- A can be given a maximum value in real number form. For example, when an infinite value is given to A, only the C b value may be considered when determining the second transit node.
- the second node determination method determines the expected heading direction to be assigned to the subsequent second transit node when determining the subsequent transit node. It can be interpreted as making a decision considering only the difference between and the berthing bow direction 1290.
- the difference between the expected heading to be assigned to the subsequent second transit node and the berthing heading (1290) should be considered as the largest, but it is safe from obstacles. Points assigned to each node on the obstacle map to take into account location, angle change from the transit node to the berthing node based on the current or expected bow direction in radians to reflect the vessel's limited maneuverability. The remaining distance to can also be considered.
- the second transit node from the reference distance transit node to the berthing node can be determined using the above-described cost function.
- n represents the sequence number of the passing node, and n can be 0 at the current node.
- the method of determining the transit node (reference distance transit node) placed at a reference distance from the current node and the method of determining the berthing position from the reference distance transit node are different.
- the difference between the second transit node determination method and the first transit node determination method is that the difference between the expected bow angle assigned to the subsequent node and the berthing angle assigned to the berthing node is further considered.
- the weight value for the difference between the expected bow angle given to the subsequent node and the berthing angle given to the berthing node is set very large, as if the values considered in the first transit node determination method (e.g., a location safe from obstacles score assigned to each node of the obstacle map to take into account the angle change from the transit node to the berthing node based on the current or expected bow direction in radians to reflect the limited maneuvering performance of the vessel.
- the difference between the method for determining the second transit node and the method for determining the first transit node is that the influence on the function value of the cost function is eliminated or greatly reduced.
- a plurality of transit nodes from the current node to the berthing node can be determined using the above-described cost function.
- transit nodes can be determined using the above-described expected berthing path cost function and the algorithm of FIG. 16.
- Figure 16 is an example algorithm for obtaining a transit node and route based on the 3D A* algorithm.
- the route creation device may use the current node, the berthing node, and the transit nodes to generate the berthing path.
- the route creation device may generate a route by sequentially connecting the current node, the transit node, and the berthing node. It is not limited to this, and the route creation device may select some transit nodes suitable for navigation among transit nodes and generate a route by sequentially connecting the current node, the selected transit node, and the berthing node.
- the path creation device may consider the player direction assigned to each node when creating a path by sequentially connecting nodes.
- the route creation device may generate a route by calculating an approximate curve for a passing node.
- the approximate curve can be calculated to pass through the current node and the berthing node by considering the current bow direction and the berthing bow direction.
- the degree of approximation of the approximation curve to the transit node may be determined based on information about the vessel.
- the path creation device may output a result indicating that the path cannot be created. It may be possible.
- Figure 17 is a flowchart of a route creation method according to one embodiment.
- the path creation method acquires an obstacle map (S1410), selects the current node and the berthing node on the obstacle map (S1420), and determines the current player at the current node.
- a plurality of third transit nodes are determined (S1460), a plurality of fourth transit nodes from the reference distance transit node on the obstacle map to the berthing node are determined (S1470), and the determined third transit nodes and fourth transit nodes are determined. This can be performed through the process of creating a berthing path using a node (S1480). Specific details related to the path creation method will be described later.
- Figure 18 is a diagram for explaining a method of determining a reference distance passing node according to an embodiment.
- the method for determining a reference distance passing node is a method of determining a reference distance passing node 1580, which is one of the reference distance nodes 1550 on the obstacle map 1500.
- the reference distance transit node 1280 includes the location of the berthing node 1520 on the obstacle map 1500, the berthing bow direction 1530, the reference distance 1540, the berthing critical angle 1560, and information about the vessel. It can be decided by considering at least one of the following.
- the berthing critical angle 1560 refers to a critical angle for minimizing the change of course of the ship within a reference distance from the berthing position.
- the berthing critical angle 1560 may be determined by considering at least one of information about the ship and information about the port. For example, if the ship's steering performance is high, the berthing critical angle 1560 may be large, and if the ship's steering performance is low, the berthing critical angle 1560 may be small. Meanwhile, the smaller the turning radius of the ship, the larger the berthing critical angle 1560 may be, and the larger the turning radius, the smaller the berthing critical angle 1560 may be. Meanwhile, the shorter the length of the berthing facility, the larger the berthing critical angle 1560 may be, and the longer the length of the berthing facility, the smaller the berthing critical angle 1560 may be. Meanwhile, the ocular critical angle 1560 may be determined to be 0 degrees.
- the method for determining the reference distance via node is a reference distance located within the berthing critical angle range 1570 based on a line extending from the berthing node 1520 in the berthing bow direction 1530 or in the opposite direction to the berthing bow direction 1530.
- One of the nodes 1550 may be determined as the reference distance passing node 1580. It is not limited to this, and the method for determining the reference distance via node is one of the reference distance nodes 1550 on a line extending from the berthing node 1520 in the direction opposite to the berthing bow direction 1530 or the berthing bow direction 1530. may be determined as the reference distance passing node 1580.
- a reference distance player direction 1590 may be assigned to the determined reference distance passing node 1580.
- the reference distance bow direction 1590 means the expected bow direction at the reference distance transit node 1580, the location of the reference distance transit node 1580, the location of the berthing node 1520, the berthing bow direction 1530, and the reference. It may be determined by considering at least one of the distance 1540, the berthing critical angle 1560, and information about the ship.
- the reference distance heading 1590 may be determined as a direction from the reference distance passing node 1580 toward the berthing node 1520. It is not limited to this, and the reference distance bow direction 1590 may be determined such that the difference from the berthing bow direction 1530 is within the berthing critical angle 1560.
- the reference distance node 1580 Direction 1590 may be the same as berthing bow direction 1530.
- Figure 19 is a diagram showing each node and the generated berthing path on an obstacle map according to an embodiment.
- a transit node determination method may be used to determine a transit node on the obstacle map 1600.
- a method for determining a transit node according to an example may include a method for determining a third transit node and a method for determining a fourth transit node.
- the third transit node determination method considers the location of the current node 1610, the current bow direction 1670, and the reference distance location of the transit node 1630 and the reference distance bow direction 1680, and determines the reference distance from the current node 1610. This is a method of determining a plurality of third transit nodes 1640 up to the transit node 1630.
- the third transit node is selected so that the expected heading direction to be assigned to the third transit node 1640 corresponding to the reference distance transit node 1630 matches the reference distance bow direction 1680. (1640) can be determined.
- the method for determining the third transit node can also determine the expected heading direction at each of the determined third transit nodes 1640.
- the determined expected heading direction may be assigned to the corresponding transit node.
- the third transit node 1240 may be determined by considering the maximum turning angle of the ship. Specifically, the third transit node 1640 immediately following the current node 1610 may be determined from among nodes within the maximum turning angle based on the current bow direction 1670.
- the subsequent third transit node immediately following the determined third transit node 1640 is located at the determined third transit node 1640. It can be determined among nodes within the maximum turning angle based on the assigned expected bow direction. Since the information related to the maximum turning angle has been described above, redundant explanation will be omitted.
- the method for determining the third transit node may determine the third transit node 1640 by considering the scores given to each node of the obstacle map 1600 described above.
- the method for determining the third transit node is, when determining the subsequent third transit node immediately following the current node 1610 or the determined third transit node 1640, the score given to the subsequent third transit node is considered.
- the transit node can be determined. As an example, among preliminary subsequent third transit nodes, the node with the lowest score given to the corresponding node may be determined as the subsequent third transit node.
- the third transit node determination method may determine the third transit node 1640 by considering the remaining distance to the reference distance transit node 1630. Specifically, the third transit node determination method is, when determining the subsequent third transit node immediately following the current node 1610 or the determined third transit node 1640, a reference distance transit node 1630 from the subsequent third transit node ) can be determined to determine the subsequent third transit node so that the remaining distance to ) becomes smaller.
- the third distance transit node determination method includes, when determining the subsequent third transit node immediately following the current node 1610 or the determined third transit node 1640, the expected player direction to be assigned to the subsequent third transit node and The subsequent third transit node can be determined by considering the difference from the reference distance and heading direction 1680. As an example, among preliminary subsequent third transit nodes, the node with the smallest difference between the expected heading direction to be assigned to the node and the reference distance heading direction 1680 may be determined as the subsequent third transit node.
- the third transit nodes 1640 are determined so that there is a distance between the third transit nodes 1640, but the third transit nodes 1640 are at a reference distance from the current node 1610. It may also be determined sequentially.
- the third transit node determination method may be implemented based on the 3D A* algorithm.
- g(n) and h(n) can be defined as follows, respectively.
- n represents the sequence number of the third transit node, and n may be 0 at the current node.
- ⁇ m , ⁇ c , ⁇ d and ⁇ b are weight values for C m , C c , C d and C b , respectively.
- C m is the score given to each node in the obstacle map, and is intended to consider a location that is safe from obstacles.
- C c is the angle change to the next node based on the current or expected bow direction in radians, and is intended to reflect the limited steering performance of the ship.
- C d is the remaining distance from the passing node to the reference distance passing node, and means the heuristic value.
- C b is the difference between the expected heading and the reference distance heading in radians at the transit node, and is intended to minimize the difference between the expected heading and the reference distance heading.
- the third transit node from the current node to the reference distance transit node can be determined using the above-described cost function.
- the fourth transit node determination method starts from the reference distance transit node 1630 by considering the location of the reference distance transit node 1630, the reference distance bow direction 1680, the location of the berthing node 1620, and the berthing bow direction 1690. This is a method of determining a plurality of fourth transit nodes 1650 up to the berthing node 1620.
- the fourth transit node 1640 is set so that the expected bow direction to be assigned to the fourth transit node 1640 corresponding to the berthing node 1630 matches the berthing bow direction 1680. can decide.
- the method for determining the fourth transit node can also determine the expected heading direction at each of the determined fourth transit nodes 1650.
- the determined expected heading direction may be assigned to the corresponding transit node.
- the fourth transit node determination method is based on the maximum turning angle of the ship, the score given to each node of the obstacle map 1600, and the remaining distance to the berthing location 1620, which is the arrival location.
- the fourth transit node 1650 can be determined by considering the berthing bow direction 1690, which is the direction at the arrival location. Since the specific method has been described in the third transit node determination method, redundant description will be omitted.
- the fourth transit node determination method according to an embodiment may be implemented based on the 3D A* algorithm.
- the cost function of the fourth transit node determination method may be the same as the cost function of the third transit node determination method.
- C d in the cost function of the fourth transit node determination method means the remaining distance from the transit node to the berthing node.
- C b means the difference between the expected bow direction in radians at the transit node and the berthing bow direction.
- the fourth transit node 1650 from the reference distance transit node 1630 to the berthing node 1620 may be determined using the above-described cost function.
- the berthing path 1660 from the current node 1610 to the berthing node 1620 may be created using the determined third transit node 1640 and the determined fourth transit node 1650.
- the path creation device sequentially connects the third passing nodes 1640 determined from the current node 1610 on the obstacle map 1600 to the reference distance passing node 1630, and starts from the reference distance passing node 1630.
- the berthing path 1660 can be created by sequentially connecting the determined fourth transit nodes 1650 to the berthing node 1620. It is not limited to this, and the route creation device may select some transit nodes suitable for navigation among the determined third transit nodes 1640 and fourth transit nodes 1650 and create a berthing route using the selected transit nodes. there is.
- the path creation device may consider the player direction assigned to each node when creating a path.
- the route creation device may generate a route by calculating an approximate curve for a passing node.
- the path generating device calculates a first approximate curve passing through the current node and the reference distance passing node by considering the current bow direction and the reference distance bow direction, and considering the reference distance bow direction and the berthing bow direction to calculate the first approximate curve passing the reference distance passing node.
- a second approximation curve passing through the ocular node can be calculated, and an ocular path can be created using the first approximation curve and the second approximation curve.
- the degree of approximation of the approximation curve to the transit node may be determined based on information about the vessel.
- the path creation device may output a result indicating that the path cannot be created. It may be possible.
- Path following control means generating a ship control signal so that the ship can operate along the generated path.
- a ship control signal may be generated from a ship navigation device.
- Figure 20 is a flowchart of a path tracking control method according to an embodiment.
- the path tracking control method generates a first path at a first time point (S1710) and generates a first ship control signal using the first path (S1720). This may be performed by creating a second path at a second time later than the first time (S1730) and generating a second ship control signal using the second path (S1740). Specific details related to path-following control will be described later.
- Figure 21 is a diagram for explaining path tracking control according to an embodiment.
- a first berthing path 1830 may be created using the obstacle map 1800 to perform a path following control method.
- the obstacle map 1800 may be an obstacle map obtained at a first time point, or may be an obstacle map acquired before the first time point.
- the first current node 1810 corresponding to the current location at the first viewpoint may be selected, and the ocular node 1860 corresponding to the ocular location may also be selected.
- the first path 1830 may be created using the path creation method described above. Since the creation of a specific berthing path has been described above, redundant explanation will be omitted.
- a first control signal may be generated so that the ship can operate along the first path.
- the first control signal may include a first vessel direction control signal and/or a first vessel speed control signal.
- the first control signal indicates that the actual ship is located at the subsequent transit node 1840 of any one of the subsequent transit nodes after the current node 1810 belonging to the generated first path 1830.
- the heading direction when doing so may be generated by considering the current heading direction 1820 assigned to the current node 1810 so that it can match the expected heading direction 1850 assigned to the subsequent transit node as much as possible.
- the first control signal includes the current node 1810 corresponding to the current position of the ship on the generated first path 1830, the current bow direction 1820, and at least one subsequent transit node 1840 for the current node. It can be generated considering the expected heading direction 1850 assigned to the subsequent transit node.
- the first control signal may be generated by considering the difference between the current heading 1820 assigned to the current node 1810 and the expected heading 1850 assigned to the subsequent transit node 1840. Considering the difference, a first ship direction control signal, which is a control signal for adjusting the rudder or rudder of the ship, may be generated.
- the first ship speed control signal which is a control signal for controlling the ship's propeller rotation speed or number of revolutions per unit time or the engine output, includes the ship's current speed, current bow direction (1820), and expected bow direction (1850). It can be generated by considering at least one of the difference between the current ship's steering performance, the current direction and strength of the current, and the current wind direction and wind speed.
- the ship direction control signal and the ship speed control signal can be generated independently of each other. That is, the ship direction control signal can be generated regardless of the value of the ship speed control signal, and the ship speed control signal can be generated regardless of the value of the ship direction control signal.
- ship direction control signal may be generated by considering the value of the ship speed control signal.
- the ship speed control signal may also be generated considering the value of the ship direction control signal. In other words, ship direction control and ship speed control may affect each other.
- control signal uses an artificial neural network that has been trained to receive data on the ship's condition and surrounding environment, such as the distance from the current node to the subsequent transit node and the difference in bow direction, and output a ship direction control signal or ship speed control signal. may be created.
- An artificial neural network is a type of algorithm modeled after the structure of a human neural network. It may include one or more layers including one or more nodes or neurons, and each node may be connected through a synapse. Data input to the artificial neural network (input data) can be output (output data) through a node through a synapse, and information can be obtained through this.
- Types of artificial neural networks include a convolution neural network (CNN), which extracts features using filters, and a recurrent neural network (RNN), which has a structure in which the output of a node is fed back to the input.
- CNN convolution neural network
- RNN recurrent neural network
- RBM restricted Boltzmann machine
- DNN deep belief network
- GAN generative adversarial network
- RN relational networks
- path following may be performed using a path following algorithm.
- model predictive control a technology that generates an optimal control signal by receiving the position to be followed for a random T time from the current point for path tracking
- pure pursuit control Algorithms such as Stanley method and vector pursuit
- a second path may be created at a second time point after the first time point.
- the time interval between the second viewpoint and the first viewpoint may be a predetermined time interval.
- the time interval may be set to 150ms to 250ms.
- Figure 22 is a diagram for explaining path tracking control according to an embodiment.
- a second berthing path 1930 may be created using the obstacle map 1900 to perform a path following control method.
- the obstacle map 1900 may be an obstacle map acquired at a second time point, an obstacle map acquired at a first time point, or an obstacle map acquired at a previous time point.
- the second current node 1910 corresponding to the current location at the second viewpoint may be selected, and the ocular node 1960 corresponding to the ocular location may also be selected.
- the berth node 1960 may be used as is, as is the berth node 1860 selected at the first time point, and the berth node 1960 may be newly selected at the second time point.
- the second path 1930 may be created using the path creation method described above.
- the generated second path 1930 may be the same as the first path 1830 or may be different from the first path 1830.
- the generated second path 1930 may be different from the first path 1830 of FIG. 21.
- the ship moves along the first route between the first and second points in time.
- the second path 1930 may be different from the first path 1830. It is not limited to this, and a second path 1930 that is different from the first path 1830 may be created due to other internal or external factors.
- a second control signal may be generated so that the ship can operate along the second path. Since the content related to control signal generation has been described above, redundant description will be omitted.
- the above-described path following control method can be repeated up to the nth point in time to enable the ship to dock at the berthing facility.
- Figure 23 is a flowchart of a ship berthing method using path-following control according to an embodiment.
- the ship berthing method using path-following control generates a path using an obstacle map (S2010) and generates a control signal based on the generated path (S2020). And, depending on whether the ship has arrived at the berthing location, path generation and control signal generation may be repeated (S2030). Since the contents related to path generation and control signal generation have been described above, redundant description will be omitted.
- path creation can be performed in a path creation device, and control signal generation can be generated in a ship navigation device.
- the ship navigation device may receive information about the berthing path and each node from the route creation device and generate a ship control signal.
- the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium.
- the computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination.
- Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software.
- Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks.
- program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.
- the hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Ocean & Marine Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
본 발명은 선박에 대한 접안 경로 생성 방법으로, 복수의 노드를 포함하는 장애물 지도를 획득하는 단계; 장애물 지도 상에서의 현재 노드 및 접안 노드를 선택하는 단계; 현재 노드에서의 현재 선수 방향 및 접안 노드에서의 접안 선수 방향을 판단하는 단계; 기준 거리를 결정하는 단계; 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 장애물 지도 상에서 현재 노드로부터 접안 노드까지의 복수의 경유 노드들 및 경유 노드에 할당될 예상 선수 방향을 결정하는 단계; 및 결정된 복수의 경유 노드들을 이용하여 접안 경로를 생성하는 단계;를 포함하는, 접안 경로 생성 방법에 관한 것이다.
Description
본 발명은 선박의 접안 경로 생성 방법 및 그 장치에 관한 것으로, 보다 상세하게는 선박이 접안 위치로부터 기준 거리 이내에 위치하는지에 따라 상이한 경유 노드 결정 방법을 이용하는 접안 경로 생성 방법 및 그 장치에 관한 것이다.
선박의 운항에 있어 많은 사고가 발생하고 있으며, 그 사고의 주요 원인은 사람의 운항 부주의로 알려져 있다. 사람이 운항하지 않는, 스스로 운항하는 자율 운항 선박 또는 무인 선박이 상용화되는 경우 해양 사고를 크게 감소시킬 수 있을 것으로 예상되고 있다. 이를 위해 글로벌 기업들은 자율 운항 선박 개발 프로젝트의 진행 중에 있다.
자율 운항 선박의 완성을 위해서는 해양 환경의 특성, 선박의 특성 및 항만의 특성 등을 고려하여 경로를 생성할 수 있어야 한다. 특히 선박의 접안 시 단순히 접안 시설 까지의 최단 거리를 따라 경로를 생성할 경우 침로 변화 구간이 접안 시설 직전에 짧은 길이로 존재하게 된다. 이에 따라, 작은 경로 이탈에도 접안 시설과의 충돌 위험성이 높아지게 되며, 해양 환경의 특성 및 선박의 특성 등을 고려할 경우 생성된 경로를 따라서는 선박의 접안이 사실상 불가능한 문제가 있었다.
본 발명의 일 과제는 선박이 접안 위치로부터 기준 거리 이내에 위치하는지에 따라 상이한 경유 노드 결정 방법을 이용하는 접안 경로 생성 방법 및 그 장치를 제공하는 것에 있다.
본 발명의 다른 과제는 선박이 생성된 경로를 따라 운항할 수 있도록 경로 추종을 수행하는 자율 운항 방법 및 그 장치를 제공하는 것에 있다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따르면 선박에 대한 접안 경로 생성 방법으로, 해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하는 단계; 상기 장애물 지도 상에서의 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하는 단계; 상기 현재 노드에서의 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하는 단계; 상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하는 단계; 상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하는 단계 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -; 및 상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하는 단계;를 포함하며, 상기 미리 정해진 예상 접안 경로 비용 함수는, 상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되, 상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한, 접안 경로 생성 방법이 제공될 수 있다.
본 발명의 다른 실시예에 따르면 선박에 대한 접안 경로 생성 장치에 있어서, 상기 선박에 대한 정보, 항만에 대한 정보 및 경유 노드 결정 방법을 저장하는 메모리; 및 적어도 하나의 프로세서;를 포함하며, 상기 프로세서는, 해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하고, 상기 장애물 지도 상에서 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하고, 상기 현재 노드에서 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하고, 상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하고, 상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하고 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -, 상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하며, 상기 미리 정해진 예상 접안 경로 비용 함수는, 상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되, 상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한, 접안 경로 생성 장치가 제공될 수 있다.
본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 의하면, 선박이 접안 위치로부터 기준 거리 이내에 위치하는지에 따라 상이한 경유 노드 결정 방법을 이용하는 접안 경로 생성 방법 및 그 장치를 이용하여, 기준 거리 이내에서는 접안 시설과의 충돌을 최소화하는 경로를 생성할 수 있으므로 접안 시 선박과 접안 시설과의 충돌 위험을 줄일 수 있다.
본 발명에 의하면, 선박이 생성된 경로를 따라 운항할 수 있도록 경로 추종을 수행하는 자율 운항 방법 및 그 장치를 이용하여 선박 제어를 할 수 있다.
본 발명의 효과가 상술한 효과로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 접안 가이드 시스템에 대한 도면이다.
도 2는 일 실시예에 따른 경로 생성 장치의 구성을 나타낸 블록도이다.
도 3은 일 실시예에 따른 센서 모듈의 구성을 나타낸 블록도이다.
도 4는 일 실시예에 따른 외부 서버의 구성을 나타낸 블록도이다.
도 5는 일 실시예에 따른 선박 운항 장치의 구성을 나타낸 블록도이다.
도 6은 일 실시예에 따른 장애물 지도를 나타낸 도면이다.
도 7은 일 실시예에 따른 점수가 부여된 장애물 지도를 나타낸 도면이다.
도 8은 일 실시예에 따른 선박에 대응되는 노드를 포함하는 장애물 지도에 대한 도면이다.
도 9는 일 실시예에 따른 경로 생성 방법의 순서도이다.
도 10은 일 실시예에 따른 장애물 지도를 나타낸 도면이다.
도 11은 도 10의 장애물 지도 상에서 기존의 접안 경로 생성 방법을 수행하여 생성된 경로를 나타낸 도면이다.
도 12는 일 실시예에 따른 기준 거리를 설명하기 위한 도면이다.
도 13, 도 14 및 도 15는 일 실시예에 따른 장애물 지도 상에서의 접안 경로 및 경유 노드를 나타낸 도면이다.
도 16은 3D A* 알고리즘을 기반으로 경유 노드 및 경로를 획득하는 예시적 알고리즘이다.
도 17은 일 실시예에 따른 경로 생성 방법의 순서도이다.
도 18은 일 실시예에 따른 기준 거리 경유 노드 결정 방법을 설명하기 위한 도면이다.
도 19는 일 실시예에 따른 장애물 지도 상에서의 각 노드 및 생성된 접안 경로를 나타낸 도면이다.
도 20은 일 실시예에 따른 경로 추종 제어 방법의 순서도이다.
도 21 및 도 22는 일 실시예에 따른 경로 추종 제어를 설명하기 위한 도면이다.
도 23은 일 실시예에 따른 경로 추종 제어를 이용한 선박 접안 방법의 순서도이다.
본 명세서에 기재된 실시예는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 사상을 명확히 설명하기 위한 것이므로, 본 발명이 본 명세서에 기재된 실시예에 의해 한정되는 것은 아니며, 본 발명의 범위는 본 발명의 사상을 벗어나지 아니하는 수정예 또는 변형예를 포함하는 것으로 해석되어야 한다.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하여 가능한 현재 널리 사용되고 있는 일반적인 용어를 선택하였으나 이는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자의 의도, 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 다만, 이와 달리 특정한 용어를 임의의 의미로 정의하여 사용하는 경우에는 그 용어의 의미에 관하여 별도로 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가진 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.
본 명세서에 첨부된 도면은 본 발명을 용이하게 설명하기 위한 것으로 도면에 도시된 형상은 본 발명의 이해를 돕기 위하여 필요에 따라 과장되어 표시된 것일 수 있으므로 본 발명이 도면에 의해 한정되는 것은 아니다.
본 명세서에서 본 발명과 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 이에 관한 자세한 설명은 필요에 따라 생략할 수도 있다.
본 발명의 일 실시예에 따르면 선박에 대한 접안 경로 생성 방법으로, 해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하는 단계; 상기 장애물 지도 상에서의 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하는 단계; 상기 현재 노드에서의 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하는 단계; 상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하는 단계; 상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하는 단계 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -; 및 상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하는 단계;를 포함하며, 상기 미리 정해진 예상 접안 경로 비용 함수는, 상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되, 상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한, 접안 경로 생성 방법이 제공될 수 있다.
상기 기준 거리 경유 노드는, 상기 접안 노드로부터 상기 기준 거리만큼 떨어진 위치에 대응되는 기준 거리 노드들 중 하나일 수 있다.
상기 기준 거리 경유 노드는, 상기 기준 거리 노드들 중 상기 접안 노드로부터 상기 접안 선수 방향 또는 상기 접안 선수 방향의 반대 방향으로 상기 기준 거리만큼 떨어진 위치에 대응되는 노드일 수 있다.
상기 제2 예상 접안 경로 비용 함수는, 상기 접안 선수 방향을 고려하는 항을 포함할 수 있다.
상기 접안 선수 방향을 고려하는 항은, 상기 제2 예상 접안 경로 상의 경유 노드에 할당될 예상 선수 방향과 상기 접안 선수 방향과의 차이를 고려하는 항일 수 있다.
상기 장애물 지도는, 상기 복수의 노드 각각에 대해 상기 선박의 운항 안전성에 따른 점수가 부여되며, 상기 예상 접안 경로 비용 함수는, 상기 점수를 고려하는 항을 포함할 수 있다.
상기 복수의 경유 노드들을 결정하는 단계는, 상기 선박의 현재 속력을 판단하는 단계; 상기 현재 속력에 기초하여 상기 선박의 최대 선회각을 산출하는 단계;를 포함하며, 상기 예상 접안 경로 비용 함수는, 상기 최대 선회각을 고려하는 항을 포함할 수 있다.
본 발명의 다른 실시예에 따르면 선박에 대한 접안 경로 생성 장치에 있어서, 상기 선박에 대한 정보, 항만에 대한 정보 및 경유 노드 결정 방법을 저장하는 메모리; 및 적어도 하나의 프로세서;를 포함하며, 상기 프로세서는, 해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하고, 상기 장애물 지도 상에서 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하고, 상기 현재 노드에서 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하고, 상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하고, 상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하고 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -, 상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하며, 상기 미리 정해진 예상 접안 경로 비용 함수는, 상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되, 상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한, 접안 경로 생성 장치가 제공될 수 있다.
상기 프로세서는, 상기 복수의 경유 노드들을 결정하고, 상기 선박의 현재 속력을 판단하고, 상기 현재 속력에 기초하여 상기 선박의 최대 선회각을 산출하며, 상기 예상 접안 경로 비용 함수는, 상기 최대 선회각을 고려하는 항을 포함할 수 있다.
이하에서는 일 실시예에 따른 접안 경로 생성 방법 및 그 장치에 대하여 설명한다.
1. 접안 가이드 시스템(10)
도 1은 일 실시예에 따른 접안 가이드 시스템(10)에 대한 도면이다.
일 실시예에 따른 접안 가이드 시스템(10)은 선박의 현재 위치로부터 접안 위치까지의 접안 경로를 생성할 수 있다. 접안 경로를 생성하기 위해 장애물 지도가 획득될 수 있으며, 기준 거리가 결정될 수 있다. 이후, 현재 위치에 대응되는 장애물 지도 상의 현재 노드부터 접안 위치에 대응되는 장애물 지도 상의 접안 노드까지의 경유 노드가 결정될 수 있으며, 현재 노드, 접안 노드 및 경유 노드를 이용하여 접안 경로를 생성할 수 있다. 안전한 접안 경로를 생성하기 위해, 선박이 접안 위치로부터 기준 거리 이내에 들어오면, 선박이 접안 위치에 접안했을 때의 선박의 선수 방향을 고려한 경로를 생성할 수 있다. 한편, 해상에서의 운항 안전성을 고려하여 경로를 생성할 수도 있다. 또한, 생성된 경로를 추종하여 선박이 운항할 수 있도록 선박을 제어할 수도 있다.
보다 구체적으로, 도 1을 참조하면, 접안 가이드 시스템(10)은 경로 생성 장치(100), 센서 모듈(200), 외부 서버(300), 및 선박 운항 장치(400)를 포함할 수 있다.
이하에서는 경로 생성 장치(100), 센서 모듈(200), 외부 서버(300) 및 선박 운항 장치(400)에 대해 구체적으로 살펴본다. 접안 가이드 시스템(10)은 상술한 구성을 모두 포함해야 하는 것은 아니고, 경로 생성 장치(100), 센서 모듈(200), 외부 서버(300) 및 선박 운항 장치(400)들 중에서 선택된 일부의 구성을 포함할 수도 있다. 이때, 경로 가이드 시스템(10)에 포함된 경로 생성 장치(100), 센서 모듈(200), 외부 서버(300) 및 선박 운항 장치(400)들 중 하나의 구성의 개수는 하나 이상일 수 있다. 예를 들어, 경로 가이드 시스템(10)은 한 개의 센서 모듈(200)을 포함할 수도 있고, 둘 이상의 센서 모듈(200)들을 포함할 수도 있다.
일 실시예에 따른 경로 생성 장치(100)는 내부에 저장된 데이터 또는 외부로부터 획득한 데이터를 이용하여 선박의 현재 위치에서 접안 위치까지의 경로를 생성할 수 있다.
보다 구체적으로, 경로 생성 장치(100)는 경유 노드 결정 방법을 이용하여, 획득한 장애물 지도(obstacle map) 상의 선박의 현재 노드에서 접안 노드까지의 경유 노드를 결정할 수 있다. 경로 생성 장치(100)는 결정된 경유 노드들을 이용하여 접안 경로를 생성할 수 있다. 장애물 지도는 장애물의 위치 및 객체 정보 등이 반영된 지도이다. 장애물 지도 및 접안 경로 생성 방법에 대한 구체적인 내용은 후술한다.
일 실시예에 따른 센서 모듈(200)(Sensor device)은 선박의 상태 및 주변 환경 요소를 감지할 수 있다. 또한, 경로 생성 장치(100)가 접안 경로 생성을 위해 필요한 각종 요소를 감지하여 경로 생성 장치(100)에 전송할 수 있다.
일 실시예에 따른 외부 서버(300)는 선박에 대한 정보, 항만에 대한 정보, 실시간 선박 상태 정보, 실시간 항만 상태 정보, 실시간 환경 데이터 중 적어도 하나를 저장하며, 경로 생성 장치(100)에서 필요한 데이터를 전송할 수 있다. 구체적으로, 경로 생성 장치(100)에 저장되어 있지 않으나 접안 경로 생성을 위해 필요한 데이터가 있을 경우, 또는 데이터가 저장되어 있더라도 접안 경로 생성을 위해 실시간 데이터가 필요한 경우, 외부 서버(300)는 경로 생성 장치(100)에 접안 경로 생성을 위해 필요한 데이터를 전송할 수 있다.
일 실시예에 따른 선박 운항 장치(400)는 경로 생성 장치(100)에서 생성된 접안 경로를 따라 선박이 운항할 수 있도록 제어 신호를 생성할 수 있다. 생성된 제어 신호는 선박의 구동 장치로 전송되어 선박의 운항을 제어할 수 있다. 제어 신호는 선박 속력 제어 신호 및/또는 선수 방향 제어 신호를 포함할 수 있다.
이하에서 경로 생성 장치(100), 센서 모듈(200) 및 선박 운항 장치(400)는 선박에 위치하며, 외부 서버(300)는 관제 센터에 위치한 것으로 설명한다.
그러나 이에 한정되는 것은 아니며, 경로 생성 장치(100) 또한 관제 센터에 위치할 수도 있다. 이 경우, 경로 생성 장치(100)는 센서 모듈(200)로부터 원격으로 데이터를 수신할 수 있으며, 생성된 경로와 관련된 데이터를 원격으로 선박 운항 장치(400)에 전송할 수 있다. 한편, 경로 생성 장치(100) 및 선박 운항 장치(400) 모두가 관제 센터에 위치할 수도 있으며, 이 경우 선박 운항 장치(400)는 생성된 제어 신호를 원격으로 선박에 전송할 수 있다.
도 2는 일 실시예에 따른 경로 생성 장치(100)의 구성을 나타낸 블록도이다.
도 2를 참조하면, 경로 생성 장치(100)는 메모리(110), 프로세서(120), 및 통신 장치(130)를 포함할 수 있다.
메모리(110)는 각종 프로세싱 프로그램, 프로그램의 프로세싱을 수행하기 위한 파라미터 또는 이러한 프로세싱 결과 데이터 등을 저장할 수 있다. 예를 들어, 메모리(110)는 후술할 프로세서(120)의 동작을 위한 인스트럭션, 경유 노드 결정 방법, 경유 노드 결정 알고리즘 등을 저장할 수 있다.
한편, 메모리(110)는 선박에 대한 정보, 항만에 대한 정보를 더 저장할 수 있다.
선박에 대한 정보는, 선박의 길이, 선박의 너비, 선박의 부피, 선박의 무게, 선박의 조타 성능, 선박의 최대 조타 각도 등을 포함할 수 있다.
항만에 대한 정보는, 항만 지도, 항만 구조, 항만 시설의 위치, 항만의 길이, 접안 시설의 위치, 접안 시설의 길이, 장애물의 위치, 장애물의 속성, 장애물 지도, 선박의 접안 위치, 접안 위치에 선박이 접안 시 선박의 선수 방향 등을 포함할 수 있다.
메모리(110)에 저장된 선박에 대한 정보 및/또는 항만에 대한 정보는 외부로부터 수신한 데이터일 수 있다.
메모리(110)는 비휘발성 반도체 메모리, 하드 디스크, 플래시 메모리, RAM(Random Access Memory), ROM(Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory) 또는 그 외에 유형의 (tangible) 비휘발성의 기록 매체 등으로 구현될 수 있다.
프로세서(120)는 메모리(110)에 저장된 인스트럭션에 따라 동작할 수 있으며, 경유 노드 결정 방법을 이용하여 경유 노드를 결정하고, 경로 생성 방법을 이용하여 접안 경로를 생성할 수 있다. 이하에서 본 발명의 실시예로 개시되는 접안 경로 생성의 각종 동작이나 단계들은 별도의 언급이 없으면 경로 생성 장치(100)의 프로세서(120)에서 수행되거나 프로세서(120)의 제어에 의해 수행되는 것으로 해석될 수 있다. 프로세서(120)의 구체적인 동작 방법은 후술한다.
프로세서(120)는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU), 디지털 신호 처리 장치(Digital Signal Processor, DSP), 상태 기계(state machine), 주문형 반도체(Application Specific Integrated Circuit, ASIC), 무선 주파수 집적 회로(Radio-Frequency Integrated Circuit, RFIC) 및 이들의 조합 등으로 구현될 수 있다.
통신 장치(130)는 유선 및/또는 무선 통신을 통해 데이터 및/또는 정보를 외부로 송신 또는 외부로부터 수신할 수 있다. 통신 장치(130)는 양방향(bi-directional) 또는 단방향 통신을 수행할 수 있다.
일 예로, 통신 장치(130)는 센서 모듈(200), 외부 서버(300) 및/또는 선박 운항 장치(400)와 통신을 수행할 수 있다. 구체적으로, 센서 모듈(200)로부터 센싱 데이터를 수신할 수 있으며, 외부 서버(300)로부터 경로 생성에 필요한 각종 데이터를 수신할 수 있다. 또한. 결정된 경유 노드와 관련된 정보 및/또는 생성된 경로와 관련된 정보를 선박 운항 장치(400)로 전송할 수 있다. 이에 한정되는 것은 아니며, 통신 장치(130)는 다른 외부 장치들과 통신을 수행할 수도 있다.
경로 생성 장치(100)는 선박에 설치될 수 있다. 이에 한정되는 것은 아니며, 경로 생성 장치(100)는 선박의 외부에 설치될 수도 있다. 일 예로, 경로 생성 장치(100)는 항만 관제 서버, 관계자의 단말 장치, 외부 서버 등에 설치되어 있을 수도 있다.
도 3은 일 실시예에 따른 센서 모듈(200)의 구성을 나타낸 블록도이다.
센서 모듈(200)은 선박의 상태 및 주변 환경 요소를 감지할 수 있다. 보다 구체적으로, 센서 모듈(200)은 선박에 대한 위치 감지, 선수 방향 감지, 속력 감지, 조타 각도 감지, 및/또는 무게 감지를 수행할 수 있으며, 외부 환경에 대해 조류 감지, 풍향 및 풍속 감지를 수행할 수도 있다. 감지할 수 있는 대상은 상술한 대상에 한정되는 것은 아니며, 센서 모듈(200)은 접안 경로 생성을 위해 필요한 각종 요소를 감지할 수도 있다.
도 3을 참조하면, 일 실시예에 따른 센서 모듈(200)은 적어도 하나의 센서(210), 및 통신 장치(220)를 포함할 수 있다.
센서(210)는, GPS(Global Positioning System)(211), 선박자동식별장치(Automatic Identification System, AIS)(212), 초음파 탐지기(213), 관성측정장비(Inertial Measurement Unit, IMU)(214), 관성항법장치(Inertial Navigation system, INS)(215), 속력계(216), 카메라(217), 레이더(Radar)(218), 라이다(LidDar)(219), RTK-GPS(Real-Time Kinematic GPS) 중 적어도 하나를 포함할 수 있다. 상술한 구성에 한정되는 것은 아니며, 센서(210)는 선박의 상태를 감지하기 위한 센서 및/또는 선박의 주변 환경을 감지하기 위한 센서를 포함할 수도 있다.
센서 모듈(200)의 통신 장치(220)는 유선 및/또는 무선 통신을 통해 데이터 및/또는 정보를 외부로 송신 또는 외부로부터 수신할 수 있으며, 경로 생성 장치(100), 외부 서버(300), 및/또는 선박 운항 장치(400)와 데이터 통신을 수행할 수 있다.
도 4는 일 실시예에 따른 외부 서버(300)의 구성을 나타낸 블록도이다.
외부 서버(300)는 선박에 대한 정보, 항만에 대한 정보, 실시간 선박 상태 정보, 실시간 항만 상태 정보, 및 실시간 환경 데이터 중 적어도 하나를 저장하며, 경로 생성 장치(100)에서 경로를 생성하기 위해 필요한 데이터를 경로 생성 장치(100)에 전송할 수 있다.
구체적으로, 경로 생성 장치(100)에 저장되어 있지 않으나 접안 경로 생성을 위해 필요한 데이터가 있을 경우, 또는 데이터가 저장되어 있더라도 접안 경로 생성을 위해 실시간 데이터 등이 필요한 경우, 외부 서버(300)는 경로 생성 장치(100)에 접안 경로 생성을 위해 필요한 데이터를 전송할 수 있다.
일 예로, 외부 서버(300)는 선박으로부터 수신한 선박 위치 데이터 등을 이용하여 선박이 위치하는 항만을 판단할 수 있으며, 판단된 항만에 대한 정보를 경로 생성 장치(100)에 전송할 수 있다.
한편, 외부 서버(300)는 경로 생성에 필요한 데이터 이외에도 선박 운항에 필요한 데이터를 경로 생성 장치(100), 센서 모듈(200) 및/또는 선박 운항 장치(400)로 전송할 수 있다.
일 실시예에 따른 외부 서버(300)는 관제 서버, 클라우드 서버 등 다양한 종류의 서버일 수 있다.
도 4를 참조하면, 일 실시예에 따른 외부 서버(300)는 메모리(310), 프로세서(320), 및 통신 장치(330)를 포함할 수 있다.
외부 서버(300)의 메모리(310)는 적어도 하나의 항만에 대한 정보를 저장할 수 있다. 항만에 대한 정보는 현재 선박이 위치한 항만에만 한정되는 것은 아니며, 인근 항만 또는 전체 항만에 대한 정보를 포함할 수 있다. 구체적인 항만에 대한 정보는 상술한 바 있으므로 중복 설명은 생략한다.
메모리(310)는 적어도 하나의 선박에 대한 정보를 저장할 수 있다. 선박에 대한 정보는 선박으로부터 수신한 데이터일 수 있으며, 구체적인 선박에 대한 정보는 상술한 바 있으므로 중복 설명은 생략한다.
메모리(310)는 외부 서버(310)가 실시간으로 외부로부터 수신한 데이터를 저장할 수도 있다. 일 예로, 메모리(310)는 실시간 선박 상태 정보, 실시간 항만 상태 정보, 및 실시간 환경 데이터 중 적어도 하나를 저장할 수 있다.
외부 서버(300)의 프로세서(320)는 선박으로부터 수신한 데이터를 이용하여 선박이 위치하는 항만을 판단할 수 있다. 일 예로, 외부 서버(300)가 선박으로부터 GPS 위치 데이터를 수신한 경우, 프로세서(320)는 이를 이용하여 선박이 위치한 또는 가까운 항만을 판단할 수 있다.
프로세서(320)는 판단된 항만에 대응되는 장애물 지도를 경로 생성 장치(100) 및/또는 선박 운항 장치(400)에 전송할 수 있다.
일 예로, 프로세서(320)는 현재 선박의 위치에 대응되는 노드 및 선박의 접안 위치에 대응되는 노드를 포함하는 장애물 지도를 생성하거나 복수의 장애물 지도 중에서 선택하여 후술할 통신 장치(330)를 통해 경로 생성 장치(100) 또는 선박 운항 장치(400)에 전송할 수도 있다. 장애물 지도와 관련된 내용은 후술한다.
한편, 외부 서버(300)가 관제 서버 등인 경우, 외부 서버(300)는 별도의 기상청 서버로부터 항만에 대한 기상 정보 등을 수신할 수 있으며, 수신한 기상 정보 등을 경로 생성 장치(100) 및/또는 선박 운항 장치(400)에 전송할 수 있다.
외부 서버(300)의 통신 장치(330)는 유선 및/또는 무선 통신을 통해 데이터 및/또는 정보를 외부로 송신 또는 외부로부터 수신할 수 있으며, 경로 생성 장치(100), 센서 모듈(200), 및/또는 선박 운항 장치(400)와 데이터 통신을 수행할 수 있다.
한편, 외부 서버(300)는 선박의 외부에 배치될 수 있으며, 관제 센터, 운항 관리 센터 등에 위치할 수 있다.
도 5는 일 실시예에 따른 선박 운항 장치(400)의 구성을 나타낸 블록도이다.
선박 운항 장치(400)는 경로 생성 장치(100)로부터 수신한 접안 경로 또는 경유 노드를 따라 선박이 운항할 수 있도록 제어 신호를 생성할 수 있다. 제어 신호는 선박 속력 제어 신호 및/또는 선수 방향 제어 신호를 포함할 수 있다.
일 예로, 선박 속력 제어 신호는 선박의 프로펠러의 회전 속도를 조절하는 신호, 프로펠러의 단위 시간당 회전수를 조절하는 신호 또는 엔진 출력 제어 신호 등일 수 있으며, 이에 한정되는 것은 아니고, 선박의 동력 장치를 제어하기 위한 각종 신호를 포함할 수 있다.
일 예로, 선수 방향 제어 신호는 선박의 방향타(rudder)를 조절하는 신호 또는 키(wheel, helm)를 조절하는 신호일 수 있으며, 이에 한정되는 것은 아니고, 선박의 진행 방향을 제어하기 위한 각종 신호를 포함할 수 있다.
도 5를 참조하면, 일 실시예에 따른 선박 운항 장치(400)는 제어 신호 생성부(410), 및 통신 장치(420)를 포함할 수 있다. 제어 신호 생성부(410)는 선박 속력 제어 신호 생성부(411) 및/또는 선수 방향 제어 신호 생성부(412)를 포함할 수 있다.
선박 속력 제어 신호 생성부(411)는 상술한 선박 속력 제어 신호를 생성하여, 선박의 프로펠러 또는 엔진 등을 제어할 수 있다.
선수 방향 제어 신호 생성부(412)는 상술한 선수 방향 제어 신호를 생성하여, 선박의 방향타 또는 키 등을 제어할 수 있다. 제어 신호와 관련된 구체적인 내용은 후술한다.
선박 운항 장치(400)의 통신 장치(420)는 경로 생성 장치(100)로부터 경유 노드와 관련된 정보 또는 접안 경로와 관련된 정보를 수신할 수 있다. 한편, 선박 운항 장치(400)는 센서 모듈(200)로부터 현재 선박의 상태 및 주변 환경 정보를 수신할 수 있다. 한편, 선박 운항 장치(400)는 외부 서버(300)로부터 기상 정보 또는 운항 규칙 등을 수신할 수 있다. 운항 규칙은 선박 운항 시 지켜야 하는 약속이나 법규 등을 의미한다. 일 예로, 운항 규칙은 국제해상출돌예방규칙(International Regulations for Preventing Collisions at Sea, COLREG) 일 수 있다. 한편, 선박 운항 장치(400)는 생성된 제어 신호를 선박에 전송하여 선박이 생성된 접안 경로를 따라 운항하도록 할 수 있다.
2. 장애물 지도
도 6은 일 실시예에 따른 장애물 지도(600)를 나타낸 도면이다.
장애물 지도는 경로 생성에 있어서 사용되는 격자 이미지, 또는 행렬 데이터 등이며, 이에 한정되지 않고 다양한 형태로 구현될 수 있다. 도 6은 격자 이미지로 구현된 장애물 지도(600)를 나타낸 것이다.
해상에서의 경로는 장애물 지도(600) 상에서 장애물에 대응되는 노드(630)의 위치를 고려하여 생성될 수 있다. 일 예로, 경로 생성 장치(100)는 장애물 지도(600)를 이용하여 접안 경로를 생성할 수 있다.
도 6을 참조하면, 장애물 지도(600)는 복수의 노드(610)를 포함할 수 있다. 각 노드(610)는 해상에서의 위치에 대응될 수 있으며, 지상의 위치에도 대응될 수 있다.
장애물 지도(600)가 격자 이미지로 구현된 경우, 각 노드(610)는 격자 이미지의 각 영역을 의미할 수 있다.
한편, 장애물 지도가 2차원 이미지인 경우, 상기 장애물 지도에 포함된 '하나의 노드'는 상기 2차원 이미지를 구성하는 '하나의 픽셀'에 대응될 수 있으며, 또는 상기 장애물 지도에 포함된 '하나의 노드'는 상기 2차원 이미지를 구성하는 서로 인접하고 있는 복수의 픽셀들에 대응될 수 있다.
한편, 장애물 지도가 행렬 데이터들로 구현된 경우, 행렬 데이터들은 복수의 행렬들을 포함하며, 각 행렬들의 원소들 중 일부는 위치값(예를 들어, x 좌표, y좌표 등)에 대응되며 원소들 중 나머지 일부는 해당 위치값에 할당(assign)되는 속성값들에 대응될 수 있다. 이때, 전술한 장애물 지도의 노드는 전술한 행렬 데이터들에 포함된 하나의 행렬에 대응될 수 있으며, 또는 장애물 지도의 노드는 전술한 행렬 데이터들에 포함된 행렬들 중 서로 인접한 위치에 대응되는 복수의 행렬들에 대응될 수 있다.
도 6을 참조하면, 장애물 지도(600)는 바다에 대응되는 노드(620)들과 장애물에 대응되는 노드(630)들을 포함할 수 있다. 도 6을 참조하면, 바다에 대응되는 노드(620)들은 밝은 색으로, 장애물에 대응되는 노드(630)들은 어두운 색으로 표시되었다.
장애물에 대응되는 노드(630)는 선박이 각 노드에 대응되는 위치로 운항할 수 없음을 의미한다. 장애물에 대응되는 노드(630)의 분포는 항만 시설의 형태, 접안 시설의 형태에 따라 달라질 수 있다. 장애물은 지형, 건물, 섬, 항만, 선박, 부표, 해상 구조물, 방파제, 사람 등 선박의 운항 시 장애가 될 수 있는 모든 객체를 의미할 수 있다.
한편, 도 6에는 도시되지 않았으나, 장애물 지도(600)의 각 노드(610)에는 속성 정보가 부여될 수 있다. 속성 정보는 각 노드에 대응되는 객체와 관련된 정보를 의미하며, 객체에 대한 정보라면 그 제한이 없다.
객체는 상술한 선박의 운항 시 장애가 될 수 있는 장애물뿐만 아니라, 바다와 같이 선박이 운항할 수 있는 지역도 포함할 수 있다. 따라서, 전술한 바다에 대응되는 노드(620)들에는 바다와 관련된 정보가 부여될 수 있으며, 장애물에 대응되는 노드(630)들에는 장애물과 관련된 정보가 부여될 수 있다. 한편, 육지에 대응되는 노드들에는 육지와 관련된 정보가 부여될 수도 있다.
속성 정보는 객체의 유무, 종류, 위치, 배치 방향, 이동 방향, 및 이동 속도 등 그 제한이 없으며, 장애물의 존재 여부 및 운항 적합 여부에 따른 점수(Score)도 포함할 수 있다.
도 7은 일 실시예에 따른 점수가 부여된 장애물 지도(700)를 나타낸 도면이다. 점수가 부여된 장애물 지도(700)를 비용 지도라고 할 수도 있다.
도 7을 참조하면, 장애물 지도(700)에 포함된 복수의 노드 중 일부 또는 전부에는 장애물의 존재 여부 및 운항 적합 여부에 따른 점수(Score)가 부여될 수 있다.
특정 노드에 부여된 점수는 여러 가지 기준에 따라 결정되는 특정 노드의 운항 적합도를 반영한다. 이에 따라, 만약 하나의 노드에 부여된 점수의 값과 다른 하나의 노드에 부여된 점수의 값이 서로 다른 경우, 각 노드에 대해 결정된 운항 적합도가 서로 다르다는 것을 의미한다.
특정 노드에 대한 운항 적합도는 특정 노드에 장애물이 존재할 확률을 고려하여 결정될 수 있다. 또는, 특정 노드에 대한 운항 적합도는 특정 노드에 선박이 위치할 때 선박이 장애물과 충돌할 확률을 고려하여 결정될 수 있다. 또는, 특정 노드에 대한 운항 적합도는 특정 노드가 장애물에 대응되는 노드로부터 떨어져 있는 거리를 고려하여 결정될 수 있다. 물론, 특정 노드에 대한 운항 적합도는 전술한 3가지 방식들 중 둘 이상을 조합한 방식에 의해 결정될 수 있다.
특정 노드에 대한 운항 적합도가 높다는 것의 의미는 선박이 상기 특정 노드를 경유해서 지나갈 때 장애물과 충돌할 확률이 낮다는 것을 의미할 수 있다. 반대로, 특정 노드에 대한 운항 적합도가 낮다는 것의 의미는 선박이 상기 특정 노드를 경유해서 지나갈 때 장애물과 충돌할 확률이 높다는 것을 의미할 수 있다.
이에 한정되는 것은 아니지만, 본 명세서에 있어서, 더 높은 점수는 더 낮은 운항 적합도를 의미하고, 더 낮은 점수는 더 높은 운항 적합도를 의미하는 것으로 설명한다.
점수는, 이에 한정되는 것은 아니지만, 0-255 사이의 값을 가질 수 있다. 전술한 범위는 예시적으로 나타낸 것이며, 점수의 범위가 전술한 범위로 한정되는 것은 아니다. 점수가 높을수록 장애물 존재 확률이 높거나 운항에 부적합한 것을 의미하고, 점수가 낮을수록 운항에 적합한 것을 의미할 수 있다.
한편, 노드에 부여되는 점수는 장애물에 대응되는 노드와의 거리에 따라 결정될 수 있다. 일 예로, 장애물에 대응되는 노드로부터 거리가 먼 노드일수록 낮은 점수가 부여될 수 있다. 이 경우, 장애물의 특성에 따라 다른 점수 결정 기준이 적용될 수도 있다.
예를 들어, 섬 또는 방파제 등 선박이 접근하기 어려운 특성을 가지는 장애물에 대응되는 노드의 인근 노드에는, 부표 등 선박이 접근하기 용이한 특성을 가지는 장애물에 대응되는 노드의 인근 노드보다 상대적으로 높은 점수가 부여될 수 있다. 또한, 선박이 접근하기 어려운 특성을 가지는 장애물에 대응되는 노드의 인근 노드는 장애물에 대응되는 노드와 거리가 멀어짐에 따라 낮아지는 점수의 폭이 선박이 접근하기 용이한 특성을 가지는 장애물에 대응되는 노드의 인근 노드에서의 점수의 폭보다 작을 수 있다.
일 예에 따른 도 7에서는 노드에 부여된 점수가 높을수록 어두운 색으로 표시하였으며, 노드에 부여된 점수가 낮을수록 밝은 색으로 표시하였다. 도 7을 참조하면, 장애물에 대응되는 노드(710)에는 가장 높은 점수가 부여되므로, 가장 어둡게 표시하였다. 한편, 바다에 대응되는 노드(720, 730, 740)에 대해서는, 부여된 점수가 가장 낮은 노드(720)를 가장 밝은 색으로 표시하였으며, 중간 점수가 부여된 노드(730)를 중간 밝은 색으로, 그리고 높은 점수가 부여된 노드(720)를 약간 밝은 색으로 표시하였다.
도 8은 일 실시예에 따른 선박에 대응되는 노드(810)를 포함하는 장애물 지도(800)에 대한 도면이다.
도 8의 장애물 지도(800) 상에는 선박의 형상(820)도 반영되어 있으나, 이에 한정되는 것은 아니며, 장애물 지도(800) 상에는 선박에 대응되는 노드(810)만 표시될 수 있다.
도 8을 참조하면, 장애물 지도(800) 상의 선박에 대응되는 노드(810)에는 노드(810)에 대응되는 해상에서의 위치에 위치한 선박의 선수 방향(830)이 속성 정보로서 할당될 수 있다.
선수 방향(Heading)은, 선박의 선수가 가리키고 있는 방향을 의미한다. 구체적으로, 선수 방향은 선박을 진행시키려는 방향, 즉 선수미선과 선박을 지나는 기준선(자오선, Meridian line)이 이루는 각도를 의미할 수 있다. 일 예로, 도 8을 참조하면, 선박에 대응되는 노드(810)에는 선수 방향(830)으로 270도 또는 1.5π 값이 할당될 수 있다.
이에 한정되는 것은 아니며, 장애물 지도 상에서 일 기준 방향을 설정한 경우, 선수 방향은 설정된 기준 방향과 선수미선이 이루는 각도를 의미할 수 있다.
장애물 지도는 다양한 방식으로 생성될 수 있다. 일 예로, 장애물 지도는 전자 해도로부터 생성될 수 있으며, 위성 사진 또는 항공 사진 등 이미지를 이용하여 생성될 수도 있다.
일 예로, 이미지를 가공하여 장애물 지도를 생성할 경우, 이미지 세그멘테이션을 이용하여 이미지에 반영된 바다 영역과 장애물 영역을 식별한 후 식별된 영역에 기초하여 장애물 지도를 생성할 수 있다. 구체적으로, 바다 영역에 바다에 대응되는 노드를 배치하고, 장애물 영역에 장애물에 대응되는 노드를 배치시켜 장애물 지도를 생성할 수 있다.
한편, 장애물 지도는 라이다 포인트 클라우드 데이터를 이용하여 생성될 수도 있다. 구체적으로, 라이다 포인트 클라우드에 포함되어 있는 각 포인트들을 기준 평면으로 투영(Projection)하여 2차원으로 표현되는 장애물 지도를 생성할 수 있다. 기준 평면은 평균적 해수면으로 가정할 수 있는 평면을 의미할 수 있다.
라이다 포인트 클라우드를 이용하여 장애물 지도를 생성하기 위해, 선박 또는 항만 시설에는 주변 환경을 감지하기 위한 라이다 센서가 배치될 수 있다. 라이다 센서는 복수 개 배치될 수 있으며, 그 위치에 제한 없이 설치될 수 있다.
한편, 장애물 지도는 카메라 이미지를 이용하여 생성될 수도 있다. 구체적으로, 이미지에 대해 이미지 세그멘테이션을 수행한 후, 세그멘테이션 된 이미지를 기준 평면으로 시점 변환하여 장애물 지도를 생성할 수 있다. 기준 평면은 평균적 해수면으로 가정할 수 있는 평면을 의미할 수 있다.
카메라 이미지를 이용하여 장애물 지도를 생성하기 위해, 선박 또는 항만 시설에는 주변 환경을 촬상하는 카메라가 배치될 수 있다. 카메라는 복수 개 배치될 수 있으며, 그 위치에 제한 없이 설치될 수 있다.
장애물 지도 생성 방법은 이에 한정되는 것은 아니며, 항만 지도를 생성하는 다양한 방식이 이용될 수 있다.
장애물 지도는 외부 서버(300)에서 생성될 수 있다. 외부 서버(300)는 상술한 바와 같이 전자 해도 또는 이미지 데이터를 이용하여 장애물 지도를 생성할 수 있다. 한편, 외부 서버(300)는 항만 시설 또는 선박이 획득한 라이다 포인트 클라우드 데이터 또는 촬상된 이미지를 이용하여 장애물 지도를 생성할 수도 있다.
이에 한정되는 것은 아니며, 장애물 지도는 경로 생성 장치(100)에서 생성될 수도 있다. 구체적으로, 경로 생성 장치(100)는 경로 생성 장치(100)에 저장된 데이터 또는 외부로부터 수신한 데이터를 이용하여 장애물 지도를 생성할 수 있다.
한편, 경로 생성 장치(100)가 선박에 위치하는 경우, 선박의 라이다 센서가 획득한 라이다 포인트 클라우드 데이터 또는 선박의 카메라가 촬상한 이미지를 이용하여 장애물 지도를 생성할 수 있다. 경로 생성 장치(100)가 선박의 외부에 위치하는 경우, 경로 생성 장치(100)는 항만 시설 또는 선박이 획득한 라이다 포인트 클라우드 데이터 또는 촬상된 이미지를 이용하여 장애물 지도를 생성할 수도 있다.
3. 경로 생성 방법 1
도 9는 일 실시예에 따른 경로 생성 방법의 순서도이다.
도 9를 참조하면, 본 발명의 일 실시예에 따른 경로 생성 방법은, 장애물 지도를 획득(S910)하고, 장애물 지도 상에서의 현재 노드 및 접안 노드를 선택(S920)하고, 현재 노드에서의 현재 선수 방향 및 접안 노드에서의 접안 선수 방향을 판단(S930)하고, 기준 거리를 결정(S940)하고, 장애물 지도 상에서의 현재 노드부터 접안 노드까지의 복수의 경유 노드들을 결정(S950)하고, 결정된 경유 노드를 이용하여 접안 경로를 생성(S960)하는 과정으로 수행될 수 있다. 경로 생성 방법과 관련된 구체적인 내용은 후술한다.
먼저 장애물 지도의 획득과 관련하여, 장애물 지도는 경로 생성 장치에 저장되어 있을 수도 있으며, 외부로부터 획득될 수도 있다. 경로 생성 장치에 장애물 지도가 저장되어 있어도 이를 업데이트 하기 위해 외부로부터 새롭게 획득될 수도 있다.
장애물 지도 상에서의 현재 노드 및 접안 노드의 선택과 현재 노드에서의 현재 선수 방향 및 접안 노드에서의 접안 선수 방향의 판단과 관련해서는 도 10을 참조하여 설명한다.
도 10은 일 실시예에 따른 장애물 지도(1000)를 나타낸 도면이다.
도 10을 참조하면, 현재 노드(1020)는 장애물 지도(1000) 상에서 선박의 현재 위치에 대응되는 노드를 의미할 수 있다. 현재 노드(1020)는 경로의 시작 위치에 대응될 수 있다.
도 10의 장애물 지도(1000)에는 선박의 현재 위치에 대응되는 장애물 지도(1000) 상의 위치(1010)에 선박의 형상이 반영되어 있으나, 이에 한정되는 것은 아니며, 장애물 지도에는 선박의 형상이 반영되어 있지 않을 수도 있다.
경로 생성 장치는 선박의 현재 위치에 관한 정보를 획득하기 위하여, 센서 모듈을 통해 현재의 선박의 위치에 관한 좌표 등을 수신할 수 있다. 아울러, 경로 생성 장치는 획득된 현재 선박의 위치에 관한 정보를 이용하여 장애물 지도 상에서 현재 노드를 선택할 수 있다.
장애물 지도 상에서 현재 노드를 선택하기 위하여, 장애물 지도의 스케일 및 절대 좌표계에 대한 장애물 지도의 매핑 등이 경로 생성 장치에 의해 수행될 수도 있다.
현재 노드를 선택하기 위한 선박의 현재 위치 판단과 관련하여, 선박의 현재 위치는 선박의 중심점의 위치를 기준으로 판단될 수 있다. 이에 한정되는 것은 아니며, 선박의 현재 위치는 선박의 선수 또는 선미 등 선박의 어느 한 지점을 기준으로 판단될 수도 있다.
한편, 경로 생성 장치는 외부로부터 현재 노드(1020)가 선택된 장애물 지도(1000)를 획득할 수도 있다.
도 10을 참조하면, 접안 노드(1050)는 장애물 지도(1000) 상에서 선박의 접안 위치에 대응되는 노드를 의미할 수 있다. 접안 노드(1050)는 경로의 종료 위치에 대응될 수 있다.
도 10의 장애물 지도(1000)에는 선박의 접안 위치에 대응되는 장애물 지도(1000) 상의 위치(1040)에 선박의 형상이 반영되어 있으나, 이에 한정되는 것은 아니며, 장애물 지도에는 선박의 형상이 반영되어 있지 않을 수도 있다.
선박의 접안 위치는 접안 시설에서 선박이 접안될 위치를 의미하며, 경로 생성 장치에 저장된 항만에 대한 데이터 또는 외부 서버로부터 획득된 데이터에 기초하여 판단될 수 있다.
접안 노드를 선택하기 위한 선박의 접안 위치 판단과 관련하여, 선박의 접안 위치는 선박이 접안 시설에 접안하였을 경우 선박의 중심점의 위치를 기준으로 판단할 수 있다. 이에 한정되는 것은 아니며, 선박의 접안 위치는 선박의 선수 또는 선미 등 선박의 어느 한 지점을 기준으로 판단될 수도 있다. 한편, 현재 노드를 선택하기 위한 선박의 기준 위치와 접안 노드를 선택하기 위한 선박의 기준 위치를 동일하게 설정할 수도 있다.
한편, 경로 생성 장치는 외부로부터 접안 노드(1050)가 선택된 장애물 지도(1000)를 획득할 수도 있다.
선택된 현재 노드(1020)에는 선박의 현재 선수 방향(1030)이 할당될 수 있다. 현재 선수 방향(1030)은 현재 시점에서의 선박의 선수 방향을 의미하며, 센서 모듈로부터 획득된 데이터를 이용하여 판단될 수 있다. 장애물 지도 상의 노드에 선수 방향을 할당하는 것과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
선택된 접안 노드(1050)에는 접안 선수 방향(1060)이 할당될 수 있다. 접안 선수 방향(1060)은 선박이 접안 시설에 접안될 때의 선수 방향을 의미한다. 접안 선수 방향(1060)은 경로 생성 장치에 저장된 항만에 대한 정보 또는 외부로부터 획득된 데이터에 기초하여 판단할 수 있다. 외부로부터 접안 위치에 대한 정보만 수신된 경우, 접안 선수 방향(1060)은 장애물 지도(1000) 상의 항만에 대한 정보(항만의 형태 등)에 기초하여 선박이 접안 위치에 위치할 때의 예상되는 선수 방향으로부터 판단될 수도 있다 장애물 지도 상의 노드에 선수 방향을 할당하는 것과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
도 11은 도 10의 장애물 지도(1000) 상에서 기존의 접안 경로 생성 방법을 수행하여 생성된 경로(1070)를 나타낸 도면이다.
일반적으로 경로를 생성하기 위해 3D A* 알고리즘이 이용될 수 있으며, 도 11은 기존의 3D A* 알고리즘만을 이용하여 생성된 현재 노드(1020)부터 접안 노드(1050)까지의 경로(1070)를 나타낸 것이다.
도 11을 참조하면, 기존의 3D A* 알고리즘은 현재 노드(1020)부터 접안 노드(1050)까지의 최단 거리 경로(1070)를 생성하는 바, 생성된 경로(1070)에는 침로 변화 구간(1080)이 접안 시설 직전에 짧은 길이로 존재하게 된다.
이에 따라, 일반적인 3D A* 알고리즘만을 이용하는 접안 경로 생성 방법으로 생성된 접안 경로를 따라 선박을 운항할 경우 작은 경로 이탈에도 선박과 접안 시설 간의 충돌 위험성이 높아지는 문제점이 있었다. 이를 해결하기 위해 본 발명은 후술할 기준 거리를 이용하여 접안 경로를 생성하고자 한다.
도 12는 일 실시예에 따른 기준 거리(1110)를 설명하기 위한 도면이다.
기준 거리(1110)는 선박이 접안 시설에 접안할 때, 선박의 선수 방향과 접안 선수 방향(1160)과의 차이가 커서 선박이 접안 시설에 바로 진입하기 어렵거나 위험한 경우, 선박이 360도 회두하여 재진입할 수 있을 만큼의 여유를 고려한 거리를 의미한다.
기준 거리(1110)를 고려한 접안 경로 생성 시, 경로 생성 장치는 접안 노드(1150)로부터 기준 거리 범위(1120) 이내에서는 선박의 선수 방향의 변화를 최소화한 경로를 생성하는 바, 생성된 경로를 따라 선박을 운항할 때 선박과 접안 시설 간의 충돌 위험을 줄일 수 있다.
구체적으로, 기준 거리(1110)는 선박의 길이, 선박의 너비, 선박의 무게, 선박의 조타 성능, 접안 시설의 길이(1170) 중 적어도 하나를 고려하여 산출될 수 있다. 일 예로, 선박의 길이가 길수록, 선박의 너비가 넓을수록, 선박의 무게가 무거울수록, 선박의 조타 성능이 낮을수록, 접안 시설의 길이(1170)가 길수록 기준 거리(1110)가 길어질 수 있다. 한편, 기준 거리(1110)는 선박의 선회 반경을 고려하여 산출될 수도 있다. 이 경우, 선박의 선회 반경이 길수록 기준 거리(1110)가 길어질 수 있다. 한편, 기준 거리(1110)는 접안 시설의 길이(1170)의 두배와 선박의 길이의 다섯배의 합산 길이를 고려하여 산출될 수도 있다.
기준 거리(1110)는 경로 생성 장치에서 산출될 수 있다. 구체적으로, 경로 생성 장치는 경로 생성 장치에 저장된 선박에 대한 정보 및 항만에 대한 정보를 이용하여 기준 거리(1110)를 산출할 수 있다. 이 경우, 선박에 대한 정보 및/또는 항만에 대한 정보는 외부로부터 수신된 데이터일 수 있다.
한편, 기준 거리(1110)는 외부 서버에서 산출될 수도 있다. 구체적으로, 외부 서버는 외부 서버에 저장된 항만에 대한 정보와, 선박으로부터 수신한 선박에 대한 정보를 이용하여 기준 거리(1110)를 산출할 수 있다. 외부 서버에서 기준 거리가 산출된 경우, 외부 서버는 산출된 기준 거리를 경로 생성 장치에 전송할 수 있다.
도 12를 참조하면, 후술할 접안 경로를 생성하기 위해 접안 노드(1150)로부터 기준 거리(1110)만큼 떨어진 위치에 대응되는 노드인 기준 거리 노드(1130)가 이용될 수 있다.
장애물 지도 상에서의 현재 노드부터 접안 노드까지의 복수의 경유 노드들의 결정 및 접안 경로 생성과 관련해서는 도 13, 도 14 및 도 15를 참조하여 설명한다.
도 13, 도 14 및 도 15는 일 실시예에 따른 장애물 지도(1200) 상에서의 접안 경로 및 경유 노드를 나타낸 도면이다.
경로는 적어도 둘 이상의 노드들의 순서를 의미할 수 있으며, 경로를 결정한다는 것은 노드들 및 그 순서를 결정한다는 것을 의미할 수 있다.
경유 노드는 선박이 경로를 따라서 현재 위치에서 접안 위치까지 이동하는 경우 해당 선박의 특정 위치에 대응되는 장애물 지도 상의 노드를 의미할 수 있다. 이때, 상기 특정 위치는 선박의 선두, 선미 혹은 중심점일 수 있다. 다만, 상기 특정 위치는 선박의 현재 위치에 대응되는 현재 노드를 결정할 때 사용된 위치와 동일하게 결정하는 것이 바람직하다. 예를 들어, 만약 현재 노드를 결정할 때 선박의 중심점이 사용되었다면, 경유 노드를 결정할 때에도 선박의 중심점이 사용되는 것이 바람직하다.
장애물 지도 상에서 경유 노드를 결정하기 위해 경유 노드 결정 방법을 이용할 수 있다. 일 예에 따른 경유 노드 결정 방법은, 제1 경유 노드 결정 방법과 제2 경유 노드 결정 방법을 포함할 수 있다. 구체적인 경유 노드 결정 방법은 도 13을 참조하여 설명한다.
도 13을 참조하면, 제1 경유 노드 결정 방법은 현재 선수 방향(1220-1)을 고려하여 현재 노드(1210-1)부터 기준 거리 노드(1230) 중 하나까지의 복수의 제1 경유 노드(1240-1)들을 결정하는 방법이다.
이 경우, 제1 경유 노드(1240-1)는 선박의 최대 선회각을 고려하여 결정될 수 있다. 구체적으로, 현재 노드(1210-1) 바로 다음의 제1 경유 노드(1240-1)는 현재 선수 방향(1220-1)을 기준으로 최대 선회각 이내의 노드들 중에서 결정될 수 있다.
제1 경유 노드 결정 방법은 결정된 제1 경유 노드(1240-1) 각각에서의 예상 선수 방향도 결정할 수 있다. 도 13에는 도시되지 않았으나, 결정된 예상 선수 방향은 대응되는 경유 노드에 할당될 수 있다. 특정 경유 노드에 대한 예상 선수 방향은 예상 경로를 따라서 이동하는 선박이 상기 특정 경유 노드에 대응되는 위치하는 것을 가정할 때 상기 대응되는 위치에 있는 선박의 예상되는 선수 방향을 의미한다. 결정된 제1 경유 노드(1240-1) 각각에 예상 선수 방향이 할당되어 있는 바, 결정된 제1 경유 노드(1240-1) 바로 다음의 후속 제1 경유 노드는, 결정된 제1 경유 노드(1240-1)에 할당된 예상 선수 방향을 기준으로 최대 선회각 이내의 노드들 중에서 결정될 수 있다.
선박의 최대 선회각은 선속에 비례하고 선회 반경에 반비례하는 값일 수 있다. 이 경우 선회 반경은 선박의 길이의 다섯배로 설정될 수 있다. 제1 경유 노드(1240-1)를 결정함에 있어서 최대 선회각을 고려하기 위해 각 노드에서의 최대 선회각, 선속, 및/또는 선회 반경이 산출될 수도 있다.
도 13에는 도시되지 않았으나, 제1 경유 노드 결정 방법은, 상술한 장애물 지도(1200)의 각 노드에 부여된 점수를 고려하여 제1 경유 노드(1240-1)를 결정할 수도 있다. 구체적으로, 제1 경유 노드 결정 방법은, 현재 노드(1210-1) 또는 결정된 제1 경유 노드(1240-1) 바로 다음의 후속 제1 경유 노드를 결정할 때, 후속 제1 경유 노드에 부여된 점수를 고려하여 제1 경유 노드를 결정할 수 있다. 일 예로, 예비 후속 제1 경유 노드들 중에서 해당 노드에 부여된 점수가 가장 낮은 노드가 후속 제1 경유 노드로 결정될 수 있다.
또한, 제1 경유 노드 결정 방법은 접안 노드(1280)까지의 남은 거리를 고려하여 제1 경유 노드(1240-1)를 결정할 수도 있다. 구체적으로, 제1 경유 노드 결정 방법은, 현재 노드(1210-1) 또는 결정된 제1 경유 노드(1240-1)의 바로 다음의 후속 제1 경유 노드를 결정할 때, 후속 제1 경유 노드부터 접안 노드(1280)까지의 남은 거리가 작아지도록 후속 제1 경유 노드를 결정할 수 있다.
한편, 도 13에서는, 제1 경유 노드(1240-1)들 간에 거리가 있도록 제1 경유 노드(1240-1)들이 결정되었으나, 제1 경유 노드(1240-1)들은 현재 노드(1210-1)부터 기준 거리 노드(1230) 중 하나까지 연속적으로 결정될 수도 있다.
제1 경유 노드(1240-1)를 결정하기 위해 고려되는 기준 거리 노드(1230)는 접안 노드(1280)로부터 기준 거리만큼 떨어진 위치에 대응되는 적어도 하나의 노드를 의미한다. 기준 거리 노드(1230) 중 제1 경유 노드(1240-1)로 결정된 노드를 기준 거리 경유 노드(1250-1)로 설정할 수 있다. 이 경우, 선박이 기준 거리 경유 노드(1250-1)에 위치할 때의 선수 방향이 예상 선수 방향(1260-1)으로 기준 거리 경유 노드(1250-1)에 할당될 수 있다.
제1 경유 노드 결정 방법은 후술할 제2 경유 노드 결정 방법에 따라 제2 경유 노드(1270-1)들이 결정될 수 있도록 제1 경유 노드(1240-1)들을 결정할 수 있다. 구체적인 내용은 후술한다.
도 13을 참조하면, 제2 경유 노드 결정 방법은 접안 선수 방향(1290)을 고려하여 기준 거리 경유 노드(1250-1)부터 접안 노드(1280)까지의 복수의 제2 경유 노드(1270-1)들을 결정하는 방법이다.
이 경우, 제2 경유 노드(1270-1)는 선박의 최대 선회각을 고려하여 결정될 수 있다. 구체적으로, 기준 거리 경유 노드(1250-1) 바로 다음의 제2 경유 노드(1270-1)는 기준 거리 경유 노드(1250-1)에 할당된 예상 선수 방향(1260-1)을 기준으로 최대 선회각 이내의 노드들 중에서 결정될 수 있다.
제2 경유 노드 결정 방법은 결정된 제2 경유 노드(1270-1) 각각에서의 예상 선수 방향도 결정할 수 있다. 도 13에는 도시되지 않았으나, 결정된 예상 선수 방향은 대응되는 경유 노드에 할당될 수 있다. 결정된 제2 경유 노드(1270-1) 각각에 예상 선수 방향이 할당되어 있는 바, 결정된 제2 경유 노드(1270-1) 바로 다음의 후속 제2 경유 노드를 결정할 때에도, 결정된 제2 경유 노드(1270-1)에서의 예상 선수 방향을 기준으로 최대 선회각 이내의 노드들 중에서 후속 제2 경유 노드가 결정될 수 있다.
또한, 제2 경유 노드 결정 방법은 접안 노드(1280)에 대응되는 제2 경유 노드(1270-1)에 할당될 예상 선수 방향이 접안 선수 방향(1290)과 일치하도록 제2 경유 노드(1270)들을 결정할 수 있다.
도 13에는 도시되지 않았으나, 제2 경유 노드 결정 방법은, 상술한 장애물 지도(1200)의 각 노드에 부여된 점수를 고려하여 제2 경유 노드(1270-1)를 결정할 수도 있다. 구체적으로, 제2 경유 노드 결정 방법은, 기준 거리 경유 노드(1250-1) 또는 결정된 제2 경유 노드(1270-1) 바로 다음의 후속 제2 경유 노드를 결정할 때, 후속 제2 경유 노드에 부여된 점수를 고려하여 제2 경유 노드를 결정할 수 있다. 일 예로, 예비 후속 제2 경유 노드들 중 부여된 점수가 가장 낮은 노드가 후속 제2 경유 노드로 결정될 수 있다.
또한, 제2 경유 노드 결정 방법은, 접안 노드(1280)까지의 남은 거리를 고려하여 제2 경유 노드(1270-1)를 결정할 수도 있다. 구체적으로, 제2 경유 노드 결정 방법은, 기준 거리 경유 노드(1250-1) 또는 결정된 제2 경유 노드(1270-1) 바로 다음의 후속 제2 경유 노드를 결정할 때, 후속 제2 경유 노드부터 접안 노드(1280)까지의 남은 거리가 작아지도록 후속 제2 경유 노드를 결정할 수 있다.
한편, 도 13에서는, 제2 경유 노드(1270-1)들 간에 거리가 있도록 제2 경유 노드(1270-1)들이 결정되었으나, 제2 경유 노드(1270-1)들은 기준 거리 경유 노드(1250-1)부터 접안 노드(1280)까지 연속적으로 결정될 수도 있다.
제1 경유 노드 결정 방법과 비교하여 제2 경유 노드 결정 방법은 기준 거리 경유 노드(1250-1) 또는 결정된 제2 경유 노드(1270-1)의 바로 다음의 후속 제2 경유 노드를 결정할 때, 후속 제2 경유 노드에 할당될 예상 선수 방향과 접안 선수 방향(1290)과의 차이를 고려하여 후속 제2 경유 노드를 결정할 수 있다. 일 예로, 예비 후속 제2 경유 노드들 중에서 해당 노드에 할당될 예상 선수 방향과 접안 선수 방향(1290)과의 차이가 가장 작은 노드가 후속 제2 경유 노드로 결정될 수 있다.
한편, 제2 경유 노드 결정 방법은, 후속 제2 경유 노드에 할당될 예상 선수 방향과 접안 선수 방향(1290)과의 차이만 고려하여 후속 제2 경유 노드를 결정할 수 있다. 또는, 제2 경유 노드 결정 방법은, 예비 후속 제2 경유 노드들 중에서 해당 노드에 할당될 예상 선수 방향이 접안 선수 방향(1290)과 동일한 노드를 후속 제2 경유 노드로 결정할 수도 있다.
즉, 제2 경유 노드 결정 방법에 따르면, 제2 경유 노드(1270-1)들에 할당될 예상 선수 방향과 접안 선수 방향(1290)의 차이가 작거나 없도록 제2 경유 노드(1270-1)들이 결정되어야 한다. 이에 따라, 제1 경유 노드 결정 방법은, 제2 경유 노드 결정 방법을 통해 제2 경유 노드(1270-1)들이 결정될 수 있는지 여부도 고려하여 제1 경유 노드(1240-1)들을 결정할 수 있다.
구체적으로, 제1 경유 노드 결정 방법을 통해 제1 경유 노드(1240-1) 및 기준 거리 경유 노드(1250-1)가 결정되었어도, 제2 경로 생성 방법을 이용하여 기준 거리 경유 노드(1250-1)에서부터 접안 노드(1280)까지의 제2 경유 노드(1270-1)들을 결정할 수 없을 경우, 결정된 제1 경유 노드들 중 적어도 하나의 제1 경유 노드가 새로 결정되거나, 새로운 제1 경유 노드가 추가로 결정될 수도 있다.
제1 경유 노드가 새로 결정되는 것과 관련해서는 도 14 및 도 15를 참조하여 설명한다.
도 14를 참조하면, 현재 노드(1210-2)가 기준 거리 노드(1230)에 가까이 위치하고, 현재 선수 방향(1220-2)이 접안 선수 방향(1290)과 차이가 큰 조건에서, 제1 경로 생성 방법을 이용하여 현재 노드(1210-2)부터 기준 거리 노드(130)중 하나까지 최단 경로를 생성할 경우, 선박의 조타 성능의 한계 등으로 인해 기준 거리 경유 노드(1250-2) 및 기준 거리 경유 노드(1250-2)에 할당된 예상 선수 방향(1260-2)은 도 14와 같이 결정될 수밖에 없다.
기준 거리 경유 노드(1250-2) 및 기준 거리 경유 노드(1250-2)에 할당된 예상 선수 방향(1260-2)이 도 14와 같이 결정된 상태에서, 상술한 제2 경유 노드 결정 방법을 이용하여 제2 경유 노드(1270-2)들을 결정할 경우, 제2 경유 노드(1270-2)는 접안 노드(1280)까지 생성되지 못한다. 즉, 제2 경유 노드(1270-1)는 제2 경유 노드 결정 방법을 통해 결정될 수 없다.
이에 따라, 도 14와 같은 현재 노드(1210-2) 및 현재 선수 방향(1220-2) 조건에서는, 새로운 제1 경유 노드를 결정해야 한다.
도 15를 참조하면, 현재 노드(1210-2)가 기준 거리 노드(1230)에 가까이 위치하고, 현재 선수 방향(1220-2)이 접안 선수 방향(1290)과 차이가 큰 조건 등에서 제1 경유 노드 결정 방법은 선박이 기준 거리 밖에서 회두하여 기준 거리 노드(1230)에 접근할 수 있도록 제1 경유 노드(1240-3)들을 결정할 수 있다.
이에 따라, 도 15에서와 같이 제2 경유 노드 결정 방법은 기준 거리 경유 노드(1250-3)부터 접안 노드(1280)까지의 제2 경유 노드(1270-3)들을 결정할 수 있다.
상술한 경유 노드 결정 방법은 3D A* 알고리즘을 기반으로 구현될 수도 있다.
구체적으로, 상술한 경유 노드 결정 방법을 통해 생성하고자 하는 경로인 예상 접안 경로를 획득하기 위해 예상 접안 경로 비용 함수를 3D A* 알고리즘에서 고려되는 비용 함수로 설정할 수 있다.
이하에서는 기준 거리 및 예상 접안 경로 비용 함수를 이용하여 장애물 지도 상에서 현재 노드부터 접안 노드까지의 복수의 경유 노드들을 결정하는 방법을 설명하고자 한다.
경유 노드 결정 방법이 제1 경유 노드 결정 방법 및 제2 경유 노드 결정 방법을 포함하는 것과 같이 예상 접안 경로 비용 함수는 제1 예상 접안 경로 비용 함수 및 제2 예상 접안 경로 비용 함수를 포함할 수 있다.
제1 경유 노드 결정 방법으로 생성하고자 하는 제1 예상 접안 경로에 대해 적용할 수 있는 제1 예상 접안 경로 비용 함수는, 비용 함수 f=g+h 에서, g(n)과 h(n)이 각각 다음과 같이 정의될 수 있다.
g(n)=ωm*Cm(n)+ ωc*Cc(n)
h(n)=ωd*Cd(n)
이때, n은 현재 노드로부터 제1 경유 노드의 순번을 나타내며, 현재 노드에서 n은 0이 될 수 있다.
한편, ωm, ωc, 및 ωd는 Cm, Cc, 및 Cd 각각에 대한 가중치 값이다.
Cm 은 장애물 지도의 각 노드에 부여된 점수이며, 장애물로부터 안전한 위치를 고려하기 위함이다. Cc는 라디안 단위의 현재 선수 방향 또는 예상 선수 방향을 기준으로 한 다음 노드까지의 각도 변화량이며, 선박의 제한된 조종성능을 반영하기 위함이다. Cd는 경유 노드부터 접안 노드까지의 남은 거리이며, 휴리스틱 값을 의미한다.
상술한 비용 함수를 이용하여 현재 노드부터 기준 거리 경유 노드까지의 제1 경유 노드를 결정할 수 있다.
예를 들어, n번째 경유 노드를 기준으로 바로 다음 후속 노드(예를 들어, n+1번째 경유 노드)를 결정하고자 할 때, n번째 경유 노드를 기준으로 복수의 후속 노드 후보들 각각에 대해서 비용함수에 의해 결정된 비용값들이 산출될 수 있으며, 산출된 비용값이 가장 작은 후속 노드 후보가 상기 n+1번째 경유 노드로 결정될 수 있다. 즉, n번째 경유 노드를 기준으로 n+1번째의 후속 경유 노드를 결정함에 있어서, 장애물로부터 안전한 위치를 고려하기 위한 장애물 지도의 각 노드에 부여된 점수, 선박의 제한된 조종성능을 반영하기 위한 라디안 단위의 현재 선수 방향 또는 예상 선수 방향을 기준으로 한 다음 노드까지의 각도 변화량 및 경유 노드부터 접안 노드까지의 남은 거리가 고려될 수 있다. 이러한 과정이 현재 노드로부터 기준 거리 경유 노드까지 반복되어 복수의 제1 경유 노드들이 결정될 수 있다.
한편, 제2 경유 노드 결정 방법으로 생성하고자 하는 제2 예상 접안 경로에 대해 적용할 수 있는 제2 예상 접안 경로 비용 함수는, 비용 함수 f=g+h 에서, g(n)과 h(n)이 각각 다음과 같이 정의될 수 있다.
g(n)=ωm*Cm(n)+ ωc*Cc(n)
h(n)=ωd*Cd(n)+ωb*Cb(n)*A
이때, n은 제2 경유 노드의 순번을 나타내며, 기준 거리 경유 노드에서 n은 0이 될 수 있다.
한편, ωm, ωc, ωd 및 ωb는 Cm, Cc, Cd 및 Cb 각각에 대한 가중치 값이다. Cm, Cc, Cd와 관련해서는 상술한 바 있으므로 중복 설명은 생략한다.
Cb는 경유 노드에서의 라디안 단위의 예상 선수 방향과 접안 선수 방향과의 차이 값이며, 예상 선수 방향과 접안 선수 방향과의 차이를 최소화하기 위함이다.
A는 제2 경유 노드 결정 방법을 이용함에 있어서, 예상 선수 방향과 접안 선수 방향의 차이에 대한 가중치를 높이기 위해 설정된 값이다. A는 실수 형태의 최대 값이 부여될 수 있다. 일 예로, A에 무한대 값이 부여될 경우, 제2 경유 노드를 결정함에 있어서 Cb 값만이 고려되도록 할 수 있다. A에 무한대 값(설정할 수 있는 가장 큰 실수값이어도 무방)을 부여함로으써, 전술한 바와 같이, 제2 노드 결정 방법은 후속 경유 노드를 결정할 때, 후속 제2 경유 노드에 할당될 예상 선수 방향과 접안 선수 방향(1290)과의 차이만을 고려하여 결정하는 것과 같이 해석될 수 있다. 다만, A에 무한대 값을 대입하는 대신 적당히 큰 크기의 실수가 부여되는 경우, 후속 제2 경유 노드에 할당될 예상 선수 방향과 접안 선수 방향(1290)과의 차이를 가장 크게 고려하되, 장애물로부터 안전한 위치를 고려하기 위한 장애물 지도의 각 노드에 부여된 점수, 선박의 제한된 조종성능을 반영하기 위한 라디안 단위의 현재 선수 방향 또는 예상 선수 방향을 기준으로 한 다음 노드까지의 각도 변화량 및 경유 노드부터 접안 노드까지의 남은 거리도 함께 고려할 수 있게 된다.
한편, 예상 선수 방향과 접안 선수 방향의 차이가 많이 나게 되는 경우, 궁극적으로 후속 노드가 결정될 수 없게 되기 때문에, 제1 경유 노드 결정 방법에 따라 '새로운' 제1 경유 노드들의 세트가 결정될 수 있으며, 이러한 루프가 반복됨에 따라서, 궁극적으로 본 출원에 의해 달성하고자 하는 목적이 달성될 수 있으며, 도 11에 도시된 바와 같은 충돌 위험이 큰 경로 대신 도 13 및 도 15에 도시된 바와 같은 안전한 경로가 찾아질 수 있게 된다.
상술한 비용 함수를 이용하여 기준 거리 경유 노드부터 접안 노드까지의 제2 경유 노드를 결정할 수 있다.
정리하면, 3D A* 알고리즘을 기반으로 한 경유 노드 결정 방법의 예상 접안 경로 비용 함수는 f=g+h 에서, g(n)과 h(n)이 각각 다음과 같이 정의될 수 있다.
g(n)=ωm*Cm(n)+ ωc*Cc(n)
h(n)=ωd*Cd(n)+ωb*Cb(n)*A
이때, n은 경유 노드의 순번을 나타내며, 현재 노드에서 n은 0이 될 수 있다.
결과적으로, 현재 노드로부터 기준 거리에 배치되는 경유 노드(기준 거리 경유 노드)를 결정해 나가는 방법과 기준 거리 경유 노드에서부터 접안 위치까지 결정해 나가는 방법이 서로 달라지게 된다.
보다 구체적으로, 후속 노드에 부여되는 예상 선수 각도와 접안 노드에 부여되는 접안 각도 사이의 차이를 더 고려한다는 점이 제2 경유 노드 결정 방법과 제1 경유 노드 결정 방법 사이의 차이점이 된다. 나아가, 후속 노드에 부여되는 예상 선수 각도와 접안 노드에 부여되는 접안 각도 사이의 차이점에 대한 가중치값이 매우 크게 설정되어 마치 제1 경유 노드 결정 방법에서 고려되던 값들(예를 들어, 장애물로부터 안전한 위치를 고려하기 위한 장애물 지도의 각 노드에 부여된 점수, 선박의 제한된 조종성능을 반영하기 위한 라디안 단위의 현재 선수 방향 또는 예상 선수 방향을 기준으로 한 다음 노드까지의 각도 변화량 및 경유 노드부터 접안 노드까지의 남은 거리)에 비용함수의 함수값에 미치는 영향을 없애거나 혹은 매우 작게 한다는 점이 제2 경유 노드 결정 방법과 제1 경유 노드 결정 방법 사이의 차이가 된다.
상술한 비용 함수를 이용하여 현재 노드부터 접안 노드까지의 복수의 경유 노드들이 결정될 수 있다.
구체적으로, 경유 노드들은 상술한 예상 접안 경로 비용 함수 및 도 16의 알고리즘을 이용하여 결정될 수 있다.
도 16은 3D A* 알고리즘을 기반으로 경유 노드 및 경로를 획득하는 예시적 알고리즘이다.
경로 생성 장치는 접안 경로를 생성하기 위해 현재 노드, 접안 노드 및 경유 노드들을 이용할 수 있다.
구체적으로, 경로 생성 장치는 현재 노드, 경유 노드 및 접안 노드를 순차적으로 연결하여 경로를 생성할 수 있다. 이에 한정되는 것은 아니며, 경로 생성 장치는 경유 노드들 중 운항에 적합한 일부 경유 노드를 선택하고, 현재 노드, 선택된 경유 노드 및 접안 노드를 순차적으로 연결하여 경로를 생성할 수 있다. 경로 생성 장치는 노드들을 순차적으로 연결하여 경로를 생성함에 있어서 각 노드에 할당된 선수 방향을 고려할 수 있다.
한편, 경로 생성 장치는 경유 노드에 대한 근사 곡선을 산출하여 경로를 생성할 수도 있다. 근사 곡선은 현재 선수 방향 및 접안 선수 방향을 고려하여 현재 노드 및 접안 노드를 지나도록 산출될 수 있다. 근사 곡선의 경유 노드에 대한 근사 정도는 선박에 대한 정보에 기초하여 결정될 수 있다.
한편, 기준 거리 범위 이내에 장애물이 존재하는 등으로 인해 상술한 경유 노드 결정 방법을 이용하여 상술한 조건을 만족하는 경유 노드들을 결정하지 못할 경우, 경로 생성 장치는 경로를 생성할 수 없다는 결과를 출력할 수도 있다.
4. 경로 생성 방법 2
도 17은 일 실시예에 따른 경로 생성 방법의 순서도이다.
도 17을 참조하면, 본 발명의 일 실시예에 따른 경로 생성 방법은, 장애물 지도를 획득(S1410)하고, 장애물 지도 상에서의 현재 노드 및 접안 노드를 선택(S1420)하고, 현재 노드에서의 현재 선수 방향 및 접안 노드에서의 접안 선수 방향을 판단(S1430)하고, 기준 거리를 결정(S1440)하고, 장애물 지도 상에서 기준 거리 경유 노드를 결정(S1450)하고, 장애물 지도 상에서의 현재 노드부터 기준 거리 경유 노드까지의 복수의 제3 경유 노드들을 결정(S1460)하고, 장애물 지도 상에서의 기준 거리 경유 노드부터 접안 노드까지의 복수의 제4 경유 노드들을 결정(S1470)하고, 결정된 제3 경유 노드 및 제4 경유 노드를 이용하여 접안 경로를 생성(S1480)하는 과정으로 수행될 수 있다. 경로 생성 방법과 관련된 구체적인 내용은 후술한다.
장애물 지도의 획득, 장애물 지도 상에서의 현재 노드 및 접안 노드의 선택, 현재 노드에서의 현재 선수 방향 및 접안 노드에서의 접안 선수 방향의 판단, 기준 거리의 결정 및 경유 노드를 이용한 접안 경로 생성과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
장애물 지도 상에서의 기준 거리 경유 노드 결정과 관련해서는 도 18을 참조하여 설명한다.
도 18은 일 실시예에 따른 기준 거리 경유 노드 결정 방법을 설명하기 위한 도면이다.
도 15를 참조하면, 기준 거리 경유 노드 결정 방법은, 장애물 지도(1500) 상의 기준 거리 노드(1550) 중 하나인 기준 거리 경유 노드(1580)를 결정하는 방법이다. 구체적으로, 기준 거리 경유 노드(1280)는 장애물 지도(1500) 상에서 접안 노드(1520)의 위치, 접안 선수 방향(1530), 기준 거리(1540), 접안 임계 각도(1560), 및 선박에 대한 정보 중 적어도 하나를 고려하여 결정될 수 있다.
접안 임계 각도(1560)는 접안 위치로부터 기준 거리 이내에서의 선박의 변침을 최소화하기 위한 임계 각도를 의미한다.
접안 임계 각도(1560)는 선박에 대한 정보 및 항만에 대한 정보 중 적어도 하나를 고려하여 결정될 수 있다. 일 예로, 선박의 조타 성능이 높은 경우 접안 임계 각도(1560)가 클 수 있고, 선박의 조타 성능이 낮은 경우 접안 임계 각도(1560)가 작을 수 있다. 한편, 선박의 선회 반경이 작을수록 접안 임계 각도(1560)가 클 수 있고, 선회 반경이 클수록 접안 임계 각도(1560)가 작을 수 있다. 한편, 접안 시설의 길이가 짧을수록 접안 임계 각도(1560)가 클 수 있고, 접안 시설의 길이가 길수록 접안 임계 각도(1560)가 작을 수 있다. 한편, 접안 임계 각도(1560)는 0도로 결정될 수도 있다.
일 예로, 기준 거리 경유 노드 결정 방법은 접안 노드(1520)에서 접안 선수 방향(1530) 또는 접안 선수 방향(1530)의 반대 방향으로 연장된 선을 기준으로 접안 임계 각도 범위(1570) 내에 위치한 기준 거리 노드(1550) 중 하나를 기준 거리 경유 노드(1580)로 결정할 수 있다. 이에 한정되는 것은 아니며, 기준 거리 경유 노드 결정 방법은 접안 노드(1520)에서 접안 선수 방향(1530) 또는 접안 선수 방향(1530)의 반대 방향으로 연장된 선 상에 있는 기준 거리 노드(1550) 중 하나를 기준 거리 경유 노드(1580)로 결정할 수도 있다.
도 18을 참조하면, 결정된 기준 거리 경유 노드(1580)에는 기준 거리 선수 방향(1590)이 할당될 수 있다. 기준 거리 선수 방향(1590)은 기준 거리 경유 노드(1580)에서의 예상 선수 방향을 의미하며, 기준 거리 경유 노드(1580)의 위치, 접안 노드(1520)의 위치, 접안 선수 방향(1530), 기준 거리(1540), 접안 임계 각도(1560), 및 선박에 대한 정보 중 적어도 하나를 고려하여 결정될 수 있다.
일 예로, 기준 거리 선수 방향(1590)은 기준 거리 경유 노드(1580)에서 접안 노드(1520)를 향하는 방향으로 결정될 수 있다. 이에 한정되는 것은 아니며, 기준 거리 선수 방향(1590)은 접안 선수 방향(1530)과의 차이가 접안 임계 각도(1560) 이내가 되도록 결정될 수도 있다.
접안 노드(1520)에서 접안 선수 방향(1530) 또는 접안 선수 방향(1530)의 반대 방향으로 연장된 선 상에 있는 기준 거리 노드(1550)를 기준 거리 경유 노드(1580)로 결정한 경우, 기준 거리 선수 방향(1590)은 접안 선수 방향(1530)과 동일할 수 있다.
장애물 지도 상에서의 현재 노드부터 기준 거리 경유 노드까지의 복수의 제3 경유 노드 결정 및 장애물 지도 상에서의 기준 거리 경유 노드부터 접안 노드까지의 복수의 제4 경유 노드 결정과 관련해서는 도 19를 참조하여 설명한다.
도 19는 일 실시예에 따른 장애물 지도 상에서의 각 노드 및 생성된 접안 경로를 나타낸 도면이다.
현재 노드, 접안 노드, 경유 노드, 기준 거리 경유 노드의 의미와 관련해서는 상술한 바 있으므로 중복 설명은 생략한다.
장애물 지도(1600) 상에서 경유 노드를 결정하기 위해 경유 노드 결정 방법이 이용될 수 있다. 일 예에 따른 경유 노드 결정 방법은, 제3 경유 노드 결정 방법과 제4 경유 노드 결정 방법을 포함할 수 있다.
제3 경유 노드 결정 방법은 현재 노드(1610)의 위치, 현재 선수 방향(1670), 기준 거리 경유 노드(1630)의 위치 및 기준 거리 선수 방향(1680)을 고려하여 현재 노드(1610)부터 기준 거리 경유 노드(1630)까지의 복수의 제3 경유 노드(1640)들을 결정하는 방법이다.
구체적으로, 제3 경유 노드 결정 방법을 이용하여 기준 거리 경유 노드(1630)에 대응되는 제3 경유 노드(1640)에 할당될 예상 선수 방향이 기준 거리 선수 방향(1680)과 일치하도록 제3 경유 노드(1640)들을 결정할 수 있다.
이를 위해 제3 경유 노드 결정 방법은 결정된 제3 경유 노드(1640) 각각에서의 예상 선수 방향도 결정할 수 있다. 도 19에는 도시되지 않았으나, 결정된 예상 선수 방향은 대응되는 경유 노드에 할당될 수 있다.
한편, 제3 경유 노드(1240)는 선박의 최대 선회각을 고려하여 결정될 수 있다. 구체적으로, 현재 노드(1610) 바로 다음의 제3 경유 노드(1640)는 현재 선수 방향(1670)을 기준으로 최대 선회각 이내의 노드들 중에서 결정될 수 있다.
상술한 바와 같이 결정된 제3 경유 노드(1640) 각각에 예상 선수 방향이 할당되어 있는 바, 결정된 제3 경유 노드(1640) 바로 다음의 후속 제3 경유 노드는, 결정된 제3 경유 노드(1640)에 할당된 예상 선수 방향을 기준으로 최대 선회각 이내의 노드들 중에서 결정될 수 있다. 최대 선회각과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
도 19에는 도시되지 않았으나, 제3 경유 노드 결정 방법은, 상술한 장애물 지도(1600)의 각 노드에 부여된 점수를 고려하여 제3 경유 노드(1640)를 결정할 수도 있다.
구체적으로, 제3 경유 노드 결정 방법은, 현재 노드(1610) 또는 결정된 제3 경유 노드(1640) 바로 다음의 후속 제3 경유 노드를 결정할 때, 후속 제3 경유 노드에 부여된 점수를 고려하여 제3 경유 노드를 결정할 수 있다. 일 예로, 예비 후속 제3 경유 노드들 중에서 해당 노드에 부여된 점수가 가장 낮은 노드가 후속 제3 경유 노드로 결정될 수 있다.
또한, 제3 경유 노드 결정 방법은 기준 거리 경유 노드(1630)까지의 남은 거리를 고려하여 제3 경유 노드(1640)를 결정할 수도 있다. 구체적으로, 제3 경유 노드 결정 방법은, 현재 노드(1610) 또는 결정된 제3 경유 노드(1640)의 바로 다음의 후속 제3 경유 노드를 결정할 때, 후속 제3 경유 노드부터 기준 거리 경유 노드(1630)까지의 남은 거리가 작아지도록 후속 제3 경유 노드를 결정할 수 있다.
또한, 제3 거리 경유 노드 결정 방법은, 현재 노드(1610) 또는 결정된 제3 경유 노드(1640)의 바로 다음의 후속 제3 경유 노드를 결정할 때, 후속 제3 경유 노드에 할당될 예상 선수 방향과 기준 거리 선수 방향(1680)과의 차이를 고려하여 후속 제3 경유 노드를 결정할 수 있다. 일 예로, 예비 후속 제3 경유 노드들 중에서 해당 노드에 할당될 예상 선수 방향과 기준 거리 선수 방향(1680)과의 차이가 가장 작은 노드가 후속 제3 경유 노드로 결정될 수 있다.
한편, 도 19에서는, 제3 경유 노드(1640)들 간에 거리가 있도록 제3 경유 노드(1640)들이 결정되었으나, 제3 경유 노드(1640)들은 현재 노드(1610)부터 기준 거리 경유 노드(1630)까지 연속적으로 결정될 수도 있다.
일 실시예에 따른 제3 경유 노드 결정 방법은 3D A* 알고리즘을 기반으로 구현될 수 있다.
구체적으로, 3D A* 알고리즘에서 고려되는 비용 함수는 f=g+h 에서, g(n)과 h(n)가 각각 다음과 같이 정의될 수 있다.
g(n)=ωm*Cm(n)+ ωc*Cc(n)
h(n)=ωd*Cd(n)+ωb*Cb(n)
이때, n은 제3 경유 노드의 순번을 나타내며, 현재 노드에서 n은 0이 될 수 있다.
한편, ωm, ωc, ωd 및 ωb는 Cm, Cc, Cd 및 Cb 각각에 대한 가중치 값이다.
Cm 은 장애물 지도의 각 노드에 부여된 점수이며, 장애물로부터 안전한 위치를 고려하기 위함이다. Cc는 라디안 단위의 현재 선수 방향 또는 예상 선수 방향을 기준으로 한 다음 노드까지의 각도 변화량이며, 선박의 제한된 조종성능을 반영하기 위함이다. Cd는 경유 노드부터 기준 거리 경유 노드까지의 남은 거리이며, 휴리스틱 값을 의미한다. Cb는 경유 노드에서의 라디안 단위의 예상 선수 방향과 기준 거리 선수 방향과의 차이 값이며, 예상 선수 방향과 기준 거리 선수 방향과의 차이를 최소화하기 위함이다.
상술한 비용 함수를 이용하여 현재 노드부터 기준 거리 경유 노드까지의 제3 경유 노드를 결정할 수 있다.
제4 경유 노드 결정 방법은 기준 거리 경유 노드(1630)의 위치, 기준 거리 선수 방향(1680), 접안 노드(1620)의 위치 및 접안 선수 방향(1690)을 고려하여 기준 거리 경유 노드(1630)부터 접안 노드(1620)까지의 복수의 제4 경유 노드(1650)들을 결정하는 방법이다.
구체적으로, 제4 경유 노드 결정 방법을 이용하여 접안 노드(1630)에 대응되는 제4 경유 노드(1640)에 할당될 예상 선수 방향이 접안 선수 방향(1680)과 일치하도록 제4 경유 노드(1640)들을 결정할 수 있다.
이를 위해 제4 경유 노드 결정 방법은 결정된 제4 경유 노드(1650) 각각에서의 예상 선수 방향도 결정할 수 있다. 도 19에는 도시되지 않았으나, 결정된 예상 선수 방향은 대응되는 경유 노드에 할당될 수 있다.
한편, 제4 경유 노드 결정 방법은 상술한 제3 경유 노드 결정 방법과 같이 선박의 최대 선회각, 장애물 지도(1600)의 각 노드에 부여된 점수, 도착 위치인 접안 위치(1620)까지의 남은 거리 및 도착 위치에서의 방향인 접안 선수 방향(1690)을 고려하여 제4 경유 노드(1650)를 결정할 수 있다. 구체적인 방법은 제3 경유 노드 결정 방법에서 설명한 바 있으므로 중복 설명은 생략한다.
일 실시예에 따른 제4 경유 노드 결정 방법은 3D A* 알고리즘을 기반으로 구현될 수 있다.
구체적으로, 제4 경유 노드 결정 방법의 비용 함수는, 제3 경유 노드 결정 방법에서의 비용 함수와 동일할 수 있다.
다만, 제4 경유 노드 결정 방법의 비용 함수와 제3 경유 노드 결정 방법의 비용 함수에 차이가 있다면, 제4 경유 노드 결정 방법의 비용 함수에서 Cd는 경유 노드부터 접안 노드까지의 남은 거리를 의미하며, Cb는 경유 노드에서의 라디안 단위의 예상 선수 방향과 접안 선수 방향과의 차이 값을 의미한다.
기준 거리 경유 노드(1630)부터 접안 노드(1620)까지의 제4 경유 노드(1650)는 상술한 비용 함수를 이용하여 결정될 수 있다.
도 19를 참조하면, 현재 노드(1610)부터 접안 노드(1620)까지의 접안 경로(1660)는 결정된 제3 경유 노드(1640) 및 결정된 제4 경유 노드(1650)를 이용하여 생성될 수 있다.
구체적으로, 경로 생성 장치는 장애물 지도(1600) 상에서의 현재 노드(1610)부터 기준 거리 경유 노드(1630)까지 결정된 제3 경유 노드(1640)들을 순차적으로 연결하고, 기준 거리 경유 노드(1630)부터 접안 노드(1620)까지 결정된 제4 경유 노드(1650)들을 순차적으로 연결하여 접안 경로(1660)를 생성할 수 있다. 이에 한정되는 것은 아니며, 경로 생성 장치는 결정된 제3 경유 노드(1640) 및 제4 경유 노드(1650)들 중 운항에 적합한 일부 경유 노드를 선택하고, 선택된 경유 노드를 이용하여 접안 경로를 생성할 수도 있다. 경로 생성 장치는 경로를 생성함에 있어서 각 노드에 할당된 선수 방향을 고려할 수 있다.
한편, 경로 생성 장치는 경유 노드에 대한 근사 곡선을 산출하여 경로를 생성할 수도 있다. 구체적으로, 경로 생성 장치는 현재 선수 방향 및 기준 거리 선수 방향을 고려하여 현재 노드 및 기준 거리 경유 노드를 지나는 제1 근사 곡선은 산출하고, 기준 거리 선수 방향 및 접안 선수 방향을 고려하여 기준 거리 경유 노드 및 접안 노드를 지나는 제2 근사 곡선을 산출할 수 있으며, 제1 근사 곡선과 제2 근사 곡선을 이용하여 접안 경로를 생성할 수 있다. 근사 곡선의 경유 노드에 대한 근사 정도는 선박에 대한 정보에 기초하여 결정될 수 있다.
한편, 기준 거리 범위 이내에 장애물이 존재하는 등으로 인해 상술한 경유 노드 결정 방법을 이용하여 상술한 조건을 만족하는 경유 노드들을 결정하지 못할 경우, 경로 생성 장치는 경로를 생성할 수 없다는 결과를 출력할 수도 있다.
5. 경로 추종 제어
경로 추종 제어는 생성된 경로를 따라 선박이 운항할 수 있도록 선박 제어 신호를 생성하는 것을 의미한다. 일 예로, 선박 운항 장치에서 선박 제어 신호를 생성할 수 있다.
도 20은 일 실시예에 따른 경로 추종 제어 방법의 순서도이다.
도 20을 참조하면, 본 발명의 일 실시예에 따른 경로 추종 제어 방법은, 제1 시점에 제1 경로를 생성(S1710)하고, 제1 경로를 이용하여 제1 선박 제어 신호를 생성(S1720)하고, 제1 시점보다 늦은 제2 시점에 제2 경로를 생성(S1730)하고, 제2 경로를 이용하여 제2 선박 제어 신호를 생성(S1740)하는 과정으로 수행될 수 있다. 경로 추종 제어와 관련된 구체적인 내용은 후술한다.
제1 시점에 제1 경로 생성 및 제1 제어 신호 생성과 관련해서는 도 21을 참조하여 설명한다.
도 21은 일 실시예에 따른 경로 추종 제어를 설명하기 위한 도면이다.
도 21을 참조하면, 경로 추종 제어 방법을 수행하기 위해 장애물 지도(1800)를 이용하여 제1 접안 경로(1830)가 생성될 수 있다. 구체적으로, 장애물 지도(1800)는 제1 시점에 획득된 장애물 지도일 수 있으며, 또는 제1 시점 이전에 획득된 장애물 지도일 수도 있다.
장애물 지도(1800) 상에서 제1 시점의 현재 위치에 대응되는 제1 현재 노드(1810)가 선택될 수 있으며, 접안 위치에 대응되는 접안 노드(1860)도 선택될 수 있다.
이후 상술한 경로 생성 방법을 이용하여 제1 경로(1830)가 생성될 수 있다. 구체적인 접안 경로 생성과 관련해서는 상술한 바 있으므로 중복 설명은 생략한다.
제1 시점에 제1 경로가 생성된 이후 선박이 제1 경로를 따라 운항할 수 있도록 제1 제어 신호가 생성될 수 있다. 제1 제어 신호는 제1 선박 방향 제어 신호 및/또는 제1 선박 속력 제어 신호를 포함할 수 있다.
제1 제어 신호는 생성된 제1 경로(1830)에 속한 현재 노드(1810) 이후의 후속 경유 노드들 중 어느 하나의 후속 경유 노드(1840)에 대해 실제 선박이 그 후속 경유 노드(1840)에 위치할 때의 선수 방향이 그 후속 경유 노드에 할당된 예상 선수 방향(1850)과 최대한 일치될 수 있도록 현재 노드(1810)에 할당된 현재 선수 방향(1820)을 고려하여 생성될 수 있다.
즉, 제1 제어 신호는 생성된 제1 경로(1830) 상에서 현재 선박의 위치에 대응되는 현재 노드(1810)와 현재 선수 방향(1820) 및 현재 노드에 대한 적어도 하나의 후속 경유 노드(1840)와 그 후속 경유 노드에 할당된 예상 선수 방향(1850)을 고려하여 생성될 수 있다.
구체적으로, 제1 제어 신호는 현재 노드(1810)에 할당된 현재 선수 방향(1820)과 후속 경유 노드(1840)에 할당된 예상 선수 방향(1850)의 차이를 고려하여 생성될 수 있다. 그 차이를 고려하여 선박의 방향타 또는 키를 조절하기 위한 제어 신호인 제1 선박 방향 제어 신호가 생성될 수 있다.
한편, 선박의 프로펠러 회전 속도 또는 단위 시간당 회전수를 조절하거나 엔진의 출력을 조절하기 위한 제어 신호인 제1 선박 속력 제어 신호는 선박의 현재 속력, 현재 선수 방향(1820)과 예상 선수 방향(1850)의 차이, 현재 선박의 조타 성능, 현재 조류의 방향 및 세기, 현재의 풍향 및 풍속 중 적어도 하나를 고려하여 생성될 수 있다.
선박 방향 제어 신호와 선박 속력 제어 신호는 서로 독립적으로 생성될 수 있다. 즉, 선박 방향 제어 신호는 선박 속력 제어 신호의 값에 무관하게 생성될 수 있으며, 선박 속력 제어 신호는 선박 방향 제어 신호의 값에 무관하게 생성될 수 있다.
이에 한정되는 것은 아니며, 선박 방향 제어 신호는 선박 속력 제어 신호의 값을 고려하여 생성될 수도 있다. 선박 속력 제어 신호 또한 선박 방향 제어 신호의 값을 고려하여 생성될 수도 있다. 즉, 선박 방향 제어와 선박 속력 제어는 서로 영향을 미칠 수도 있다.
한편, 제어 신호는 현재 노드에서 후속 경유 노드 까지의 거리 및 선수 방향의 차이 등 선박 상태 및 주변 환경에 대한 데이터를 입력 받아 선박 방향 제어 신호 또는 선박 속력 제어 신호를 출력하도록 학습된 인공신경망을 이용하여 생성될 수도 있다.
인공신경망이란 인간의 신경망 구조를 본떠 만든 알고리즘의 일종으로, 하나 이상의 노드 또는 뉴런(neuron)을 포함하는 하나 이상의 레이어를 포함할 수 있고 각각의 노드는 시냅스(synapse)를 통해 연결될 수 있다. 인공신경망에 입력된 데이터(입력 데이터)는 시냅스를 통해 노드를 거쳐 출력(출력 데이터)될 수 있고, 이를 통해 정보를 획득할 수 있다.
인공신경망의 종류로는 필터를 이용해 특징을 추출하는 합성곱신경망(convolution neural network, CNN) 및 노드의 출력이 다시 입력으로 피드백되는 구조를 갖는 순환인공신경망(recurrent neural network, RNN)이 있고, 이 외에도 제한된 볼츠만 머신(restricted Boltzmann machine, RBM), 심층신뢰신경망(deep belief network, DBN), 생성대립신경망(generative adversarial network, GAN), 관계형 네트워크(relation networks, RN) 등 다양한 종류가 존재한다.
그 외 경로 추종은 경로 추종 알고리즘을 이용하여 수행될 수도 있다. 예를 들어, 경로 추종을 위해 현재 시점부터 임의의 T 시간 동안 추종해야 할 위치를 입력받아 최적의 제어 신호를 생성하는 기술인 모델 예측 제어(model predictive control, MPC), 순수 추적 제어(pure pursuit), 스탠리 방법(Stanley method), 벡터 추적 제어(vector pursuit) 등의 알고리즘을 이용할 수 있다.
한편, 경로 추종 제어 방법을 수행하기 위해, 제1 시점 이후 시점인 제2 시점에서 제2 경로가 생성될 수 있다. 제2 시점과 제1 시점의 시간 간격은 미리 정해진 시간 간격일 수 있다. 일 예로, 시간 간격은 150ms 내지 250ms로 설정될 수 있다.
제2 시점에 제2 경로 생성 및 제2 제어 신호 생성과 관련해서는 도 22를 참조하여 설명한다.
도 22는 일 실시예에 따른 경로 추종 제어를 설명하기 위한 도면이다.
도 22를 참조하면, 경로 추종 제어 방법을 수행하기 위해 장애물 지도(1900)를 이용하여 제2 접안 경로(1930)가 생성될 수 있다.
구체적으로, 장애물 지도(1900)는 제2 시점에 획득된 장애물 지도일 수 있으며, 또는 제1 시점에 획득된 장애물 지도이거나, 또는 그 이전 시점에 획득된 장애물 지도일 수도 있다.
장애물 지도 상에서 제2 시점의 현재 위치에 대응되는 제2 현재 노드(1910)가 선택될 수 있으며, 접안 위치에 대응되는 접안 노드(1960)도 선택될 수 있다. 이 경우, 접안 노드(1960)는 제1 시점에 선택된 접안 노드(1860)를 그대로 이용될 수 있으며, 제2 시점에 접안 노드(1960)를 새로 선택할 수도 있다.
이후 상술한 경로 생성 방법을 이용하여 제2 경로(1930)가 생성될 수 있다. 생성된 제2 경로(1930)는 제1 경로(1830)와 동일할 수도 있으며, 서로 차이가 있을 수도 있다.
도 22를 참조하면, 생성된 제2 경로(1930)는 도 21의 제1 경로(1830)와 상이할 수 있다.
구체적으로, 장애물 지도에 변화가 생긴 경우, 예를 들어 장애물의 위치 변동, 장애물의 상태 변동 등이 있을 경우, 또는 외력 및 운향 한계 등으로 인해 제1 시점과 제2 시점 사이에서 선박이 제1 경로를 따르지 못한 경우에 제2 경로(1930)는 제1 경로(1830)와 상이할 수 있다. 이에 한정되는 것은 아니며, 기타 내부적 또는 외부적 요인에 의해 제1 경로(1830)와 상이한 제2 경로(1930)가 생성될 수도 있다.
제2 시점에 제2 경로가 생성된 이후 선박이 제2 경로를 따라 운항할 수 있도록 제2 제어 신호가 생성될 수 있다. 제어 신호 생성과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
상술한 경로 추종 제어 방법을 제n 시점까지 반복하여 선박이 접안 시설에 접안될 수 있도록 할 수 있다.
도 23은 일 실시예에 따른 경로 추종 제어를 이용한 선박 접안 방법의 순서도이다.
도 23을 참조하면, 본 발명의 일 실시예에 따른 경로 추종 제어를 이용한 선박 접안 방법은, 장애물 지도를 이용하여 경로를 생성(S2010)하고, 생성된 경로에 기초하여 제어 신호를 생성(S2020)하고, 선박이 접안 위치에 도착하였는지 여부에 따라 경로 생성 및 제어 신호 생성을 반복(S2030)하는 과정으로 수행될 수 있다. 경로 생성 및 제어 신호 생성과 관련된 내용은 상술한 바 있으므로 중복 설명은 생략한다.
한편, 경로 생성은 경로 생성 장치에서 수행될 수 있으며, 제어 신호 생성은 선박 운항 장치에서 생성될 수 있다. 경로 생성 장치가 선박의 외부에 위치하는 경우, 선박 운항 장치는 경로 생성 장치로부터 접안 경로 및 각 노드들에 대한 정보를 수신하여 선박 제어 신호를 생성할 수도 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 상술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다. 또한, 본 문서에서 설명된 실시예들은 한정되게 적용될 수 있는 것이 아니라, 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다. 나아가, 각 실시예를 구성하는 단계들은 다른 실시예를 구성하는 단계들과 개별적으로 또는 조합되어 이용될 수 있다.
Claims (15)
- 선박에 대한 접안 경로 생성 방법에 있어서,해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하는 단계;상기 장애물 지도 상에서의 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하는 단계;상기 현재 노드에서의 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하는 단계;상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하는 단계;상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하는 단계 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -; 및상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하는 단계;를 포함하며,상기 미리 정해진 예상 접안 경로 비용 함수는,상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되,상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한접안 경로 생성 방법.
- 제1항에 있어서,상기 기준 거리 경유 노드는,상기 접안 노드로부터 상기 기준 거리만큼 떨어진 위치에 대응되는 기준 거리 노드들 중 하나인,접안 경로 생성 방법.
- 제2항에 있어서,상기 기준 거리 경유 노드는,상기 기준 거리 노드들 중 상기 접안 노드로부터 상기 접안 선수 방향 또는 상기 접안 선수 방향의 반대 방향으로 상기 기준 거리만큼 떨어진 위치에 대응되는 노드인,접안 경로 생성 방법.
- 제1항에 있어서,상기 제2 예상 접안 경로 비용 함수는,상기 접안 선수 방향을 고려하는 항을 포함하는,접안 경로 생성 방법.
- 제4항에 있어서,상기 접안 선수 방향을 고려하는 항은,상기 제2 예상 접안 경로 상의 경유 노드에 할당될 예상 선수 방향과 상기 접안 선수 방향과의 차이를 고려하는 항인,접안 경로 생성 방법.
- 제1항에 있어서,상기 장애물 지도는,상기 복수의 노드 각각에 대해 상기 선박의 운항 안전성에 따른 점수가 부여되며,상기 예상 접안 경로 비용 함수는,상기 점수를 고려하는 항을 포함하는,접안 경로 생성 방법.
- 제1항에 있어서,상기 복수의 경유 노드들을 결정하는 단계는,상기 선박의 현재 속력을 판단하는 단계;상기 현재 속력에 기초하여 상기 선박의 최대 선회각을 산출하는 단계;를 포함하며,상기 예상 접안 경로 비용 함수는,상기 최대 선회각을 고려하는 항을 포함하는,접안 경로 생성 방법.
- 선박에 대한 접안 경로 생성 장치에 있어서,상기 선박에 대한 정보, 항만에 대한 정보 및 경유 노드 결정 방법을 저장하는 메모리; 및적어도 하나의 프로세서;를 포함하며,상기 프로세서는,해상에서의 위치에 대응되는 복수의 노드를 포함하는 장애물 지도를 획득하고,상기 장애물 지도 상에서 상기 선박의 현재 위치에 대응되는 현재 노드 및 접안 위치에 대응되는 접안 노드를 선택하고,상기 현재 노드에서 상기 선박의 현재 선수 방향 및 상기 접안 노드에서의 접안 선수 방향을 판단하고,상기 선박의 길이, 상기 선박의 너비, 상기 선박의 무게, 상기 선박의 조타 성능, 및 접안 시설의 길이 중 적어도 하나를 고려하여 기준 거리를 결정하고,상기 기준 거리 및 미리 정해진 예상 접안 경로 비용 함수를 이용하여 상기 장애물 지도 상에서 상기 현재 노드로부터 상기 접안 노드까지의 복수의 경유 노드들 및 상기 경유 노드에 할당될 예상 선수 방향을 결정하고 - 상기 경유 노드는 상기 단위 노드들 중 적어도 하나에 대응됨 -,상기 결정된 복수의 경유 노드들을 이용하여 상기 접안 경로를 생성하며,상기 미리 정해진 예상 접안 경로 비용 함수는,상기 접안 위치로부터 상기 기준 거리보다 먼 위치에 위치하는 상기 선박에 대해, 상기 현재 선수 방향을 고려하여 상기 현재 노드부터 기준 거리 경유 노드까지의 제1 예상 접안 경로에 대하여 적용하는 제1 예상 접안 경로 비용 함수 및 상기 기준 거리 경유 노드부터 상기 접안 노드까지의 제2 예상 접안 경로에 대하여 적용하는 제2 예상 접안 경로 비용 함수를 포함하되,상기 제1 예상 접안 경로 비용 함수는 상기 제2 예상 접안 경로 비용 함수와 상이한,접안 경로 생성 장치.
- 제8항에 있어서,상기 기준 거리 경유 노드는,상기 접안 노드로부터 상기 기준 거리만큼 떨어진 위치에 대응되는 기준 거리 노드들 중 하나인,접안 경로 생성 장치.
- 제9항에 있어서,상기 기준 거리 경유 노드는,상기 기준 거리 노드들 중 상기 접안 노드로부터 상기 접안 선수 방향 또는 상기 접안 선수 방향의 반대 방향으로 상기 기준 거리만큼 떨어진 위치에 대응되는 노드인,접안 경로 생성 장치.
- 제8항에 있어서,상기 제2 예상 접안 경로 비용 함수는,상기 접안 선수 방향을 고려하는 항을 포함하는,접안 경로 생성 장치 .
- 제11항에 있어서,상기 접안 선수 방향을 고려하는 항은,상기 제2 예상 접안 경로 상의 경유 노드에 할당될 예상 선수 방향과 상기 접안 선수 방향과의 차이를 고려하는 항인,접안 경로 생성 장치.
- 제8항에 있어서,상기 장애물 지도는,상기 복수의 노드 각각에 대해 상기 선박의 운항 안전성에 따른 점수가 부여되며,상기 예상 접안 경로 비용 함수는,상기 점수를 고려하는 항을 포함하는,접안 경로 생성 장치.
- 제8항에 있어서,상기 프로세서는,상기 복수의 경유 노드들을 결정하고,상기 선박의 현재 속력을 판단하고,상기 현재 속력에 기초하여 상기 선박의 최대 선회각을 산출하며,상기 예상 접안 경로 비용 함수는,상기 최대 선회각을 고려하는 항을 포함하는,접안 경로 생성 장치.
- 접안 경로 생성 방법을 저장하는 컴퓨터 판독 가능 비일시적 기록 매체에 있어서,상기 접안 경로 생성 방법은,제1항에 따른 접안 경로 생성 방법인,기록 매체.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20220109593 | 2022-08-31 | ||
KR10-2022-0109593 | 2022-08-31 | ||
KR10-2022-0188466 | 2022-12-29 | ||
KR1020220188466A KR20240030937A (ko) | 2022-08-31 | 2022-12-29 | 접안 경로 생성 방법 및 그 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024049109A1 true WO2024049109A1 (ko) | 2024-03-07 |
Family
ID=90098307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/012570 WO2024049109A1 (ko) | 2022-08-31 | 2023-08-24 | 접안 경로 생성 방법 및 그 장치 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024049109A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190155288A1 (en) * | 2017-11-20 | 2019-05-23 | Brunswick Corporation | System and method for controlling a position of a marine vessel near an object |
KR102005559B1 (ko) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 |
CN110779526A (zh) * | 2019-09-29 | 2020-02-11 | 宁波海上鲜信息技术有限公司 | 一种路径规划方法、装置及存储介质 |
JP2020083090A (ja) * | 2018-11-27 | 2020-06-04 | ヤンマー株式会社 | 経路生成装置 |
JP2021181301A (ja) * | 2020-05-15 | 2021-11-25 | 国立研究開発法人 海上・港湾・航空技術研究所 | 船舶の自動誘導方法、船舶の自動誘導プログラム、船舶の自動誘導システム、及び船舶 |
-
2023
- 2023-08-24 WO PCT/KR2023/012570 patent/WO2024049109A1/ko unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190155288A1 (en) * | 2017-11-20 | 2019-05-23 | Brunswick Corporation | System and method for controlling a position of a marine vessel near an object |
KR102005559B1 (ko) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 |
JP2020083090A (ja) * | 2018-11-27 | 2020-06-04 | ヤンマー株式会社 | 経路生成装置 |
CN110779526A (zh) * | 2019-09-29 | 2020-02-11 | 宁波海上鲜信息技术有限公司 | 一种路径规划方法、装置及存储介质 |
JP2021181301A (ja) * | 2020-05-15 | 2021-11-25 | 国立研究開発法人 海上・港湾・航空技術研究所 | 船舶の自動誘導方法、船舶の自動誘導プログラム、船舶の自動誘導システム、及び船舶 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020050498A1 (ko) | 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 및 장치 | |
WO2020050499A1 (ko) | 객체 정보 획득 방법 및 이를 수행하는 장치 | |
WO2020071839A1 (ko) | 선박 및 항만 모니터링 장치 및 방법 | |
WO2018117631A1 (en) | Electronic apparatus and method of operating the same | |
WO2021141339A1 (ko) | 해수면을 고려한 항만 및 선박 모니터링 방법 및 장치 | |
WO2021141338A1 (ko) | 선박 및 항만 모니터링 장치 및 방법 | |
WO2019132518A1 (en) | Image acquisition device and method of controlling the same | |
WO2015152692A1 (ko) | 차량 주변 이미지 생성 장치 및 방법 | |
WO2017188706A1 (ko) | 이동 로봇 및 이동 로봇의 제어방법 | |
WO2018117662A1 (en) | Apparatus and method for processing image | |
EP3539113A1 (en) | Electronic apparatus and method of operating the same | |
WO2022050507A1 (ko) | 태양광 발전 모듈 모니터링 방법 및 시스템 | |
WO2019151735A1 (en) | Vision inspection management method and vision inspection system | |
WO2021006366A1 (ko) | 디스플레이 패널의 색상을 조정하는 인공 지능 장치 및 그 방법 | |
WO2021125395A1 (ko) | 인공 신경망 기반으로 광학적 항법을 위하여 특이 영역을 결정하는 방법, 온보드 맵 생성 장치, 및 착륙선의 방향을 결정하는 방법 | |
WO2016122042A1 (ko) | 인공위성 영상과 랜덤포레스트 분류기 결합을 이용한 자동 하천 검출 시스템 및 방법 | |
WO2017188800A1 (ko) | 이동 로봇 및 그 제어방법 | |
WO2018212608A1 (ko) | 구동형 마킹 시스템, 구동형 마킹 장치의 제어방법 및 컴퓨터 판독 가능한 기록매체 | |
WO2020171561A1 (en) | Electronic apparatus and controlling method thereof | |
WO2019199112A1 (ko) | 자율 작업 시스템, 방법 및 컴퓨터 판독 가능한 기록매체 | |
WO2022080517A1 (ko) | 학습 데이터를 생성하는 인공 지능 장치 및 방법 | |
WO2020262721A1 (ko) | 인공 지능을 이용하여, 복수의 로봇들을 제어하는 관제 시스템 | |
WO2022025441A1 (ko) | 전방위 이미지 촬영 어셈블리 및 이에 의해 수행되는 방법 | |
WO2021010784A2 (ko) | 객체 영상 생성, 객체 인식과 이동 로봇의 환경 학습을 수행하는 장치 및 방법 | |
WO2024049109A1 (ko) | 접안 경로 생성 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23860786 Country of ref document: EP Kind code of ref document: A1 |