KR102514765B1 - Method and server for providing course information of vessel - Google Patents

Method and server for providing course information of vessel Download PDF

Info

Publication number
KR102514765B1
KR102514765B1 KR1020200162953A KR20200162953A KR102514765B1 KR 102514765 B1 KR102514765 B1 KR 102514765B1 KR 1020200162953 A KR1020200162953 A KR 1020200162953A KR 20200162953 A KR20200162953 A KR 20200162953A KR 102514765 B1 KR102514765 B1 KR 102514765B1
Authority
KR
South Korea
Prior art keywords
waypoints
information
network
route
network graph
Prior art date
Application number
KR1020200162953A
Other languages
Korean (ko)
Other versions
KR20220074439A (en
Inventor
김영도
Original Assignee
주식회사 웨더아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 웨더아이 filed Critical 주식회사 웨더아이
Priority to KR1020200162953A priority Critical patent/KR102514765B1/en
Priority to PCT/KR2020/017171 priority patent/WO2022114302A1/en
Publication of KR20220074439A publication Critical patent/KR20220074439A/en
Application granted granted Critical
Publication of KR102514765B1 publication Critical patent/KR102514765B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/203Specially adapted for sailing ships
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G06Q50/30
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G3/00Traffic control systems for marine craft

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Ocean & Marine Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Navigation (AREA)
  • Operations Research (AREA)

Abstract

선박의 항로를 결정하는 항로 결정 서버는 복수의 웨이포인트(WayPoint)에 대한 정보를 저장하는 데이터베이스, 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하는 네트워크 그래프 생성부, 사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신하는 항구 정보 수신부, 출발지 및 목적지에 대한 정보에 기초하여 복수의 네트워크 그래프 중 하나를 선택하는 네트워크 그래프 선택부 및 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 상기 사용자 단말로 전송하는 항로 정보 전송부를 포함할 수 있다. The route determination server for determining the ship's route includes a database for storing information on a plurality of waypoints, and a plurality of different points for each waypoint based on latitude data and longitude data included in the information on the plurality of waypoints. A network graph generation unit that creates a plurality of network graphs by connecting waypoints, a port information receiver that receives information on a departure point and a destination from a user terminal, and selects one of a plurality of network graphs based on the information on the departure point and destination. and a route information transmitter for transmitting information on a route corresponding to the selected network graph to the user terminal.

Description

선박의 항로를 결정하는 서버 및 방법{METHOD AND SERVER FOR PROVIDING COURSE INFORMATION OF VESSEL}Server and method for determining vessel route {METHOD AND SERVER FOR PROVIDING COURSE INFORMATION OF VESSEL}

본 발명은 선박의 항로를 결정하는 서버 및 방법에 관한 것이다. The present invention relates to a server and method for determining a ship's route.

선박 항로 문제(Ship Routing Problem)는 기본적으로 경로 최적화 문제로써 이를 해결하기 위한 다양한 알고리즘들이 제시되어 왔다. 예를 들어, 대표적으로 해양 경로 탐색을 위해 TREAD(Traffic Route Extraction and Anomaly Detection) 알고리즘있다. The ship routing problem is basically a path optimization problem, and various algorithms have been proposed to solve it. For example, there is TREAD (Traffic Route Extraction and Anomaly Detection) algorithm for marine route search.

또한, AIS(Automatic Identication System) 기술을 활용하여 기록된 선박 위치 데이터를 비지도 학습하고 이를 통해 효과적인 선박 이동 경로를 예측하고 위험성이 높은 위치를 분류하는 방법이 있다. 이러한 방법은 통상적으로 선박들이 많이 다니는 경로를 분석함으로써 안전한 경로를 탐색하고 이를 추천하는데 유용하지만, 최적의 경로를 제공하지 않을 뿐만 아니라, 달라지는 날씨 및 조류 정보를 반영하지 못한다는 단점이 있다. In addition, there is a method of unsupervised learning of recorded vessel position data using AIS (Automatic Identification System) technology, predicting an effective vessel movement path through this, and classifying a high-risk position. Although this method is useful for searching for and recommending a safe route by analyzing a route commonly traveled by ships, it has a disadvantage in that it does not provide an optimal route and does not reflect changing weather and tide information.

한편, SPEA2(Strength Pareto Evolutionary Algorithm) 최적화 알고리즘을 사용하여 선박 항로 최적화 문제를 접근하는 방법이 있었는데 SPEA2 최적화 알고리즘은 다중 목표 최적화 문제를 해결하기 위해 고안된 알고리즘으로 최단 시간이 걸리는 경로뿐만 아니라 연료 소모 및 난파 위험도까지 고려하여 다중목표에 최적화된 경로를 탐색하는 알고리즘이다. 이러한, SPEA2 최적화 알고리즘은 날씨 정보를 반영해서 해풍과 조류를 고려한 여러 조건 하에서 최적의 경로들을 탐색하는 알고리즘이지만, 첫 경로들 집합을 계산하는데 상당한 시간이 소요되어 실제 선상에서 사용하기에는 한계가 있다. On the other hand, there is a way to approach the ship route optimization problem using the SPEA2 (Strength Pareto Evolutionary Algorithm) optimization algorithm. It is an algorithm that searches for a route optimized for multiple goals by considering the degree of risk. This SPEA2 optimization algorithm is an algorithm that searches for optimal routes under various conditions considering sea wind and current by reflecting weather information, but it takes a considerable amount of time to calculate the first set of routes, so there is a limit to actual use on board.

또한, 다익스트라(Dijkstra) 알고리즘을 활용하여 선박의 최단 경로 문제를 해결하려는 시도도 있다. 그러나, 다익스트라 알고리즘은 짧은 거리의 선박 항로만을 계산할 수 있고, 날씨나 조류 정보를 고려할 경우 계산이 너무 복잡해져서 실제로 사용하기 어려운 수준이다. In addition, there is an attempt to solve the shortest path problem of a ship by utilizing the Dijkstra algorithm. However, Dijkstra's algorithm can only calculate short-distance ship routes, and when considering weather or tide information, the calculation becomes too complex, making it difficult to actually use it.

나아가, 최근에는 다익스트라 알고리즘이 발전된 버전인 A* 알고리즘을 개선하여 해류, 해상 트래픽, 정박 등을 고려한 최적화 경로 탐색 방법이 제안되었다. A* 알고리즘을 이용함으로써 최적의 경로 계산에 대한 효율성이 달성되었지만, A* 알고리즘을 이용한 최적화 경로 탐색 방법은 복잡한 해상 상황을 고려한 경로 최적화라기 보단 단거리 경로에서 충돌 위험, 트래픽, 정박 등의 리스크 최소화의 관점이 고려되었고, 시뮬레이션 역시 굉장히 짧은 구간에서만 이루어져 장거리 운항에 대한 확장 가능성이 낮다. Furthermore, recently, an optimized route search method considering ocean current, sea traffic, anchorage, etc. has been proposed by improving the A* algorithm, which is an advanced version of Dijkstra's algorithm. Although the efficiency of optimal route calculation was achieved by using the A* algorithm, the optimization route search method using the A* algorithm is more about minimizing risks such as collision risk, traffic, and anchoring in a short-distance route than route optimization considering complex maritime conditions. The point of view was considered, and the simulation was also made only in a very short section, so the possibility of expansion to long-distance operation is low.

한국등록특허공보 제10-1556723호 (2015.09.23 공개)Korean Registered Patent Publication No. 10-1556723 (published on September 23, 2015)

본 발명은 해양 기상 데이터를 활용한 인공지능 기반의 선박항로 최적화 서비스를 제공하기 위해 기존의 A* 알고리즘을 이용한 경로 계산에 날씨 및 해풍 정보, 조류 정보를 대입하여 개선된 A* 알고리즘을 도출하고, 개선된 A* 알고리즘을 이용하여 최적의 선박 항로를 제공하고자 한다. The present invention derives an improved A* algorithm by substituting weather, sea wind information, and tidal information into route calculation using the existing A* algorithm to provide an artificial intelligence-based ship route optimization service using marine meteorological data, It is intended to provide an optimal ship route using the improved A* algorithm.

구체적으로, 본 발명은 복수의 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하고, 생성된 복수의 네트워크 그래프를 이용하여 최적의 선박 항로를 사용자 단말에게 추천할 수 있다. Specifically, the present invention may generate a plurality of network graphs by connecting a plurality of different waypoints for each of a plurality of waypoints, and recommend an optimal ship route to the user terminal using the generated plurality of network graphs.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical problem to be achieved by the present embodiment is not limited to the technical problems described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 선박의 항로를 결정하는 항로 결정 서버는 복수의 웨이포인트(WayPoint)에 대한 정보를 저장하는 데이터베이스; 상기 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하는 네트워크 그래프 생성부; 사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신하는 항구 정보 수신부; 상기 출발지 및 목적지에 대한 정보에 기초하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 네트워크 그래프 선택부; 및 상기 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 상기 사용자 단말로 전송하는 항로 정보 전송부를 포함할 수 있다. As a technical means for achieving the above-described technical problem, a route determination server for determining a route of a ship according to a first aspect of the present invention includes a database for storing information on a plurality of waypoints; a network graph generator for generating a plurality of network graphs by connecting a plurality of other waypoints for each waypoint based on latitude data and longitude data included in the information on the plurality of waypoints; a port information receiving unit for receiving information on a departure point and a destination from a user terminal; a network graph selector selecting one of the plurality of network graphs based on the information on the source and destination; and a route information transmitter for transmitting information on a route corresponding to the selected network graph to the user terminal.

본 발명의 제 2 측면에 따른 항로 결정 서버에 의해 수행되는 선박의 항로를 결정하는 방법은 복수의 웨이포인트(WayPoint)에 대한 정보를 저장하는 단계; 상기 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하는 단계; 사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신하는 단계; 상기 출발지 및 목적지에 대한 정보에 기초하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 단계; 상기 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 상기 사용자 단말로 전송하는 단계를 포함할 수 있다. According to a second aspect of the present invention, a method for determining a ship's route, performed by a route determination server, includes storing information about a plurality of waypoints; generating a plurality of network graphs by connecting a plurality of other waypoints for each waypoint based on latitude data and longitude data included in the information on the plurality of waypoints; Receiving information about a departure point and a destination from a user terminal; selecting one of the plurality of network graphs based on the information on the source and destination; and transmitting information on a route corresponding to the selected network graph to the user terminal.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described means for solving the problems is only illustrative and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 복수의 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하고, 생성된 복수의 네트워크 그래프를 이용하여 최적의 선박 항로를 사용자 단말에게 추천할 수 있다. 또한, 본 발명은 출발지에서 목표지까지의 방향을 설정해 불필요한 부분에서의 탐색을 최소화하면서 최단 경로의 탐색을 제공할 수 있다. According to any one of the above-described problem solving means of the present invention, the present invention connects a plurality of different waypoints for each of a plurality of waypoints to generate a plurality of network graphs, and uses the generated plurality of network graphs to optimize the ship. Routes may be recommended to user terminals. In addition, the present invention can provide a shortest path search while minimizing a search in an unnecessary part by setting a direction from a starting point to a destination.

도 1은 본 발명의 일 실시예에 따른, 항로 결정 서버의 블록도이다.
도 2a 내지 2c는 본 발명의 일 실시예에 따른, 데이터베이스에 저장된 복수의 웨이포인트(WayPoint)에 대한 정보를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른, 복수의 네트워크 그래프를 생성하는 방법을 설명하기 위한 도면이다.
도 4a 내지 4b는 본 발명의 일 실시예에 따른, 선박의 항로 결정 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른, 항로 결정을 위한 복수의 네트워크 그래프를 생성하는 방법을 나타낸 흐름도이다.
도 6은 본 발명의 일 실시예에 따른, 선박의 항로를 결정하는 방법을 나타낸 흐름도이다.
1 is a block diagram of a route determination server according to an embodiment of the present invention.
2A to 2C are diagrams illustrating information on a plurality of waypoints stored in a database according to an embodiment of the present invention.
3 is a diagram for explaining a method of generating a plurality of network graphs according to an embodiment of the present invention.
4A to 4B are views for explaining a method for determining a ship's route according to an embodiment of the present invention.
5 is a flowchart illustrating a method of generating a plurality of network graphs for route determination according to an embodiment of the present invention.
6 is a flowchart illustrating a method of determining a ship route according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail so that those skilled in the art can easily practice the present invention with reference to the accompanying drawings. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is said to be "connected" to another part, this includes not only the case where it is "directly connected" but also the case where it is "electrically connected" with another element interposed therebetween. . In addition, when a certain component is said to "include", this means that it may further include other components without excluding other components unless otherwise stated.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In this specification, a "unit" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Further, one unit may be realized using two or more hardware, and two or more units may be realized by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. In this specification, some of the operations or functions described as being performed by a terminal or device may be performed instead by a server connected to the terminal or device. Likewise, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the corresponding server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, specific details for the implementation of the present invention will be described with reference to the accompanying configuration diagram or process flow chart.

도 1은 본 발명의 일 실시예에 따른, 항로 결정 서버(10)의 블록도이다.1 is a block diagram of a route determination server 10 according to an embodiment of the present invention.

도 1을 참조하면, 항로 결정 서버(10)는 데이터베이스(100), 네트워크 그래프 생성부(110), 항구 정보 수신부(120), 네트워크 그래프 선택부(130) 및 항로 정보 전송부(140)를 포함할 수 있다. 다만, 도 1에 도시된 항로 결정 서버(10)는 본 발명의 하나의 구현 예에 불과하며, 도 에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. Referring to FIG. 1, the route determination server 10 includes a database 100, a network graph generator 110, a port information receiver 120, a network graph selector 130, and a route information transmitter 140. can do. However, the route determination server 10 shown in FIG. 1 is only one implementation example of the present invention, and various modifications are possible based on the components shown in FIG.

이하에서는 도 2a 내지 도 4b를 함께 참조하여 도 1을 설명하기로 한다. Hereinafter, FIG. 1 will be described with reference to FIGS. 2A to 4B.

데이터베이스(100)는 공공 및 민간에서 제공되는 전 세계 해상에 대한 해상 구역별 해상의 해류, 깊이 및 파고, 풍속, 풍력 등을 포함하는 해상 기상 정보를 수집하여 저장할 수 있다. The database 100 may collect and store maritime meteorological information including ocean currents, depths, wave heights, wind speeds, wind powers, and the like for each maritime zone for the world's oceans provided by public and private sources.

데이터베이스(100)는 복수의 웨이포인트(WayPoint)에 대한 정보를 저장할 수 있다. 여기서, 복수의 웨이포인트는 복수의 선박이 운항 가능한 복수의 항로에서 교차하는 지점 또는 항로 상의 유의미한 지점을 의미한다. 이러한, 복수의 웨이포인트는 예를 들어, 해상 구역 간에 항해 시에 선박이 지나가는 지점으로서 신규 항구가 건설되거나 신규 항로가 개척되거나, 해상에 인공물 등의 설치로 인해 변경될 수 있다. The database 100 may store information on a plurality of waypoints. Here, the plurality of waypoints refer to points at which a plurality of ships cross in a plurality of routes through which a plurality of ships can navigate or significant points on a route. These plurality of waypoints are, for example, points through which ships pass when sailing between maritime zones, and may be changed due to the construction of a new port, the opening of a new route, or the installation of artifacts on the sea.

예를 들어, 도 2a를 참조하면, 데이터베이스(100)는 각 웨이포인트 각각에 대한 위도 데이터 및 경로 데이터를 저장하고, 각 웨이포인트별 연결된 인접 웨이포인트 리스트를 저장할 수 있다. 예를 들어, 데이터베이스(100)는 1번 웨이포인트에 대한 위도 데이터 및 경로 데이터를 저장하고, 1번 웨이포인트와 인접한 2번 웨이포인트, 3번 웨이포인트, 6번 웨이포인트를 1번 웨이포인트와 매핑하여 저장할 수 있다. For example, referring to FIG. 2A , the database 100 may store latitude data and route data for each waypoint, and may store a list of adjacent waypoints connected to each waypoint. For example, the database 100 stores latitude data and route data for waypoint 1, and waypoints 2, 3, and 6 adjacent to waypoint 1 are connected to waypoint 1. You can map and save.

정보 가공부(미도시)는 데이터베이스(100)에 저장된 각 웨이포인트별로 연결된 인접 웨이포인트 리스트를 멜트(melt) 기법을 통해 각 연결된 웨이포인트에 대한 정보로 세분화하고, 추후 데이터 활용을 위해 가공할 수 있다. The information processing unit (not shown) subdivides the list of adjacent waypoints connected to each waypoint stored in the database 100 into information about each connected waypoint through a melt technique, and can process the data for future use. there is.

도 2b를 참조하면, 데이터베이스(100)는 각 웨이포인트별로 연결된 다른 웨이포인트 간의 거리값, 연결된 다른 웨이포인트에 대한 위도 데이터 및 경로 데이터, 웨이포인트들 간에 연결된 연결선 정보(엣지 정보)를 포함하는 관계 정보를 각 웨이포인트별로 저장할 수 있다. 여기서, 두 개의 웨이포인트 간의 거리값은 두 개의 웨이포인트 각각의 위도 데이터 및 경도 데이터에 기초하여 기정의된 거리 계산 함수를 통해 계산될 수 있다. 이 때, 기정의된 거리 계산 함수는 다음과 같이 정의될 수 있다. Referring to FIG. 2B, the database 100 is a relationship including distance values between other waypoints connected to each waypoint, latitude data and route data for the other connected waypoints, and connection line information (edge information) connected between waypoints. Information can be stored for each waypoint. Here, a distance value between two waypoints may be calculated through a predefined distance calculation function based on latitude data and longitude data of each of the two waypoints. At this time, the predefined distance calculation function may be defined as follows.

<기정의된 거리 계산 함수><predefined distance calculation function>

Figure 112020128494701-pat00001
Figure 112020128494701-pat00001

예를 들어, 데이터베이스(100)는 1번 웨이포인트 및 1번 웨이포인트와 연결된 2번 웨이포인트 간의 거리값, 1번 웨이포인트 및 2번 웨이포인트 간의 엣지 정보, 2번 웨이포인트에 대한 위도 데이터 및 경로 데이터를 1번 웨이포인트에 매핑하여 저장할 수 있다. 또한, 데이터베이스(100)는 1번 웨이포인트 및 1번 웨이포인트와 연결된 3번 웨이포인트 간의 거리값, 1번 웨이포인트 및 3번 웨이포인트 간의 엣지 정보, 3번 웨이포인트에 대한 위도 데이터 및 경로 데이터를 1번 웨이포인트에 매핑하여 저장할 수 있다. For example, the database 100 includes distance values between waypoints 1 and waypoint 2 connected to waypoint 1, edge information between waypoints 1 and 2, latitude data for waypoint 2, and Route data can be mapped to waypoint #1 and stored. In addition, the database 100 includes distance values between waypoint 1 and waypoint 3 connected to waypoint 1, edge information between waypoint 1 and waypoint 3, latitude data and route data for waypoint 3. can be mapped to waypoint 1 and stored.

한편, 보통 소프트웨어 등에서 네트워크 그래프를 그릴 때에는 각 노드가 상대 노드와 연결되어 있는지, 아니면 연결되어 있지 않은지를 나타내는 관계 매트릭스(또는 인접(Adjacency) 매트릭스)를 사용하는 경우가 많다. 따라서, 각 노드가 어떤 노드와 연결되어 있는지 여부를 관계 매트릭스로 표현해준 다음 예를 들어, 파이썬 프로그램을 활용하여 관계 매트릭스를 네트워크 그래프로 표현할 수 있다. On the other hand, when drawing a network graph in software or the like, a relationship matrix (or adjacency matrix) indicating whether each node is connected to another node or not is often used. Therefore, after expressing whether or not each node is connected to a node as a relationship matrix, the relationship matrix can be expressed as a network graph using a Python program, for example.

도 2c를 참조하면, 관계 매트릭스 정보 생성부(미도시)는 데이터베이스(100)에 저장된 관계 정보를 이용하여 각 웨이포인트별로 다른 웨이포인트와 연결되어 있는지 여부를 나타내는 관계 매트릭스(Relation Matrix) 정보를 생성할 수 있다. 이 때, 관계 매트릭스 정보를 통해 만들어진 각 웨이포인트가 노드가 되고, 각 웨이포인트 간의 연결선이 엣지가 되는 네트워크 그래프가 생성될 수 있다. Referring to FIG. 2C , a relation matrix information generation unit (not shown) generates relation matrix information indicating whether each waypoint is connected to another waypoint by using the relation information stored in the database 100. can do. At this time, a network graph may be created in which each waypoint created through relation matrix information becomes a node and a connection line between each waypoint becomes an edge.

네트워크 그래프 생성부(110)는 데이터베이스(100)에 저장된 관계 정보 및 관계 매트릭스 정보를 이용하여 각 웨이포인트별로 연결된 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성할 수 있다. The network graph generator 110 may generate a plurality of network graphs by connecting a plurality of other waypoints connected to each waypoint using relational information and relational matrix information stored in the database 100 .

도 3를 함께 참조하면, 네트워크 그래프 생성부(110)는 각 웨이포인트별로 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성할 수 있다. Referring to FIG. 3 together, the network graph generator 110 connects a plurality of other waypoints for each waypoint based on latitude data and longitude data included in information about a plurality of waypoints for each waypoint. You can create a network graph of

여기서, 네트워크 그래프를 구성하는 복수의 웨이포인트 각각은 노드이고, 각 노드를 연결하는 연결선은 엣지이다. 즉, 네트워크 그래프 생성부(110)는 노드 및 엣지를 포함하는 네트워크 그래프를 생성할 수 있다. Here, each of a plurality of waypoints constituting the network graph is a node, and a connection line connecting each node is an edge. That is, the network graph generator 110 may create a network graph including nodes and edges.

네트워크 그래프 생성부(110)는 각 웨이포인트별로 연결된 웨이포인트 각각의 위도 데이터 및 경도 데이터에 기초하여 웨이포인트 간의 거리를 계산하고, 계산된 웨이포인트 간의 거리에 기초하여 네트워크 그래프를 생성할 수 있다. The network graph generator 110 may calculate a distance between waypoints based on latitude data and longitude data of each waypoint connected to each waypoint, and may generate a network graph based on the calculated distance between waypoints.

예를 들어, 1번 웨이포인트와 연결된 웨이포인트가 2번 웨이포인트, 3번 웨이포인트, 6번 웨이포인트인 경우, 네트워크 그래프 생성부(110)는 데이터베이스(100)에 저장된 관계 정보 및 관계 매트릭스 정보를 이용하여 1번 웨이포인트, 2번 웨이포인트, 3번 웨이포인트 및 6번 웨이포인트를 연결하는 거리값을 계산하고, 계산된 거리값에 기초하여 1번 웨이포인트, 2번 웨이포인트, 3번 웨이포인트 및 6번 웨이포인트를 연결하는 제 1 네트워크 그래프를 생성할 수 있다. For example, when waypoints connected to waypoint 1 are waypoint 2, waypoint 3, and waypoint 6, the network graph generator 110 provides relation information and relation matrix information stored in the database 100. Calculate distance values connecting waypoints #1, waypoint #2, waypoint #3, and waypoint #6 using A first network graph connecting the waypoint and the sixth waypoint may be created.

네트워크 그래프 생성부(110)는 그래프 경로 최적화 문제로 항로 문제를 변경한 후, 최적화 알고리즘을 사용하여 각 웨이포인트별로 연결된 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성할 수 있다. After changing the route problem to the graph path optimization problem, the network graph generator 110 may generate a plurality of network graphs by connecting a plurality of other waypoints connected to each waypoint using an optimization algorithm.

네트워크 그래프 생성부(110)는 공공 및 민간에서 제공되는 전 세계 해상의 해류, 깊이, 기상에 대한 기상 정보를 활용하여 각 웨이포인트별로 연결된 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성할 수 있다. The network graph generation unit 110 creates a plurality of network graphs by connecting a plurality of other waypoints connected to each waypoint by utilizing weather information on ocean currents, depths, and weather of the world's seas provided by public and private sources. can

네트워크 그래프 생성부(110)는 계산된 웨이포인트 간의 거리에 기초하여 웨이포인트 간의 엣지에 가중치를 부여할 수 있다. 예를 들어, 네트워크 그래프 생성부(110)는 계산된 웨이포인트 간의 거리가 클수록 선박이 운항하는데 소비되는 연료 사용량 및 항해 소요 시간이 높으므로 해당 웨이포인트 간의 엣지에 제 1 가중치를 부여할 수 있다. 네트워크 그래프 생성부(110)는 계산된 웨이포인트 간의 거리가 작을수록 선박이 운항하는데 소비되는 연료 사용량 및 항해 소요 시간이 줄어들므로 해당 웨이포인트 간의 엣지에 제 1 가중치보다 큰 제 2 가중치를 부여할 수 있다. 다른 예로, 네트워크 그래프 생성부(110)는 해상 기상 정보에 기초하여 계산된 웨이포인트 간의 엣지에 서로 다른 추가 가중치를 부여하거나 가중치를 조정할 수도 있다. The network graph generator 110 may assign weights to edges between waypoints based on the calculated distance between waypoints. For example, the network graph generator 110 may assign a first weight to an edge between the corresponding waypoints because the greater the distance between the calculated waypoints, the greater the amount of fuel consumed and the time required for sailing. The network graph generation unit 110 may assign a second weight greater than the first weight to an edge between the corresponding waypoints because the smaller the distance between the calculated waypoints, the smaller the amount of fuel consumed and the time required for sailing. there is. As another example, the network graph generator 110 may assign different additional weights or adjust weights to edges between waypoints calculated based on marine weather information.

여기서, 각 웨이포인트(노드) 간 엣지에 부여된 가중치는 개선된 A* 알고리즘(최적화된 항로 도출 알고리즘)의 휴리스틱(heuristic) 거리로 활용될 수 있다. 즉, 각 웨이포인트 간 엣지에 부여된 가중치는 각 웨이포인트 각각의 위도 데이터 및 경도 데이터를 이용하여 산출된 휴리스틱 거리를 의미할 수 있다. Here, the weight given to the edge between each waypoint (node) can be used as a heuristic distance of the improved A* algorithm (optimized route derivation algorithm). That is, the weight assigned to the edge between each waypoint may mean a heuristic distance calculated using latitude data and longitude data of each waypoint.

네트워크 그래프 생성부(110)는 해상에 대한 해상 기상 정보(예컨대, 해풍, 해류, 파도의 속도 및 방향에 대한 정보 등)를 기존 A* 알고리즘에 반영함으로써 개선된 A* 알고리즘(최적화된 항로 도출 알고리즘)을 도출할 수 있다.The network graph generation unit 110 reflects the maritime meteorological information (e.g., sea wind, current, speed and direction of waves, etc.) on the sea to the existing A* algorithm, thereby improving the A* algorithm (optimized route derivation algorithm). ) can be derived.

여기서, A* 알고리즘은 다음과 같이 정의될 수 있다. Here, the A* algorithm can be defined as follows.

< A* 알고리즘>< A* Algorithm>

Figure 112020128494701-pat00002
Figure 112020128494701-pat00002

A* 알고리즘은 먼저 Openlist 상에서 목표 지점까지 예상 거리(즉, cost + heuristic function이 합쳐진 f(x))가 가장 최소인 노드를 고른다. 여기서, Openlist는 경로 상에서 가능한 모든 노드들을 추가해놓은 리스트이고, 예상 거리 함수 f(x)는 현재까지 거쳐온 경로들의 거리 소모값들의 합에 해당되는 cost function인 g(x)와, 현재 지점과 목표 지점까지의 예상 거리에 대한 heruistic function인 h(x)의 합으로써, 출발 항구로부터 도착 항구까지의 전체 경로에 대한 예상 거리 및 연료 소모값을 의미한다. 만약 그 노드가 도착지점 노드이면 경로 찾기가 모두 완료되었다는 의미이므로 해당 알고리즘은 종료되고, 도착지점이 아니라면 경로 중간이라는 의미이므로 해당 노드를 경로 찾기를 시도한 노드들의 리스트인 Closelist에 추가된다. 해당 노드에 인접한 노드들 중, Closelist에 소속되지 않은 노드들은 가능한 경로 중 하나이므로, Openlist에 추가하고, 해당 인접 노드들의 도착지점까지의 예상거리 f(x)를 계산한다. 만약 인접 노드가 이미 Openlist에 있었는데, 계산된 f(x) 값이 더 작다면, 지금의 경로가 더욱 최적이라는 뜻이므로 f(x) 값을 업데이트하고, 인접 노드와 해당 노드를 Parent-Child 관계로 연결한다. 위와 같은 단계로 경로 찾기가 완료될 때까지 반복하면 A* 알고리즘에 따른 최적화 경로가 도출된다. The A* algorithm first selects the node with the smallest expected distance to the target point on the Openlist (i.e. f(x) combined with cost + heuristic function). Here, Openlist is a list in which all possible nodes on the path are added, and the expected distance function f(x) is the cost function g(x) corresponding to the sum of the distance consumption values of the paths traveled so far, and the current point and the target As the sum of h(x), which is a heruistic function for the expected distance to a point, it means the expected distance and fuel consumption value for the entire route from the departure port to the arrival port. If the node is the destination node, it means that the route search is complete, so the algorithm is terminated. Among the nodes adjacent to the corresponding node, nodes that do not belong to the Closelist are one of the possible paths, so they are added to the Openlist, and the expected distance f(x) to the destination of the corresponding adjacent nodes is calculated. If the adjacent node is already in the Openlist and the calculated f(x) value is smaller, it means that the current path is more optimal, so update the f(x) value and make the adjacent node and the corresponding node a parent-child relationship. connect If the above steps are repeated until path finding is completed, an optimized path according to the A* algorithm is derived.

또한, 네트워크 그래프 생성부(110)는 복수의 네트워크 그래프에 대응되는 복수의 항로별로 예상되는 항해 소요 시간 및 연료 사용량을 개선된 A* 알고리즘에 반영할 수 있다. 이를 통해, 개선된 A* 알고리즘을 이용하여 최적화된 항로를 도출할 수 있다. In addition, the network graph generator 110 may reflect the estimated voyage time and fuel consumption for each of a plurality of routes corresponding to the plurality of network graphs to the improved A* algorithm. Through this, an optimized route can be derived using the improved A* algorithm.

데이터베이스(100)는 네트워크 그래프 생성부(110)에 의해 생성된 복수의 네트워크 그래프를 저장하고, 각 네트워크 그래프별로 각 네트워크 그래프와 관련된 관계 정보 및 각 네트워크 그래프에 포함된 복수의 웨이포인트 간의 거리 및 엣지 정보를 매핑하여 저장할 수 있다. The database 100 stores a plurality of network graphs generated by the network graph generator 110, and for each network graph, relationship information related to each network graph and distances and edges between a plurality of waypoints included in each network graph Information can be mapped and stored.

항구 정보 수신부(120)는 사용자 단말로부터 선박의 출발지 및 목적지에 대한 정보를 수신할 수 있다. 예를 들면, 선박의 출발지 정보에는 선박이 출발하는 출발지 항구에 해당하는 항구명 또는 출발지 항구가 위치하는 위경도 정보가 포함되고, 선박의 목적지 정보에는 선박이 도착하는 목적지 항구에 해당하는 항구명 또는 목적지 항구가 위치하는 위경도 정보가 포함될 수 있다.The port information receiving unit 120 may receive information about a ship's departure point and destination from a user terminal. For example, the ship's departure information includes the port name corresponding to the departure port from which the ship departs or the latitude and longitude information at which the departure port is located, and the ship's destination information includes the port name corresponding to the destination port to which the ship arrives or Latitude and longitude information at which the destination port is located may be included.

네트워크 그래프 선택부(130)는 출발지 및 목적지에 대한 정보에 기초하여 복수의 네트워크 그래프 중 하나를 선택할 수 있다. The network graph selection unit 130 may select one of a plurality of network graphs based on information on a source and a destination.

예를 들어, 네트워크 그래프 선택부(130)는 데이터베이스(100)에 저장된 복수의 네트워크 그래프와 관련된 관계 정보를 이용하여 출발지 정보에 대응하는 웨이포인트 및 목적지 정보에 대응하는 웨이포인트에 대한 정보를 검색할 수 있다. 또한, 네트워크 그래프 선택부(130)는 데이터베이스(100)에 저장된 복수의 네트워크 그래프 중 검색된 출발지 정보에 대응하는 웨이포인트 및 목적지 정보에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프를 선택할 수 있다. For example, the network graph selection unit 130 searches for information on waypoints corresponding to source information and waypoints corresponding to destination information using relationship information related to a plurality of network graphs stored in the database 100. can In addition, the network graph selector 130 may select a plurality of network graphs including a waypoint corresponding to the searched source information and a waypoint corresponding to the destination information among the plurality of network graphs stored in the database 100 .

예를 들어, 도 4a를 참조하면, 출발지 정보에 대응하는 웨이포인트가 11번 웨이포인트이고, 목적지 정보에 대응하는 웨이포인트가 2374번 웨이포인트인 경우, 네트워크 그래프 선택부(130)는 데이터베이스(100)에 저장된 복수의 네트워크 그래프 중 11 번 웨이포인트를 출발지로하고 2374번 웨이포인트를 목적지로 하는 네트워크 그래프를 검색하고, 검색된 네트워크 그래프에 포함된 복수의 웨이포인트 간의 거리값과 함께 검색된 네트워크 그래프에 포함된 각 웨이포인트의 위도 데이터 및 경로 데이터를 검색할 수 있다. For example, referring to FIG. 4A , when the waypoint corresponding to the source information is waypoint 11 and the waypoint corresponding to the destination information is waypoint 2374, the network graph selector 130 selects the database 100 ), search for a network graph with waypoint number 11 as the starting point and waypoint number 2374 as the destination among the plurality of network graphs stored in , and include it in the searched network graph along with the distance values between the plurality of waypoints included in the searched network graph. You can search the latitude data and route data of each waypoint.

네트워크 그래프 선택부(130)는 출발지에 대응하는 웨이포인트 및 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프에 포함된 복수의 엣지의 가중치에 기초하여 최단 경로를 갖는 네트워크 그래프를 선택할 수 있다. 예를 들어, 네트워크 그래프 선택부(130)는 최단 경로 탐색 알고리즘(예컨대, A* 알고리즘)을 이용하여 최단 경로를 갖는 네트워크 그래프를 검색할 수 있다. The network graph selector 130 may select a network graph having the shortest path based on weights of a plurality of edges included in a plurality of network graphs including a waypoint corresponding to a starting point and a waypoint corresponding to a destination. For example, the network graph selector 130 may search a network graph having the shortest path using a shortest path search algorithm (eg, A* algorithm).

네트워크 그래프 선택부(130)는 출발지에 대응하는 웨이포인트 및 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프에 대하여 각 네트워크 그래프별로 예상되는 항해 소요 시간 및 연료 사용량 정보를 계산할 수 있다. The network graph selector 130 may calculate expected voyage time and fuel consumption information for each network graph for a plurality of network graphs including a waypoint corresponding to a departure point and a waypoint corresponding to a destination.

네트워크 그래프 선택부(130)는 출발지에 대응하는 웨이포인트 및 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프 중 기설정된 임계값 이하인 거리값을 갖는 네트워크 그래프를 추출하고, 추출된 적어도 하나의 네트워크 그래프에 대한 항해 소요 시간 및 연료 사용량 정보에 기초하여 최적의 네트워크 그래프를 선택할 수 있다. The network graph selector 130 extracts a network graph having a distance value that is less than or equal to a preset threshold value from among a plurality of network graphs including waypoints corresponding to a starting point and waypoints corresponding to a destination, and extracts at least one network graph. An optimal network graph may be selected based on the required voyage time and fuel consumption information for the graph.

네트워크 그래프 선택부(130)는 출발지에 대응하는 웨이포인트 및 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프 중 기설정된 임계값 이하인 거리값을 갖는 네트워크 그래프를 추출하고, 추출된 네트워크 그래프에 대응하는 항로 상의 해상 기상 정보에 기초하여 추출된 네트워크 그래프 중 최적의 네트워크 그래프를 선택할 수 있다. 여기서, 해상 기상 정보는 예를 들어, 파고, 파향, 풍향, 표면압, 너울(swell) 높이, 너울 방향, 커런트(current), 열대성 태풍 및 아이스 커버(ice cover) 중 적어도 하나를 포함할 수 있다.The network graph selector 130 extracts a network graph having a distance value that is less than or equal to a predetermined threshold value from among a plurality of network graphs including a waypoint corresponding to a starting point and a waypoint corresponding to a destination, and corresponds to the extracted network graph. An optimal network graph may be selected from network graphs extracted based on maritime weather information on a route to be traveled. Here, the maritime weather information may include, for example, at least one of wave height, wave direction, wind direction, surface pressure, swell height, swell direction, current, tropical typhoon, and ice cover. .

네트워크 그래프 선택부(130)는 출발지에 대응하는 웨이포인트 및 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프 중 기설정된 임계값 이하인 거리값을 갖는 네트워크 그래프를 추출하고, 추출된 네트워크 그래프에 대응하는 항로 상의 해상 트래픽 정보에 기초하여 추출된 네트워크 그래프 중 최적의 네트워크 그래프를 선택할 수 있다.The network graph selector 130 extracts a network graph having a distance value that is less than or equal to a predetermined threshold value from among a plurality of network graphs including a waypoint corresponding to a starting point and a waypoint corresponding to a destination, and corresponds to the extracted network graph. An optimal network graph may be selected from network graphs extracted based on maritime traffic information on a route to be traveled.

항로 정보 전송부(140)는 선택된 최단 경로를 갖는 네트워크 그래프에 대응하는 항로에 대한 정보를 사용자 단말로 전송할 수 있다. 예를 들어, 도 4b를 참조하면, 항로 정보 전송부(140)는 선택된 네트워크 그래프에 대응하는 항로를 지도 UI 상에 표시하여 사용자 단말에게 전송할 수 있다. The route information transmitter 140 may transmit information about a route corresponding to a network graph having the selected shortest path to a user terminal. For example, referring to FIG. 4B , the route information transmission unit 140 may display a route corresponding to the selected network graph on a map UI and transmit the route to the user terminal.

여기서, 선택된 네트워크 그래프에 대응하는 항로에 대한 정보에는 예를 들어, 항로에 따라 예상되는 항해 거리 정보, 항해 시간 정보, 선박의 평균 운항 속도, 선박의 운항에 대한 연료 사용량 정보 등이 포함될 수 있다. 또한, 선택된 네트워크 그래프에 대응하는 항로에 대한 정보에는 운항 날짜별 예상 해상 기상 정보, 현재 해상 기상 정보, 해상 트래픽 정보, 항로 상의 해상의 깊이 정보 등이 포함될 수 있다. Here, the information on the route corresponding to the selected network graph may include, for example, voyage distance information expected according to the route, voyage time information, average sailing speed of the ship, fuel consumption information for the ship's operation, and the like. In addition, the information on the route corresponding to the selected network graph may include expected maritime weather information by operating date, current maritime weather information, maritime traffic information, sea depth information on the route, and the like.

예를 들면, 기상 예보 정보 제공부(미도시)는 선택된 네트워크 그래프에 대응하는 항로에 대한 정보에 포함된 정보 중 사용자 단말에 의해 선택된 기상 예보 정보를 지도의 해상에 반영하여 사용자 단말에게 제공할 수 있다. For example, the weather forecast information provider (not shown) may reflect weather forecast information selected by the user terminal among information included in information on a route corresponding to the selected network graph to the sea of the map and provide the user terminal with the weather forecast information. there is.

예를 들면, 사용자 단말에서 해상의 파고에 대한 정보를 요청한 경우, 기상 예보 정보 제공부(미도시)는 선택된 네트워크 그래프에 대응하는 항로 상에 대하여 해수면의 색상 변화로 현재 파도의 높이 정보를 반영한 지도를 사용자 단말에게 제공할 수 있다. 사용자 단말에서 해상의 파향 또는 풍향에 대한 정보를 요청한 경우, 기상 예보 정보 제공부(미도시)는 선택된 네트워크 그래프에 대응하는 항로 상에 대하여 지도의 해상에 파도가 진행하는 방향 또는 바람의 방향 정보를 표시하여 사용자 단말에게 제공할 수 있다. For example, when the user terminal requests information on sea wave height, the weather forecast information providing unit (not shown) maps a map reflecting current wave height information as a color change of the sea level on a route corresponding to the selected network graph. may be provided to the user terminal. When the user terminal requests information on the direction of waves or wind on the sea, the weather forecast information providing unit (not shown) provides information on the direction of waves or wind on the sea of the map on the route corresponding to the selected network graph. It can be displayed and provided to the user terminal.

기상 예보 정보 제공부(미도시)는 사용자 단말에 의해 선택된 네트워크 그래프에 대응하는 항로에 대한 정보에 기초하여 항로에 대한 적어도 하나의 기상 예보 정보의 요약 정보를 사용자 단말에게 제공하고, 사용자 단말로부터 항로에 대한 기상 예보 정보의 상세 정보 요청을 수신하면, 사용자 단말에게 기상 예보 정보의 상세 정보를 제공할 수 있다. 여기서, 항로에 대한 기상 예보 정보의 요약 정보는 예를 들어, 출발지 및 목적지 각각에 대응하는 항구의 위치가 표시된 지도와 항로 상의 날짜별 바람 및 파도 세기 정보를 포함할 수 있다. 항로에 대한 기상 예보 정보의 상세 정보는 출발지 및 목적지에 대응하는 항구명, 위경도, 항구의 국가 정보, 로컬 시간 정보 등을 포함하는 항구 상세 정보, 날짜별 항로 상의 바람의 방향 및 속도를 포함하는 바람 기상 정보, 날짜별 파도의 진행 방향 및 파도의 높이를 포함하는 파도 기상 정보 및 출발지 및 목적지에 대응하는 항구의 현재 가시 거리 정보를 포함하는 가시 기상 정보를 포함할 수 있다. The weather forecast information providing unit (not shown) provides summary information of at least one weather forecast information for a route to the user terminal based on the information on the route corresponding to the network graph selected by the user terminal, and provides the user terminal with information about the route corresponding to the network graph selected by the user terminal. Upon receiving a detailed information request of weather forecast information for , detailed information of weather forecast information may be provided to the user terminal. Here, the summary information of the weather forecast information for the route may include, for example, a map indicating the location of a port corresponding to each departure point and destination, and wind and wave strength information for each date on the route. Detailed information of the weather forecast information for the route includes port name corresponding to the departure point and destination, latitude and longitude, port country information, local time information, etc., and wind direction and speed on the route by date. It may include wind weather information, wave weather information including wave direction and wave height by date, and visible weather information including current visible distance information of ports corresponding to departure and destination points.

한편, 당업자라면, 데이터베이스(100), 네트워크 그래프 생성부(110), 항구 정보 수신부(120), 네트워크 그래프 선택부(130) 및 항로 정보 전송부(140) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. Meanwhile, for those skilled in the art, each of the database 100, the network graph generator 110, the port information receiver 120, the network graph selector 130, and the route information transmitter 140 may be separately implemented, or one of them It will be fully understood that the above may be incorporated and implemented.

도 5는 본 발명의 일 실시예에 따른, 항로 결정을 위한 복수의 네트워크 그래프를 생성하는 방법을 나타낸 흐름도이다. 5 is a flowchart illustrating a method of generating a plurality of network graphs for route determination according to an embodiment of the present invention.

도 5를 참조하면, 단계 S501에서 항로 결정 서버(10)는 복수의 웨이포인트에 대한 정보를 데이터베이스(100)에 저장할 수 있다. 여기서, 복수의 웨이포인트에 대한 정보는 웨이포인트의 위도 데이터 및 경도 데이터를 포함할 수 있다. Referring to FIG. 5 , in step S501 , the route determination server 10 may store information on a plurality of waypoints in the database 100 . Here, the information on the plurality of waypoints may include latitude data and longitude data of the waypoints.

단계 S503에서 항로 결정 서버(10)는 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성할 수 있다. 이 때, 각 웨이포인트별로 생성된 복수의 네트워크 그래프는 데이터베이스(100)에 저장될 수 있다. In step S503, the route determination server 10 may create a plurality of network graphs by connecting a plurality of other waypoints for each waypoint based on the latitude data and longitude data included in the information on the plurality of waypoints. In this case, a plurality of network graphs generated for each waypoint may be stored in the database 100 .

상술한 설명에서, 단계 S501 내지 S503는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S501 to S503 may be further divided into additional steps or combined into fewer steps, depending on the implementation of the present invention. Also, some steps may be omitted if necessary, and the order of steps may be changed.

도 6은 본 발명의 일 실시예에 따른, 선박의 항로를 결정하는 방법을 나타낸 흐름도이다. 6 is a flowchart illustrating a method of determining a ship route according to an embodiment of the present invention.

도 6을 참조하면, 단계 S601에서 항로 결정 서버(10)는 사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신할 수 있다. Referring to FIG. 6 , in step S601, the route determination server 10 may receive information about a departure point and a destination from a user terminal.

단계 S603에서 항로 결정 서버(10)는 출발지 및 목적지에 대한 정보에 기초하여 데이터베이스(100)에 저장된 복수의 네트워크 그래프 중 하나를 선택할 수 있다. In step S603, the route determination server 10 may select one of a plurality of network graphs stored in the database 100 based on the information on the origin and destination.

단계 S605에서 항로 결정 서버(10)는 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 사용자 단말에게 전송할 수 있다. In step S605, the route determination server 10 may transmit information on a route corresponding to the selected network graph to the user terminal.

상술한 설명에서, 단계 S601 내지 S607은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the foregoing description, steps S601 to S607 may be further divided into additional steps or combined into fewer steps, depending on an embodiment of the present invention. Also, some steps may be omitted if necessary, and the order of steps may be changed.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. An embodiment of the present invention may be implemented in the form of a recording medium including instructions executable by a computer, such as program modules executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer readable media may include all computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustrative purposes, and those skilled in the art can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and equivalent concepts thereof should be construed as being included in the scope of the present invention. .

10: 항로 결정 서버
100: 데이터베이스
110: 네트워크 그래프 생성부
120: 항구 정보 수신부
130: 네트워크 그래프 선택부
140: 항로 정보 전송부
10: route determination server
100: database
110: network graph generation unit
120: port information receiver
130: network graph selection unit
140: route information transmission unit

Claims (12)

선박의 항로를 결정하는 항로 결정 서버에 있어서,
복수의 선박이 운항 가능한 복수의 항로에서 교차하는 지점 또는 항로 상의 유의미한 지점을 포함하는 복수의 웨이포인트(WayPoint)에 대한 정보를 저장하는 데이터베이스;
상기 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하는 네트워크 그래프 생성부;
사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신하는 항구 정보 수신부;
상기 출발지 및 목적지에 대한 정보에 기초하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 네트워크 그래프 선택부; 및
상기 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 상기 사용자 단말로 전송하는 항로 정보 전송부
를 포함하되,
상기 데이터베이스는 상기 각 웨이포인트별로 연결된 상기 복수의 다른 웨이포인트 간의 거리값, 연결선 정보, 상기 연결된 복수의 다른 웨이포인트에 대한 위도 데이터 및 경로 데이터를 포함하는 관계 정보를 더 저장하고,
상기 네트워크 그래프 생성부는 상기 데이터베이스에 저장된 상기 관계 정보를 이용하여 상기 복수의 네트워크 그래프를 생성하고,
상기 네트워크 그래프 생성부는 해상의 해상 기상 정보를 A* 알고리즘에 반영하여 개선된 A* 알고리즘을 도출하고,
상기 네트워크 그래프 생성부는 상기 복수의 네트워크 그래프에 대응하는 복수의 항로별로 예상되는 항해 소요 시간 및 연료 사용량을 상기 개선된 A* 알고리즘에 반영하고,
상기 네트워크 그래프 선택부는 상기 개선된 A* 알고리즘을 이용하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 것인, 항로 결정 서버.
In the route determination server for determining the route of the ship,
A database for storing information on a plurality of waypoints including points crossing a plurality of routes on which a plurality of ships can navigate or meaningful points on a route;
a network graph generator for generating a plurality of network graphs by connecting a plurality of other waypoints for each waypoint based on latitude data and longitude data included in the information on the plurality of waypoints;
a port information receiving unit for receiving information on a departure point and a destination from a user terminal;
a network graph selector selecting one of the plurality of network graphs based on the information on the source and destination; and
A route information transmitter for transmitting information on a route corresponding to the selected network graph to the user terminal.
Including,
The database further stores relationship information including distance values between the plurality of other waypoints connected to each waypoint, connection line information, and latitude data and route data for the plurality of other connected waypoints,
The network graph generator generates the plurality of network graphs using the relation information stored in the database;
The network graph generating unit derives an improved A* algorithm by reflecting marine weather information of the sea to the A* algorithm,
The network graph generation unit reflects the estimated voyage time and fuel consumption for each of a plurality of routes corresponding to the plurality of network graphs in the improved A* algorithm,
Wherein the network graph selector selects one of the plurality of network graphs using the improved A* algorithm.
제 1 항에 있어서,
상기 복수의 웨이포인트 각각은 노드이고, 각 노드를 연결하는 연결선은 엣지이고,
상기 네트워크 그래프 생성부는 상기 노드 및 엣지를 포함하는 네트워크 그래프를 생성하는 것인, 항로 결정 서버.
According to claim 1,
Each of the plurality of waypoints is a node, and a connection line connecting each node is an edge;
The network graph generating unit generates a network graph including the node and the edge, the route determination server.
제 2 항에 있어서,
상기 네트워크 그래프 생성부는
상기 복수의 웨이포인트 각각의 위도 데이터 및 경도 데이터에 기초하여 웨이포인트 간의 거리를 계산하고,
상기 계산된 웨이포인트 간 거리에 기초하여 상기 네트워크 그래프를 생성하는 것인, 항로 결정 서버.
According to claim 2,
The network graph generator
calculating a distance between waypoints based on latitude data and longitude data of each of the plurality of waypoints;
And generating the network graph based on the calculated distance between waypoints.
제 3 항에 있어서,
상기 네트워크 그래프 생성부는
상기 웨이포인트 간의 거리에 기초하여 상기 엣지에 가중치를 부여하는 것인, 항로 결정 서버.
According to claim 3,
The network graph generator
and assigning a weight to the edge based on the distance between the waypoints.
제 3 항에 있어서,
상기 데이터베이스는 각 네트워크 그래프별로 각 네트워크 그래프에 포함된 복수의 웨이포인트 간의 거리를 매핑하여 저장하는 것인, 항로 결정 서버.
According to claim 3,
Wherein the database maps and stores distances between a plurality of waypoints included in each network graph for each network graph.
제 4 항에 있어서,
상기 네트워크 그래프 선택부는 상기 출발지에 대응하는 웨이포인트 및 상기 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프에 포함된 복수의 엣지의 가중치에 기초하여 최단 경로를 갖는 네트워크 그래프를 선택하는 것인, 항로 결정 서버.
According to claim 4,
The network graph selector selects a network graph having the shortest path based on weights of a plurality of edges included in a plurality of network graphs including waypoints corresponding to the starting point and waypoints corresponding to the destination. Route decision server.
항로 결정 서버에 의해 수행되는 선박의 항로를 결정하는 방법에 있어서,
복수의 선박이 운항 가능한 복수의 항로에서 교차하는 지점 또는 항로 상의 유의미한 지점을 포함하는 복수의 웨이포인트(WayPoint)에 대한 정보를 데이터베이스에 저장하는 단계;
상기 복수의 웨이포인트에 대한 정보에 포함된 위도 데이터 및 경도 데이터에 기초하여 각 웨이포인트별로 복수의 다른 웨이포인트를 연결하여 복수의 네트워크 그래프를 생성하는 단계;
사용자 단말로부터 출발지 및 목적지에 대한 정보를 수신하는 단계;
상기 출발지 및 목적지에 대한 정보에 기초하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 단계;
상기 선택된 네트워크 그래프에 대응하는 항로에 대한 정보를 상기 사용자 단말로 전송하는 단계
를 포함하되,
상기 데이터베이스에 저장하는 단계는
상기 각 웨이포인트별로 연결된 상기 복수의 다른 웨이포인트 간의 거리값, 연결선 정보, 상기 연결된 복수의 다른 웨이포인트에 대한 위도 데이터 및 경로 데이터를 포함하는 관계 정보를 더 저장하는 단계를 포함하고,
상기 복수의 네트워크 그래프를 생성하는 단계는
상기 데이터베이스에 저장된 상기 관계 정보를 이용하여 상기 복수의 네트워크 그래프를 생성하는 단계;
해상의 해상 기상 정보를 A* 알고리즘에 반영하여 개선된 A* 알고리즘을 도출하는 단계; 및
상기 복수의 네트워크 그래프에 대응하는 복수의 항로별로 예상되는 항해 소요 시간 및 연료 사용량을 상기 개선된 A* 알고리즘에 반영하는 단계를 더 포함하고,
상기 선택하는 단계는
상기 개선된 A* 알고리즘을 이용하여 상기 복수의 네트워크 그래프 중 하나를 선택하는 단계인 것인, 항로 결정 방법.
A method for determining a ship's route performed by a route determination server,
Storing information on a plurality of waypoints including points intersecting in a plurality of routes on which a plurality of ships can navigate or meaningful points on a route in a database;
generating a plurality of network graphs by connecting a plurality of other waypoints for each waypoint based on latitude data and longitude data included in the information on the plurality of waypoints;
Receiving information about a departure point and a destination from a user terminal;
selecting one of the plurality of network graphs based on the information on the source and destination;
Transmitting information on a route corresponding to the selected network graph to the user terminal
Including,
Storing in the database
further storing relationship information including distance values between the plurality of other waypoints connected to each waypoint, connection line information, and latitude data and route data for the plurality of other connected waypoints;
The step of generating the plurality of network graphs is
generating the plurality of network graphs using the relationship information stored in the database;
Deriving an improved A* algorithm by reflecting marine weather information of the sea to the A* algorithm; and
Further comprising reflecting the expected voyage time and fuel consumption for each of the plurality of routes corresponding to the plurality of network graphs to the improved A* algorithm,
The selection step is
The step of selecting one of the plurality of network graphs using the improved A* algorithm.
제 7 항에 있어서,
상기 복수의 웨이포인트 각각은 노드이고, 각 노드를 연결하는 연결선은 엣지이고,
상기 복수의 네트워크 그래프를 생성하는 단계는
상기 노드 및 엣지를 포함하는 네트워크 그래프를 생성하는 단계를 포함하는 것인, 항로 결정 방법.
According to claim 7,
Each of the plurality of waypoints is a node, and a connection line connecting each node is an edge;
The step of generating the plurality of network graphs is
The route determination method comprising generating a network graph including the nodes and edges.
제 8 항에 있어서,
상기 복수의 네트워크 그래프를 생성하는 단계는
상기 복수의 웨이포인트 각각의 위도 데이터 및 경도 데이터에 기초하여 웨이포인트 간의 거리를 계산하는 단계 및
상기 계산된 웨이포인트 간 거리에 기초하여 상기 네트워크 그래프를 생성하는 단계를 포함하는 것인, 항로 결정 방법.
According to claim 8,
The step of generating the plurality of network graphs is
calculating a distance between waypoints based on latitude data and longitude data of each of the plurality of waypoints; and
And generating the network graph based on the calculated distance between waypoints.
제 9 항에 있어서,
상기 복수의 네트워크 그래프를 생성하는 단계는
상기 웨이포인트 간의 거리에 기초하여 상기 엣지에 가중치를 부여하는 단계를 포함하는 것인, 항로 결정 방법.
According to claim 9,
The step of generating the plurality of network graphs is
and assigning a weight to the edge based on the distance between the waypoints.
제 9 항에 있어서,
각 네트워크 그래프별로 각 네트워크 그래프에 포함된 복수의 웨이포인트 간의 거리를 매핑하여 저장하는 단계를 더 포함하는 것인, 항로 결정 방법.
According to claim 9,
The route determination method further comprising mapping and storing distances between a plurality of waypoints included in each network graph for each network graph.
제 10 항에 있어서,
상기 선택하는 단계는
상기 출발지에 대응하는 웨이포인트 및 상기 목적지에 대응하는 웨이포인트를 포함하는 복수의 네트워크 그래프에 포함된 복수의 엣지의 가중치에 기초하여 최단 경로를 갖는 네트워크 그래프를 선택하는 단계를 포함하는 것인, 항로 결정 방법.
According to claim 10,
The selection step is
Selecting a network graph having the shortest path based on weights of a plurality of edges included in a plurality of network graphs including a waypoint corresponding to the starting point and a waypoint corresponding to the destination, How to decide.
KR1020200162953A 2020-11-27 2020-11-27 Method and server for providing course information of vessel KR102514765B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200162953A KR102514765B1 (en) 2020-11-27 2020-11-27 Method and server for providing course information of vessel
PCT/KR2020/017171 WO2022114302A1 (en) 2020-11-27 2020-11-27 Server and method for determination of ship route

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200162953A KR102514765B1 (en) 2020-11-27 2020-11-27 Method and server for providing course information of vessel

Publications (2)

Publication Number Publication Date
KR20220074439A KR20220074439A (en) 2022-06-03
KR102514765B1 true KR102514765B1 (en) 2023-03-29

Family

ID=81755761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200162953A KR102514765B1 (en) 2020-11-27 2020-11-27 Method and server for providing course information of vessel

Country Status (2)

Country Link
KR (1) KR102514765B1 (en)
WO (1) WO2022114302A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020070312A1 (en) * 2018-10-05 2020-04-09 Offshore Navigation Limited An apparatus for determining an optimal route of a maritime ship

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4934756B1 (en) * 2011-11-10 2012-05-16 三井造船株式会社 Ship optimum route calculation system, vessel operation support system, vessel optimum route calculation method, and vessel operation support method
JP6288933B2 (en) * 2013-04-12 2018-03-07 古野電気株式会社 Route display device and route display method
KR101556723B1 (en) 2013-12-20 2015-10-02 삼성중공업 주식회사 Optimal route determination device for ship
KR20160005818A (en) * 2014-07-07 2016-01-18 이마린 주식회사 System and Method of creation and exchange of ship's route information based on ship's identical feature and environmental characteristics
KR20160022990A (en) * 2014-08-20 2016-03-03 현대중공업 주식회사 Method of providing ship navigation information, apparatus performing the same and storage media storing the same
KR101991101B1 (en) * 2017-08-21 2019-06-20 주식회사 웨더아이 Server, user device and method for providing vessel route determination service
KR102094525B1 (en) * 2018-07-04 2020-03-27 대우조선해양 주식회사 System and method for providing optimized vessel seaway and computer-readable recording medium thereof
EP3644014A1 (en) * 2018-10-23 2020-04-29 Offshore Navigation Limited An apparatus for determining an optimal route of a maritime ship

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020070312A1 (en) * 2018-10-05 2020-04-09 Offshore Navigation Limited An apparatus for determining an optimal route of a maritime ship

Also Published As

Publication number Publication date
WO2022114302A1 (en) 2022-06-02
KR20220074439A (en) 2022-06-03

Similar Documents

Publication Publication Date Title
KR102673743B1 (en) Device for determining the optimal route of a maritime vessel
KR102215520B1 (en) Method and server for providing course information of vessel including coast weather information
KR101850866B1 (en) See path calculation method of vessel
EP2145155B1 (en) Method and apparatus for routing ocean going vessels to avoid treacherous environments
US9157746B2 (en) Vessel routing system
CN107289947A (en) A kind of boat-carrying intelligent gas is as navigation system
KR101713160B1 (en) Method for supplying safe-voyage in Northic sea
US20140222332A1 (en) Mobile terminal, electronic navigational chart server, and method for updating electronic navigational chart based on crowdsourcing thereof
JP6959416B2 (en) Submarine cable route planning tool
JP6867898B2 (en) Optimal route search method and equipment
KR20090035589A (en) Method for determining a route for an underwater vehicle
KR102109571B1 (en) System and method for providing optimized vessel seaway and computer-readable recording medium thereof
KR102514765B1 (en) Method and server for providing course information of vessel
KR101991101B1 (en) Server, user device and method for providing vessel route determination service
KR102094525B1 (en) System and method for providing optimized vessel seaway and computer-readable recording medium thereof
WO2022173934A1 (en) Rule-based environmental condition impact assessments
Loeches et al. METOC-driven Vessel Interdiction System (MVIS): Supporting decision making in Command and Control (C2) systems
KR20230140944A (en) Server and method for providing vessel navigation service
KR102143322B1 (en) Method for supplying safe-voyage in Northic sea
WO2018115569A1 (en) Method for analyzing fleet operations
Tran et al. Pathfinding and optimization for vessels in ice: A literature review
KR20240044041A (en) Server and method for providing fleet navigation service
CN117928533A (en) North-pole ship route planning method based on space-based sea ice product
KR20220036593A (en) System and method for recommending ship routes

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right