KR102623622B1 - Improved delivery time prediction system through AI algorithm - Google Patents

Improved delivery time prediction system through AI algorithm Download PDF

Info

Publication number
KR102623622B1
KR102623622B1 KR1020210128134A KR20210128134A KR102623622B1 KR 102623622 B1 KR102623622 B1 KR 102623622B1 KR 1020210128134 A KR1020210128134 A KR 1020210128134A KR 20210128134 A KR20210128134 A KR 20210128134A KR 102623622 B1 KR102623622 B1 KR 102623622B1
Authority
KR
South Korea
Prior art keywords
delivery
time
distance
specific
algorithm
Prior art date
Application number
KR1020210128134A
Other languages
Korean (ko)
Other versions
KR20230045372A (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 KR1020210128134A priority Critical patent/KR102623622B1/en
Publication of KR20230045372A publication Critical patent/KR20230045372A/en
Application granted granted Critical
Publication of KR102623622B1 publication Critical patent/KR102623622B1/en

Links

Classifications

    • 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0832Special goods or special handling procedures, e.g. handling of hazardous or fragile goods
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • G06Q10/06375Prediction of business process outcome or impact based on a proposed change
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • G06Q10/08355Routing methods

Abstract

배송지를 그룹핑하는 방법에 관한 것으로써, 본 발명에 의하면 일정 범위의 지역에 특정 기준에 따라 복수 개의 제1 중심 좌표를 설정하고, 복수 개의 제1 중심 좌표 각각을 기준으로 상기 복수 개의 중심 좌표에서 일정 거리 이내에 포함되어 있는 복수 개의 배송지를 제1 그룹핑 절차를 통해 복수 개의 제1 그룹들로 그룹핑할 수 있다.Pertaining to a method of grouping delivery destinations, according to the present invention, a plurality of first center coordinates are set in a certain range of areas according to a specific standard, and a certain number of first center coordinates are set based on each of the plurality of first center coordinates. A plurality of delivery destinations included within a distance may be grouped into a plurality of first groups through a first grouping procedure.

Description

AI 알고리즘을 통한 개선된 배송 시간 예측 시스템{Improved delivery time prediction system through AI algorithm}Improved delivery time prediction system through AI algorithm}

본 발명은 물품 배송을 위한 배차 시스템으로써, 물품에 대한 각각의 배송지를 그룹핑하는 알고리즘, 배송지에 따른 최소 경로를 설정하기 위한 배송 경로 알고리즘 및 배송자의 배송 정보에 기초하여 배송 시간을 예측하기 위한 알고리즘을 통한 배차 시스템에 관한 것이다.The present invention is a dispatch system for product delivery, which includes an algorithm for grouping each delivery location for goods, a delivery route algorithm for setting the minimum route according to the delivery location, and an algorithm for predicting delivery time based on the delivery information of the deliverer. It is about the dispatch system through.

택배나 퀵서비스를 이용하기에는 부피가 크거나 양이 많은 경우 화물터미날의 물류서비스를 이용하는 경우가 많은데, 종래에는 TRS(Trunked Radio System)와 같은 무전기를 이용하여 일감을 오더하고, 차주 또한 무전기를 통 해 응답을 하고 있는 실정이다. In cases where the volume or volume is too large to use courier or quick service, logistics services at cargo terminals are often used. Conventionally, work is ordered using a radio such as TRS (Trunked Radio System), and the borrower also receives the order through the radio. A response is in progress.

종래의 화물운송 과정에서의 배차방법은 거래처, 즉 화물을 운송하고자 하는 고객은 전화 또는 무전을 통해 콜센터로 운송의뢰를 하게 된다. 즉, 고객은 화물을 싣게 되는 상차지, 차종 및 시간 등을 구두로 설명해서 콜센터로 접수 예약을 한다.In the conventional cargo transportation process, the customer who wants to transport cargo makes a transport request to a call center via phone or radio. In other words, the customer makes a reservation at the call center by verbally explaining the loading location, vehicle type, and time at which the cargo will be loaded.

이후 콜센터는 무전방송을 통해 차주회원들에게 접수 예약된 운송의뢰가 있음을 전달하고, 무전방송을 수신한 차주회원들은 역시 무전기로 회신을 해서 자신에게 배차해줄 것을 요청하게 된다. [0006] 이때, 차주회원들의 배차요청은 무전기의 키를 눌러서 수락을 하는 것이 일반적이며, 콜센터에서는 선착순으로, 즉 가장 먼저 무전기의 키를 누른 회원에게 배차를 하게 된다. Afterwards, the call center informs the borrower members through radio broadcast that there is a reserved transportation request, and the borrower members who received the radio broadcast also reply via radio and request that the vehicle be dispatched to them. [0006] At this time, it is common to accept requests for dispatch from borrower members by pressing a key on the radio, and in a call center, dispatch is made on a first-come, first-served basis, that is, to the member who first presses the key on the radio.

그런데, 종래기술의 배차시스템에서는 최대 2~4건의 상품을 묶어서 배송하는 경우, 배송지를 배송자가 직접 선택하기 때문에 각각의 상품간의 거리에 따른 최적의 그룹핑이 되지 못하며, 4개 이상의 배송품을 한꺼번에 배정받지 못한다.However, in the prior art dispatch system, when a maximum of 2 to 4 products are bundled and delivered, optimal grouping according to the distance between each product is not possible because the delivery address is selected directly by the deliverer, and more than 4 delivered products cannot be assigned at once. can not do it.

또한, 배송 단계에서 각 물품간의 거리에 따른 최소 경로만을 안내해주기 때문에 전체적인 배송지에 따른 최적의 경로를 제공하지 못하며, 각 건당의 배송 시간만을 안내해주기 때문에 배송자가 몇건을 배송하는지 여부 및 배송자의 배송 건수에 따른 배송 시간을 예측하지 못한다는 문제점이 존재한다.In addition, since it only provides information on the minimum route according to the distance between each item during the delivery stage, it cannot provide the optimal route according to the overall delivery location. Since it only provides information on the delivery time for each item, it does not provide information on how many items the deliverer is delivering and the number of deliveries by the deliverer. There is a problem that delivery time cannot be predicted.

본 발명은 상기의 제반 문제점을 해결하기 위해서 창출된 것으로, 그룹핑 알고리즘, 및 경로 설정 알고리즘을 이용하여 배송자에게 최적의 배차 시스템을 제공한다.The present invention was created to solve the above-mentioned problems, and provides an optimal dispatch system to deliverers using a grouping algorithm and a route setting algorithm.

또한, 본 발명은 지역 및 거리를 기반으로 배송지들간의 최적의 그룹핑을 방법을 제공한다.Additionally, the present invention provides a method for optimal grouping of delivery destinations based on region and distance.

또한, 본 발명은 배송자의 배송 물품의 개수에 따른 복수 개의 배송지에 기초하여 최적의 배송 경로를 설정하기 위한 방법을 제공한다.Additionally, the present invention provides a method for setting an optimal delivery route based on a plurality of delivery destinations according to the number of delivery items of the deliverer.

또한, 본 발명은 배송자의 배송 건수에 따른 배송 시간을 예측하기 위한 배송 시간 예측 알고리즘을 제공한다.Additionally, the present invention provides a delivery time prediction algorithm for predicting delivery time according to the number of deliveries of a deliverer.

본 명세서에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in this specification are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below. You will be able to.

본 발명은 상술한 문제점을 해결하기 위한 통합 배차 시스템을 제공한다.The present invention provides an integrated dispatch system to solve the above-mentioned problems.

구체적으로, 본 발명의 일 실시예에 따른 그룹핑 방법은 일정 범위의 지역에 특정 기준에 따라 복수 개의 제1 중심 좌표를 설정하는 단계, 상기 특정 기준은 상기 복수 개의 중심 좌표 각각에 따른 배송지의 개수, 중심 좌표간의 거리, 인구 수, 교통 량 및 인구 밀집 도 중 적어도 하나이고; 상기 복수 개의 제1 중심 좌표 각각을 기준으로 상기 복수 개의 중심 좌표에서 일정 거리 이내에 포함되어 있는 복수 개의 배송지를 제1 그룹핑 절차를 통해 복수 개의 제1 그룹들로 그룹핑하는 단계; 상기 복수 개의 제1 그룹들 각각에 포함된 상기 복수 개의 배송지의 개수가 특정 값 이상인지 여부를 판단하는 단계, 상기 복수 개의 제1 그룹들 중 상기 복수 개의 배송지들의 개수가 상기 특정 값 이상인 적어도 하나의 제1 그룹은 상기 복수 개의 배송지의 개수가 상기 특정 값 이하가 되도록 제2 그룹핑 절차를 통해서 적어도 하나의 제2 그룹으로 그룹핑하는 단계, 상기 제2 그룹핑 절차는 상기 적어도 하나의 제2 그룹에 포함된 적어도 하나의 배송지의 개수가 상기 특정 값 이하가 될 때까지 반복해서 수행된다.Specifically, the grouping method according to an embodiment of the present invention includes setting a plurality of first center coordinates in a certain range of areas according to a specific standard, where the specific standard is the number of delivery destinations according to each of the plurality of center coordinates, It is at least one of the distance between center coordinates, population number, traffic volume, and population density; Grouping a plurality of delivery destinations included within a certain distance from the plurality of center coordinates into a plurality of first groups based on each of the plurality of first center coordinates through a first grouping procedure; Determining whether the number of the plurality of delivery destinations included in each of the plurality of first groups is greater than or equal to a specific value, at least one where the number of the plurality of delivery destinations among the plurality of first groups is greater than or equal to the specific value Grouping the first group into at least one second group through a second grouping procedure such that the number of the plurality of delivery destinations is less than or equal to the specific value, wherein the second grouping procedure includes the at least one second group included in the second group. This is repeatedly performed until the number of at least one delivery address becomes less than or equal to the specific value.

본 발명은 상기의 제반 문제점을 해결하기 위해서 창출된 것으로, 그룹핑 알고리즘, 및 경로 설정 알고리즘을 이용하여 배송자에게 최적의 배차 시스템을 제공할 수 있다.The present invention was created to solve the above-mentioned problems, and can provide an optimal dispatch system to deliverers using a grouping algorithm and a route setting algorithm.

또한, 본 발명은 배송자의 배송 물품의 개수에 따른 복수 개의 배송지에 기초하여 최적의 배송 경로를 설정하기 때문에 효율적으로 배송을 할 수 있는 효과가 있다.In addition, the present invention has the effect of enabling efficient delivery because it sets the optimal delivery route based on a plurality of delivery destinations according to the number of delivery items of the deliverer.

또한, 본 발명은 배송자의 배송 건수에 기초하여 배송 시간을 예측하기 때문에 정확한 배송 시간을 계산할 수 있는 효과가 있다.In addition, the present invention has the effect of calculating an accurate delivery time because it predicts the delivery time based on the number of deliveries by the deliverer.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained from the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below. will be.

본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는 첨부 도면은 본 발명에 대한 실시 예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1은 본 명세서에서 제안하는 서비스 배차 시스템의 구성을 간략히 나타낸다.
도 2는 본 명세서에서 제안하는 서비스 배차 시스템의 배차 순서를 나타내는 흐름도이다.
도 3은 본 명세서에서 제안하는 배송지를 그룹핑하는 방법의 일 예를 나타내는 순서도이다.
도 4 내지 도 9는 본 명세서에서 제안하는 배송지의 그룹핑 방법의 일 실 시예를 나타낸다.
도 10은 본 명세서에서 제안하는 배송지의 경로 설정을 위한 방법의 일 예를 나타내는 순서도이다.
도 11 내지 도 17은 본 명세서에서 제안하는 경로 설정 방법의 일 실 시예를 나타낸다.
도 18은 본 명세서에서 제안하는 배송 시간을 예측하기 위한 방법의 일 예를 나타내는 순서도이다.
도 19는 본 명세서에서 제안하는 배송 시간을 예측하기 위한 선형회귀 데이터의 일 예를 나타낸다.
도 20은 본 명세서에서 제안하는 배송 시간을 예측하기 위한 시그모이드 함수의 일 예를 나타낸다.
The accompanying drawings, which are included as part of the detailed description to aid understanding of the present invention, provide examples of the present invention and explain technical features of the present invention along with the detailed description.
Figure 1 briefly shows the configuration of the service dispatch system proposed in this specification.
Figure 2 is a flowchart showing the dispatch sequence of the service dispatch system proposed in this specification.
Figure 3 is a flowchart showing an example of a method for grouping delivery destinations proposed in this specification.
4 to 9 show an example of a method for grouping delivery destinations proposed in this specification.
Figure 10 is a flowchart showing an example of a method for setting a route to a delivery destination proposed in this specification.
11 to 17 show an example of the route setting method proposed in this specification.
Figure 18 is a flowchart showing an example of a method for predicting delivery time proposed in this specification.
Figure 19 shows an example of linear regression data for predicting delivery time proposed in this specification.
Figure 20 shows an example of a sigmoid function for predicting delivery time proposed in this specification.

본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예들을 가질 수 있는 바, 이하에서는 특정 실시 예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.The above-described objects, features and advantages of the present invention will become more apparent through the following detailed description in conjunction with the accompanying drawings. However, since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail below. Like reference numerals throughout the specification in principle refer to the same elements. Additionally, if it is determined that a detailed description of a known function or configuration related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted.

도 1은 본 명세서에서 제안하는 서비스 배차 시스템의 구성을 간략히 나타낸다.Figure 1 briefly shows the configuration of the service dispatch system proposed in this specification.

도 1을 참조하면, 본 명세서에서 제안하는 서비스 배차 시스템(또는, 배차 시스템, 100)은 그룹핑 알고리즘(200), 경로 설정 알고리즘(300) 및 배송시간 예측 알고리즘(400)으로 구성될 수 있다.Referring to FIG. 1, the service dispatch system (or dispatch system, 100) proposed in this specification may be composed of a grouping algorithm 200, a route setting algorithm 300, and a delivery time prediction algorithm 400.

구체적으로, 서비스 배차 시스템(100)은 일정 지역의 배송지들을 그룹핑 알고리즘(200)을 이용하여 복수 개의 그룹으로 그룹핑하고, 그룹핑된 배송지들 중 배송자에 의해서 배송되는 적어도 하나의 배송지들 간의 배송 경로를 경로 설정 알고리즘(300)을 통해 최적의 경로로 설정할 수 있다.Specifically, the service dispatch system 100 groups delivery destinations in a certain area into a plurality of groups using the grouping algorithm 200, and establishes a delivery route between at least one delivery destination delivered by the deliverer among the grouped delivery destinations. The optimal path can be set through the path setting algorithm 300.

또한, 배송 물품을 수령하는 수령자들에게 배송시간 예측 알고리즘(400)을 통해 배송자들의 배송 정보에 기초하여 계산된 배송 시간을 제공할 수 있다.Additionally, the delivery time calculated based on the delivery information of the deliverers can be provided to recipients who receive the delivered goods through the delivery time prediction algorithm 400.

그룹핑 알고리즘(200)은 일정 지역에 분포되어 있는 복수 개의 배송지들을 특정 기준에 따라 복수 개의 그룹들 각각에 일정 개수 이하의 배송지들이 포함되도록 그룹핑할 수 있다. 이때, 그룹핑은 일정 위치 또는 특정 배송지를 기준 위치로 하여 일정 거리에 위치하는 배송지들을 그룹에 포함시킴으로써 수행될 수 있다. 이하, 그룹핑 알고리즘(200)은 아래에서 구체적으로 설명하도록 한다.The grouping algorithm 200 may group a plurality of delivery destinations distributed in a certain area according to a specific criterion so that each of the plurality of groups includes a certain number of delivery destinations or less. At this time, grouping can be performed by including delivery locations located at a certain distance in a group using a certain location or a specific delivery location as a reference position. Hereinafter, the grouping algorithm 200 will be described in detail below.

경로 설정 알고리즘(300)은 배송자가 배송할 수 있는 복수 개의 배송지들 중 일정 개수의 배송지에 대한 최단 거리를 배송 경로로 설정할 수 있게 한다. 즉, 배송자의 현재 위치를 기준으로 일정 거리 이내에 그룹핑 또는 위치되어 있는 배송지들 중 적어도 하나의 배송지가 특정 알고리즘(예를 들면, 개선된 TRS 알고리즘 등)을 이용하여 선택될 수 있다. 이후, 선택된 적어도 하나의 배송지들의 배송 순서를 변경하여 선택된 적어도 하나의 배송지들을 한번씩 경유할 수 있는 최단 거리 배송 경로로 설정될 수 있다. 이하, 경로 설정 알고리즘(300)은 아래에서 구체적으로 설명하도록 한다.The route setting algorithm 300 allows a deliverer to set the shortest distance to a certain number of delivery destinations among a plurality of delivery destinations as a delivery route. That is, at least one delivery location among delivery locations grouped or located within a certain distance based on the current location of the deliverer may be selected using a specific algorithm (eg, an improved TRS algorithm, etc.). Thereafter, the delivery order of the selected at least one delivery address may be changed to set the shortest delivery route that can pass through the selected at least one delivery location once. Hereinafter, the route setting algorithm 300 will be described in detail below.

배송시간 예측 알고리즘(400)은 서비스 배차 시스템 또는 서비스 배차 시스템을 제공하는 서버, 배송자의 단말 또는 수신자의 단말에 의해서 제공될 수 있다. 구체적으로, 배송시간 예측 알고리즘(400)은 배송자가 배송하는 물품의 배송 정보에 기초하여 수신자가 배송 물품을 수신할 수 있는 배송시간을 계산하여 제공할 수 있다. 이때, 배송 정보는 배송자가 배달하는 물품의 개수, 및 물품의 배송 순서 등을 포함할 수 있다.The delivery time prediction algorithm 400 may be provided by a service dispatch system, a server providing a service dispatch system, a deliverer's terminal, or a recipient's terminal. Specifically, the delivery time prediction algorithm 400 may calculate and provide a delivery time for the recipient to receive the delivered goods based on delivery information of the goods delivered by the deliverer. At this time, the delivery information may include the number of goods delivered by the deliverer and the delivery order of the goods.

이때, 배송 시간은 수신자가 수신하는 특정 물품의 배송 전에 배송되는 적어도 하나의 물품들 각각의 제1 구간 배송 시간과 상기 적어도 하나의 물품 중 마지막에 배송되는 물품 이후 상기 특정 물품이 배송되는 제2 구간 배송 시간을 합친 값일 수 있다. 제1 구간 배송 시간 및 제2 구간 배송 시간 각각은 거리에 기초한 제1 알고리즘을 이용한 거리 기반 배송 시간과 주변 환경 정보에 따른 제2 알고리즘을 이용한 가중치 시간을 합친 값일 수 있다. 이때, 제1 알고리즘은 선형회귀분석에 기초하여 모델링될 수 있으며, 제2 알고리즘은 각각의 배송 물품의 배송 위치의 환경 정보에 따른 배송 시간의 차이에 기반한 시그모이드 함수에 기초하여 모델링될 수 있다. 이하, 배송 시간 예측 알고리즘(400)은 아래에서 구체적으로 설명하도록 한다.At this time, the delivery time is the delivery time of each of the first section of at least one product delivered before delivery of the specific product received by the recipient, and the second section of delivery of the specific product after the last product among the at least one product. It may be the combined delivery time. Each of the first section delivery time and the second section delivery time may be a sum of a distance-based delivery time using a first algorithm based on distance and a weighted time using a second algorithm based on surrounding environment information. At this time, the first algorithm may be modeled based on linear regression analysis, and the second algorithm may be modeled based on a sigmoid function based on the difference in delivery time according to environmental information of the delivery location of each delivery item. . Hereinafter, the delivery time prediction algorithm 400 will be described in detail below.

이와 같은 방법을 통해서 서비스 배차 시스템을 통해 배차 서비스를 제공함으로써, 배송자 및 수신자에게 최적의 배송 서비스를 제공할 수 있다.In this way, by providing a dispatch service through a service dispatch system, the optimal delivery service can be provided to the deliverer and recipient.

도 2는 본 명세서에서 제안하는 서비스 배차 시스템의 배차 순서를 나타내는 흐름도이다.Figure 2 is a flowchart showing the dispatch sequence of the service dispatch system proposed in this specification.

도 2를 참조하면, 서비스 배차 시스템은 그룹핑 알고리즘을 통한 배송지의 그룹화하여 그룹화된 그룹들에 대한 최적의 동선을 배송자에게 제공함으로써, 배송 서비스를 제공할 수 있다.Referring to FIG. 2, the service dispatch system can provide a delivery service by grouping delivery destinations through a grouping algorithm and providing the deliverer with an optimal route for the grouped groups.

구체적으로, 1. 배송자는 파트너스 앱을 통해서 거래처로부터 배송품을 접수할 수 있다. 이때, 배송품은 홈페이지의 엑셀 또는 API를 통해서 접수될 수 있다. 2. 이후, 수거 기사가 배송품을 거래처로부터 수거하여, 3. 물류센터에 배송하여 입고시킬 수 있다.Specifically, 1. Deliverers can receive deliveries from business partners through the Partners app. At this time, delivery items can be received through Excel or API on the homepage. 2. Afterwards, a collection engineer can collect the delivered product from the customer, 3. deliver it to the logistics center, and have it stocked.

4. 이후, 입고된 배송품은 그룹핑 알고리즘을 통해서 복수 개의 그룹으로 그룹핑되며, 5. 그룹핑된 그룹들은 배송자(또는, 물품을 배송하는 라이더 등)들에게 배송 그룹 리스트를 통해서 노출될 수 있다.4. Afterwards, the received delivered goods are grouped into a plurality of groups through a grouping algorithm, and 5. The grouped groups can be exposed to deliverers (or riders delivering goods, etc.) through the delivery group list.

이후, 6. 배송자는 직접 배송할 배송 그룹을 선택하여 배차를 신청할 수 있다. 7. 배송자는 QR 코드를 발급 받은 뒤, 물류센터로 이동할 수 있다. 8. 이후, 배송자는 물류 센터에서 QR 코드 인식 후, 배차 그룹을 확인받을 수 있으며 배차를 승인받을 수 있다.Afterwards, 6. The deliverer can directly select the delivery group to be delivered and apply for dispatch. 7. After receiving a QR code, the deliverer can move to the logistics center. 8. Afterwards, the deliverer can recognize the QR code at the logistics center, confirm the dispatch group, and receive approval for dispatch.

9. 이후, 배송자들은 배차가 완료된 배송품들을 지급받을 수 있으며, 10. 배송할 목록(또는, 배송 중인 물건을 표시하는 배송 중 목록 등)에 지급받은 배송품들이 표시될 수 있다.9. Afterwards, deliverers can receive the delivered goods that have been dispatched, and 10. The delivered goods can be displayed on the list to be delivered (or the in-delivery list that displays goods being delivered, etc.).

11. 이후, 배송 경로 알고리즘을 통해 배송품들을 배송하기 위한 최적의 배송 경로를 제공받을 수 있으며, 제공 받은 경로에 기초하여 배송을 진행할 수 있다.11. Afterwards, the optimal delivery route for delivering the items can be provided through the delivery route algorithm, and delivery can be carried out based on the provided route.

12. 이후, 배송이 완료되면 배송자들은 앱을 통해 배송의 완료를 처리할 수 있다.12. After delivery is completed, deliverers can complete the delivery through the app.

도 3은 본 명세서에서 제안하는 배송지를 그룹핑하는 방법의 일 예를 나타내는 순서도이다.Figure 3 is a flowchart showing an example of a method for grouping delivery destinations proposed in this specification.

도 3을 참조하면, 복수 개의 배송지들이 존재하는 경우, 최적의 배송 경로를 설정하기 위해서 배송지들을 특정 기준에 따라 복수 개의 그룹핑할 수 있다.Referring to FIG. 3, when there are a plurality of delivery destinations, the delivery destinations can be grouped into a plurality of groups according to specific criteria in order to set an optimal delivery route.

구체적으로, 일정 범위의 지역에 특정 기준에 따라 복수 개의 제1 중심 좌표가 설정될 수 있다. 이때, 특정 기준은 상기 복수 개의 중심 좌표 각각에 따른 배송지의 개수, 중심 좌표간의 거리, 인구 수, 교통 량 및 인구 밀집 도 중 적어도 하나일 수 있다.Specifically, a plurality of first center coordinates may be set in a certain range of areas according to specific criteria. At this time, the specific criterion may be at least one of the number of delivery destinations according to each of the plurality of central coordinates, the distance between the central coordinates, the number of population, traffic volume, and population density.

복수 개의 제1 중심 좌표 각각을 기준으로 복수 개의 중심 좌표에서 일정 거리 이내에 포함되어 있는 복수 개의 배송지를 제1 그룹핑 절차를 통해 복수 개의 제1 그룹들로 그룹핑될 수 있으며, 복수 개의 제1 그룹들 각각에 포함된 상기 복수 개의 배송지의 개수가 특정 값 이상인지 여부가 판단될 수 있다.Based on each of the plurality of first center coordinates, a plurality of delivery destinations included within a certain distance from the plurality of center coordinates may be grouped into a plurality of first groups through a first grouping procedure, each of the plurality of first groups It may be determined whether the number of the plurality of delivery destinations included in is greater than or equal to a certain value.

복수 개의 제1 그룹들 중 상기 복수 개의 배송지들의 개수가 상기 특정 값 이상인 적어도 하나의 제1 그룹은 상기 복수 개의 배송지의 개수가 상기 특정 값 이하가 되도록 제2 그룹핑 절차를 통해서 적어도 하나의 제2 그룹으로 그룹핑될 수 있으며, 제2 그룹핑 절차는 상기 적어도 하나의 제2 그룹에 포함된 적어도 하나의 배송지의 개수가 상기 특정 값 이하가 될 때까지 반복해서 수행될 수 있다.Among the plurality of first groups, at least one first group in which the number of the plurality of delivery addresses is greater than or equal to the specific value is divided into at least one second group through a second grouping procedure such that the number of the plurality of delivery addresses is less than or equal to the specific value. may be grouped, and the second grouping procedure may be repeatedly performed until the number of at least one delivery address included in the at least one second group is less than or equal to the specific value.

상기 특정 값은 2 이상의 값을 갖는 최소 값과 10 이하의 값을 갖는 최대 값 사이에서 결정되며, 상기 복수 개의 중심 좌표 각각이 설정된 지역에 따라 유동적으로 결정될 수 있다.The specific value is determined between a minimum value of 2 or more and a maximum value of 10 or less, and may be flexibly determined depending on the region in which each of the plurality of center coordinates is set.

최소 값 및 최대 값은 사용자가 일정 배송 시간 내에 배송을 완료할 수 있는 배송지들의 최소 개수 및 최대 개수이며, 일정 거리는 상기 복수 개의 중심 좌표를 기준으로 상기 배송지의 밀집도, 인구 밀도, 교통 혼잡도 및 배송지 타입에 따라 결정될 수 있다.The minimum and maximum values are the minimum and maximum number of delivery destinations at which the user can complete delivery within a certain delivery time, and the constant distance is based on the density, population density, traffic congestion, and type of delivery destination of the delivery destination based on the plurality of center coordinates. It can be decided depending on

배송지 타입은 주거지 타입, 사무실 타입, 기업 타입 및 상가 타입 중 하나이며, 일정 거리는 상기 배송지 타입에 기초하여 오전, 오후, 및 야간에 따라 변경될 수 있다. 예를 들면, 배송지 타입이 주거지 타입인 경우, 야간에 배송이 많을 수 있으니 일정 거리가 작아지고, 오전, 및 오후에는 증가될 수 있다. 반면, 배송지 타입이 사무실 타입인 경우, 야간보다는 오후에 배송이 많을 수 있으니, 일정거리가 작아지고 오전 및 야간에는 증가될 수 있다.The delivery destination type is one of residential type, office type, corporate type, and commercial type, and the certain distance may change depending on the morning, afternoon, and night based on the delivery destination type. For example, if the delivery address type is a residential type, there may be a lot of deliveries at night, so the certain distance may be reduced, and may be increased in the morning and afternoon. On the other hand, if the delivery destination type is an office type, there may be more deliveries in the afternoon than at night, so the certain distance may become smaller and increase in the morning and night.

제2 그룹핑 절차는 아래와 같은 절차를 포함할 수 있다.The second grouping procedure may include the following procedures.

- 적어도 하나의 제1 그룹들 중 하나의 제1 그룹을 선택- Select one first group from at least one first group

- 선택된 제1 그룹에 포함된 상기 복수개의 배송지들 중 상기 중심 좌표로부터 가장 먼 거리에 위치하는 특정 배송지를 선택- Select a specific delivery address located at the greatest distance from the center coordinates among the plurality of delivery locations included in the selected first group.

- 복수개의 배송지들 중 상기 선택된 특정 배송지로부터 일정 거리내에 위치하는 적어도 하나의 배송지를 제2 그룹으로 그룹핑- Grouping at least one delivery address located within a certain distance from the selected specific delivery address among a plurality of delivery addresses into a second group

이때, 제2 그룹핑 절차에서 적어도 하나의 배송지의 개수는 상기 제1 그룹에 포함된 상기 복수 개의 배송지들의 개수의 절반보다 작을 수 있다.At this time, the number of at least one delivery address in the second grouping procedure may be less than half of the number of the plurality of delivery locations included in the first group.

또한, 적어도 하나의 배송지와 특정 배송지 간의 거리는 상기 적어도 하나의 배송지와 상기 중심 좌표 간의 거리보다 작을 수 있으며, 제2 그룹핑 절차는 상기 제2 그룹에 포함된 상기 적어도 하나의 배송지의 개수가 상기 특정 값보다 작아질 때까지 반복해서 수행될 수 있다.In addition, the distance between at least one delivery address and a specific delivery address may be smaller than the distance between the at least one delivery address and the center coordinate, and the second grouping procedure may be performed so that the number of the at least one delivery address included in the second group is the specific value. This can be done repeatedly until it becomes smaller.

이와 같은 방법을 통해서 그룹핑 알고리즘을 이용하여 배송지들을 그룹핑 할 수 있다.Through this method, delivery destinations can be grouped using a grouping algorithm.

예를 들면, 도 3에 도시된 바와 같이 n 개의 배송지가 존재하는 경우, 주변 k개의 시, 군, 구의 위도, 경도를 클러스터(또는, 그룹)의 중심좌표로 초기화할 수 있다(S3010). 이후, k-means clustering을 실행하여 그룹핑을 수행할 수 있다(S3020).For example, as shown in FIG. 3, when there are n delivery locations, the latitude and longitude of k surrounding cities, counties, and districts can be initialized as the center coordinates of the cluster (or group) (S3010). Afterwards, grouping can be performed by executing k-means clustering (S3020).

만약, 그룹의 개수가 0이면 그룹 정보를 출력할 수 있다(S3030).If the number of groups is 0, group information can be output (S3030).

하지만, 그룹의 개수가 0이 아닌 경우, k개의 그룹 중 첫 번째 그룹을 확인하여 첫 번째 그룹(중심 좌표 C, 제1 그룹)에 포함되어 있는 배송지의 개수를 확인한다(S3040). 이때, K의 값은 1이 감소된다.However, if the number of groups is not 0, the first group among the k groups is checked and the number of delivery destinations included in the first group (center coordinate C, first group) is checked (S3040). At this time, the value of K is decreased by 1.

만약, 첫 번재 그룹의 배송지의 개수가 일정 개수(예를 들면, 그룹 사이지의 lub인 g) 이하인 경우, 첫 번째 그룹에 포함된 모든 배송지를 하나의 그룹(제1 그룹)으로 그룹핑 한다(S3050).If the number of delivery addresses in the first group is less than a certain number (for example, g, which is the lub of the group size), all delivery addresses included in the first group are grouped into one group (first group) (S3050) .

하지만, 첫 번째 그룹의 배송지의 개수가 일정 개수(예를 들면, 그룹 사이지의 lub인 g) 이상인 경우, 중심 위치 C로부터 가장 먼 배송지 D를 선택하고, 선택된 배송지 D로부터 가까운 순서대로 일정 개수의 배송지를 선택한다(S3060). 이때, 배송지 D로부터 가까운 순서대로 선택된 배송지의 개수는 g를 2로 나눈 값보다 작을 수 있다.However, if the number of delivery destinations in the first group is more than a certain number (for example, g, which is the lub of the group size), the delivery destination D furthest from the center position C is selected, and a certain number of delivery destinations are selected in order of proximity to the selected delivery address D. Select (S3060). At this time, the number of delivery destinations selected in order of proximity to delivery destination D may be smaller than g divided by 2.

이후, 선택된 배송지 다음으로 배송지 D에 가까운 g/2개의 배송지에 대해 선택된 배송지들 각각에 대해 선택된 배송지가 중심 좌표 C보다 배송지 D까지의 거리가 더 짧고, 중심 좌표 C에 기초하여 선택되지 않은 배송지의 수가 g를 2로 나눈 값보다 큰지 여부를 판단한다.Thereafter, for g/2 delivery destinations that are next to the selected delivery destination and closest to the delivery destination D, for each of the selected delivery destinations, the selected delivery destination has a shorter distance to the delivery destination D than the center coordinate C, and the distance to the delivery destination D is shorter than the center coordinate C, and the distance to the delivery destination D is shorter than the center coordinate C, Determine whether the number is greater than g divided by 2.

만약, 선택된 배송지가 중심 좌표 C보다 배송지 D까지의 거리가 더 짧지 않거나, 중심 좌표 C에 기초하여 선택되지 않은 배송지의 수가 g를 2로 나눈 값보다 크지 않은 경우, 해당 배송지는 그룹을 변경하지 않고 그대로 남긴다(S3070).If the selected delivery location is not shorter in distance to delivery location D than the center coordinate C, or the number of unselected delivery locations based on center coordinate C is not greater than g divided by 2, the delivery location does not change the group. Leave it as is (S3070).

하지만, 선택된 배송지가 중심 좌표 C보다 배송지 D까지의 거리가 더 짧고, 중심 좌표 C에 기초하여 선택되지 않은 배송지의 수가 g를 2로 나눈 값보다 큰 경우, 해당 배송지는 선택되고(S3080), 선택된 배송지들은 중심 좌표 C를 기준으로 한 그룹에서 분리되어 배송지 D를 기초한 그룹으로 그룹핑 된다(S3090).However, if the selected delivery address has a shorter distance to the delivery address D than the center coordinate C, and the number of unselected delivery locations based on the center coordinate C is greater than g divided by 2, the corresponding delivery location is selected (S3080), and the selected delivery address is Delivery destinations are separated from a group based on the center coordinate C and grouped into a group based on delivery destination D (S3090).

도 4 내지 도 9는 본 명세서에서 제안하는 배송지의 그룹핑 방법의 일 실 시예를 나타낸다.4 to 9 show an example of a method for grouping delivery destinations proposed in this specification.

먼저, 도 4에서 도시된 바와 같이 시, 군, 구 좌표가 초기 중심좌표로 설될 수 있다. 이후, 도 5에 도시된 바와 같이 2. 초기 좌표를 기준으로 K-Means Clustering 시행될 수 있다. K-Means Clustering은 K개의 중심좌표를 설정한 후 데이터를 가장 가까운 중심좌표 클러스터에 할당하는 클러스터링 방식을 의미한다.First, as shown in FIG. 4, city, county, and district coordinates can be set as the initial center coordinates. Afterwards, as shown in Figure 5, 2. K-Means Clustering can be performed based on the initial coordinates. K-Means Clustering refers to a clustering method that sets K central coordinates and then assigns data to the nearest central coordinate cluster.

이후, 도 6에 도시된 바와 같이 배송지가 가장 많은 클러스터(도 6의 서초구)를 선택하고, K의 값에서 1을 뺀다.Afterwards, as shown in Figure 6, the cluster with the most delivery destinations (Seocho-gu in Figure 6) is selected, and 1 is subtracted from the value of K.

이후, 도 7에 도시된 바와 같이 4. 서초구 클러스터가 그룹의 최대 사이즈(본 예시에서는 9)를 넘으므로 분할 대상에 해당된다. 따라서, 먼저 클러스터 중심좌표에서 가장 멀리 떨어진 좌표(초록색으로 표시된 배송지)를 찾는다.Thereafter, as shown in Figure 7, the 4. Seocho-gu cluster is subject to division because it exceeds the maximum size of the group (9 in this example). Therefore, first, we find the coordinates furthest from the cluster center coordinates (delivery destination shown in green).

이후, 도 8에 도시된 바와 같이 5. 최소한의 그룹 사이즈(예를 들면, 배송지의 개수가 5)를 갖추기 위해 해당 좌표에서 가까운 4개의 좌표는 추가로 그룹핑되어 다른 그룹으로 분리될 수 있다. 이후, 그 다음으로 가까운 9 - 5 = 4개의 좌표에 대해 거리를 비교하여 새로운 그룹에 넣을지 아니면 기존 그룹에 넣을지가 판단될 수 있다.Thereafter, as shown in FIG. 8, in order to have a minimum group size of 5 (for example, the number of delivery destinations is 5), the four coordinates close to the corresponding coordinates may be further grouped and separated into other groups. Afterwards, it can be determined whether to place it in a new group or an existing group by comparing the distances to the next closest 9 - 5 = 4 coordinates.

이후, K의 값이 0이 될때까지(예를 들면, 모든 클러스터를 확인할 때까지) 위의 도 6 내지 도 8까지의 과정이 반복적으로 수행될 수 있으며, 최종 도 9에 도시된 형태로 그룹핑될 수 있다.Thereafter, the above processes from Figures 6 to 8 can be repeatedly performed until the value of K becomes 0 (e.g., until all clusters are confirmed), and the final clusters are grouped in the form shown in Figure 9. You can.

도 10은 본 명세서에서 제안하는 배송지의 경로 설정을 위한 방법의 일 예를 나타내는 순서도이다.Figure 10 is a flowchart showing an example of a method for setting a route to a delivery destination proposed in this specification.

도 10을 참조하면, 복수 개의 배송지들(또는, 그룹핑 된 그룹)이 존재하는 경우, 복수 개의 배송지들(또는, 그룹핑된 그룹)을 배송하기 위한 최적의 배송 경로를 특정 알고리즘을 통해서 설정할 수 있다. 이하, 본 발명에서 배송지는 그룹핑된 그룹을 의미할 수 있다.Referring to FIG. 10, when there are a plurality of delivery destinations (or grouped groups), the optimal delivery route for delivering the plurality of delivery destinations (or grouped groups) can be set through a specific algorithm. Hereinafter, in the present invention, the delivery address may refer to a grouped group.

구체적으로, 복수 개의 배송지들 중 특정 알고리즘을 이용하여 적어도 하나의 배송지가 결정되고, 결정된 적어도 하나의 배송지를 한번씩 모두 경유하는 최단 거리가 결정될 수 있다.Specifically, at least one delivery location among a plurality of delivery locations may be determined using a specific algorithm, and the shortest distance passing through each of the determined at least one delivery location may be determined.

이때, 적어도 하나의 배송지를 결정은 아래와 같은 단계를 통해서 수행될 수 있다.At this time, determining at least one delivery location can be performed through the following steps.

- 상기 복수 개의 배송지들의 개수가 특정 개수 이상인 경우, 현재 위치를 기준으로 거리가 가까운 순서로 상기 특정 개수의 배송지들을 선택- If the number of the plurality of delivery destinations is more than a certain number, select the specific number of delivery destinations in order of shortest distance based on the current location.

- 상기 선택된 특정 개수의 배송지들 중 상기 특정 알고리즘을 이용하여 하나의 배송지를 선택- Select one delivery location among the selected specific number of delivery locations using the specific algorithm

이때, 상기 특정 알고리즘은 상기 복수 개의 배송지들 중 상기 특정 개수의 상기 적어도 하나의 배송지를 선택하기 위해서 사용되고, 상기 특정 개수는 상기 특정 알고리즘을 이용하여 현재 위치에서부터 상기 적어도 하나의 배송지를 경유하기 위한 최단 경로를 설정하기 위한 배송지들의 최대 개수일 수 있다.At this time, the specific algorithm is used to select the specific number of at least one delivery destination among the plurality of delivery destinations, and the specific number is the shortest route from the current location to the at least one delivery destination using the specific algorithm. This may be the maximum number of delivery destinations for setting a route.

특정 알고리즘을 이용하여 상기 하나의 배송지를 선택하는 절차는 아래와 같은 단계를 통해서 수행될 수 있다.The procedure of selecting one delivery address using a specific algorithm can be performed through the following steps.

- 상기 특정 알고리즘을 이용하여 상기 현재 위치를 기준으로 거리가 가까운 순서로 선택된 상기 특정 개수의 배송지들의 최적 경로를 설정- Using the specific algorithm, set the optimal route for the specific number of delivery destinations selected in order of shortness based on the current location.

- 상기 설정된 최적 경로에서 상기 현재 위치를 기준으로 첫 번째 제1 배송지를 선택- Select the first delivery location based on the current location in the optimal route set above

- 상기 제1 배송지를 기준으로 거리가 가까운 순서로 상기 특정 개수의 배송지들을 선택- Select the specific number of delivery destinations in order of closest distance based on the first delivery address.

- 상기 특정 알고리즘을 이용하여 상기 제1 배송지의 위치를 기준으로 거리가 가까운 순서로 선택된 상기 특정 개수의 배송지들의 최적 경로를 설정- Using the specific algorithm, set the optimal route for the specific number of delivery destinations selected in order of short distance based on the location of the first delivery destination.

- 상기 설정된 최적 경로에서 상기 제1 배송지의 상기 위치를 기준으로 첫 번째 제2 배송지를 선택- Select the first second delivery location based on the location of the first delivery location in the optimal route set above.

이때, 상기 최적 경로는 시작 위치, 도착 위치, 상기 특정 개수의 배송지들의 집합, 및 거리 정보에 기초하여 결정되될 수 있다.At this time, the optimal route may be determined based on the starting location, arrival location, set of the specific number of delivery destinations, and distance information.

예를 들면, 상기 시작 위치가 start, 상기 도착 위치가 last, 상기 특정 개수의 상기 배송지들의 상기 집합이 V 및 상기 거리 정보가 D인 경우, 상기 최적 경로 find_path는 아래의 수학식 1에 의해서 계산될 수 있다.For example, when the starting location is start, the arrival location is last, the set of the specific number of delivery destinations is V, and the distance information is D, the optimal path find_path is calculated by Equation 1 below: You can.

[수학식 1][Equation 1]

최단 경로는 상기 현재 위치에서 상기 선택된 적어도 하나의 배송지들을 모두 한번씩 경유하는 가장 짧은 거리이며, 최단 거리는 아래와 같은 절차를 통해서 설정될 수 있다.The shortest route is the shortest distance from the current location that passes through all of the selected delivery destinations once, and the shortest distance can be set through the following procedure.

- 상기 적어도 하나의 배송지들을 선택된 순서에 따라 경유하는 제1 경로를 결정- Determine a first route passing through the at least one delivery destination in the selected order

- 상기 적어도 하나의 배송지들의 배송 순서를 일부 변경하여 제2 경로를 결정- Determine the second route by partially changing the delivery order of the at least one delivery address.

- 상기 제1 경로와 상기 제2 경로를 비교- Compare the first path and the second path

- 상기 제1 경로와 상기 제2 경로 중 더 짧은 경로를 선택- Select the shorter path between the first path and the second path

이때, 상기 제1 경로가 상기 제2 경로보다 더 짧은 경우, 상기 최단 거리는 아래와 같은 추가적인 절차를 더 수행하여 설정될 수 있다.At this time, if the first path is shorter than the second path, the shortest distance can be set by further performing the additional procedure below.

- 상기 적어도 하나의 배송지들의 배송 순서가 상기 제2 경로와는 다르게 변경하여 제3 경로를 결정-Determine a third route by changing the delivery order of the at least one delivery destination to be different from the second route.

- 상기 제1 경로와 상기 제3 경로를 비교- Compare the first path and the third path

- 상기 제1 경로와 상기 제3 경로 중 더 짧은 경로를 선택- Select the shorter path between the first path and the third path.

하지만, 제2 경로가 상기 제1 경로보다 더 짧은 경우, 상기 최단 거리는 아래와 같은 추가적인 절차를 더 수행하여 설정될 수 있다.However, if the second path is shorter than the first path, the shortest distance can be set by further performing the additional procedure below.

- 상기 적어도 하나의 배송지들의 배송 순서가 상기 제2 경로와는 다르게 변경하여 제3 경로를 결정-Determine a third route by changing the delivery order of the at least one delivery destination to be different from the second route.

- 상기 제2 경로와 상기 제3 경로를 비교- Compare the second path and the third path

- 상기 제2 경로와 상기 제3 경로 중 더 짧은 경로를 선택- Select the shorter path between the second path and the third path.

이때, 상기 짧은 경로를 선택하기 위한 절차는 상기 적어도 하나의 배송지의 개수에 따라 반복되어 수행될 수 있다.At this time, the procedure for selecting the short route may be repeatedly performed depending on the number of the at least one delivery destination.

예를 들면, 도 10에 도시된 바와 같이 n개의 배송지가 customized TSP를 적용하기 위한 최대 값 N보다 작은지 여부를 판단한다.For example, as shown in Figure 10, it is determined whether n delivery destinations are less than the maximum value N for applying the customized TSP.

이때, 외판원 순회 문제(Traveling Salesman Problem, TSP)는 순환(cycle)을 구하는 알고리즘으로, 여러 도시들이 있고 한 도시에서 다른 도시로 이동하는 비용이 모두 주어졌을 때, 모든 도시들을 단 한 번만 방문하고 원래 시작점으로 돌아오는 최단거리 경로를 구하는 알고리즘을 의미한다.At this time, the Traveling Salesman Problem (TSP) is an algorithm that finds a cycle. When there are several cities and the cost of moving from one city to another is given, all cities are visited only once and the original This refers to an algorithm that finds the shortest path back to the starting point.

하지만, customized TSP는 TSP를 배송 시스템에 적합하게 수정한 알고리즘으로써 경로(path)를 구하는 알고리즘이다.However, customized TSP is an algorithm that calculates a path by modifying TSP to suit the delivery system.

구체적으로, TSP를 통한 순환을 구하는 것에서 customized TSP를 통해 경로를 구하는 것으로 바뀌었으므로 출발점과 도착지를 설정할 수 있으며, 특히, 도착지를 물류 센터, 배송자의 거주지 등 라이더가 원하는 곳으로 설정할 수 있으므로 라이더 친화적인 경로를 제공할 수 있다.Specifically, since it has changed from finding circulation through TSP to finding a route through customized TSP, the starting point and destination can be set. In particular, the destination can be set to a place desired by the rider, such as a logistics center or the delivery person's residence, so it is rider-friendly. path can be provided.

Customized TSP는 동적 프로그래밍으로 구현될 수 있다. 예를 들면, start는 시작점, last는 도착점, V는 배송지 집합, D는 거리정보 행렬이라 할 때, 수학식 1을 통해서 구현될 수 있다.Customized TSP can be implemented with dynamic programming. For example, when start is the starting point, last is the destination point, V is the delivery address set, and D is the distance information matrix, this can be implemented through Equation 1.

수학식 1에 따라, 특정 start, last, V에 대해 아직 방문하지 않은 모든 도시를 각각 방문하는 재귀함수를 호출하고 이 중 최솟값을 보이는 경로를 택함으로써 수행될 수 있다. 예를 들면, find_path( 1, 5, {1, 2, 3, 5} )는 find_path( 1, 2, {1, 2, 3} ) + D[5][2],According to Equation 1, this can be done by calling a recursive function that visits all cities that have not yet been visited for a specific start, last, and V, and selecting the path that shows the minimum value. For example, find_path( 1, 5, {1, 2, 3, 5} ) is equivalent to find_path( 1, 2, {1, 2, 3} ) + D[5][2],

find_path( 1, 3, {1, 2, 3} ) + D[5][3] 중 최솟값으로 결정될 수 있으며, 방문 여부는 비트마스킹 방식으로 표현될 수 있다. 예를 들면, 8개의 배송지가 있을 때 1, 2, 5번째 배송지를 방문했다면 00010011 => 19로 표현될 수 있다.It can be determined as the minimum value among find_path( 1, 3, {1, 2, 3} ) + D[5][3], and whether or not to visit can be expressed using a bitmasking method. For example, if there are 8 delivery destinations and the 1st, 2nd, and 5th delivery destinations are visited, it can be expressed as 00010011 => 19.

만약, n의 값이 N보다 큰 경우, 현재 위치와 가장 가까운 k개를 구하고 TSP 실시하고(S10010), 가장 먼저 방문해야 할 곳을 찾고 해당 배송지를 배송 경로에 추가한다(S10020).If the value of n is greater than N, find the k closest to the current location, perform TSP (S10010), find the place to visit first, and add the delivery address to the delivery route (S10020).

이후, 해당 배송지를 기준으로 가장 가까운 k개를 구하고 TSP 실시한다. 이후, 위 과정 반복하며 N보다 작은 값의 n개의 배송지를 선택한다.Afterwards, find the k closest ones based on the delivery address and perform TSP. Afterwards, repeat the above process and select n delivery destinations with a value smaller than N.

만약, N보다 n의 값이 작은 경우, customized TSP를 이용하여 n개의 배송지를 선택한다(S10030).If the value of n is smaller than N, n delivery destinations are selected using the customized TSP (S10030).

이후, 선택된 n개의 배송지에 대해 각각의 배송지를 첫 번째, 두 번째, ..., 마지막 배송지와 바꿔보며 이동거리가 짧아지면 순서를 변경하여 최단 거리를 계산한다(S10040). 이후, 배송경로 중 서로 교차하는 게 있을 경우 꼬인 부분을 계산하여 재 설정한다(S10050).Afterwards, for the selected n delivery destinations, each delivery destination is replaced with the first, second, ..., last delivery destination, and when the moving distance becomes shorter, the order is changed to calculate the shortest distance (S10040). Afterwards, if any of the delivery routes intersect, the twisted part is calculated and reset (S10050).

이와 같은 방법을 통해서 복수 개의 배송지들에 대한 최적의 배송 경로가 설정될 수 있다.Through this method, the optimal delivery route for multiple delivery destinations can be established.

도 11 내지 도 17은 본 명세서에서 제안하는 경로 설정 방법의 일 실 시예를 나타낸다.11 to 17 show an example of the route setting method proposed in this specification.

구체적으로, 도 11에 도시된 바와 같이 30개의 배송지가 주어진 경우, 주어진 배송지가 특정 개수(15개) 이상이므로, 도 12에 도시된 바와 같이 현재 위치(나)에서 가까운 7개의 배송지가 선택된다.Specifically, as shown in FIG. 11, when 30 delivery destinations are given, since the given delivery destinations are more than a certain number (15), 7 delivery destinations close to the current location (B) are selected as shown in FIG. 12.

이후, 도 13에 도시된 바와 같이 선택된 7개의 배송지에 customized TSP를 적용하여 배송 경로를 설정하고, 설정된 배송 경로에서 첫 번재 배송지인 16번째 배송지가 선택된다.Afterwards, as shown in Figure 13, a delivery route is set by applying the customized TSP to the seven selected delivery destinations, and the 16th delivery destination, which is the first delivery destination, is selected from the set delivery route.

이후, 도 14에 도시된 바와 같이 16번째 배송지를 기준으로 가까운 7개의 배송지가 선택되고, 선택된 7개의 배송지에 customized TSP를 적용하여 배송 경로를 설정하고, 설정된 배송 경로에서 첫 번재 배송지인 7번째 배송지를 선택한다.Afterwards, as shown in Figure 14, 7 nearby delivery locations are selected based on the 16th delivery location, a customized TSP is applied to the selected 7 delivery locations to set a delivery route, and the 7th delivery location, which is the first delivery location in the set delivery route, is selected. Select .

이후, k개의 배송지가 남을대까지 도 12 내지 도 14에서 설명한 방법을 반복적으로 수행하고, 도 15에 도시된 바와 같이 k개의 배송지는 customized TSP를 이용하여 결로가 설정될 수 있다.Afterwards, the method described in FIGS. 12 to 14 is repeatedly performed until k delivery destinations remain, and as shown in FIG. 15, condensation can be set for the k delivery destinations using a customized TSP.

이후, 도 16에 도시된 바와 같이 선택된 배송지들의 배송 순서를 변경하여 경로가 가장 짧은 순서를 체크한다.Afterwards, as shown in FIG. 16, the delivery order of the selected delivery destinations is changed and the order with the shortest route is checked.

예를 들면, [1, 3, 2, 4, 5] 순서로 배송지가 정렬되어 있다면 [3, 1, 2, 4, 5], [3, 2, 1, 4, 5], [3, 2, 4, 1, 5], [3, 2, 4, 5, 1] … 과 같이 원소 하나하나를 모든 순서에 넣어보면서 경로가 짧아지는지 확인한다. 도 16의 경우 21번, 12번, 17번의 배송 순서가 바뀌었다.For example, if the delivery addresses are sorted in the order [1, 3, 2, 4, 5], then [3, 1, 2, 4, 5], [3, 2, 1, 4, 5], [3, 2 , 4, 1, 5], [3, 2, 4, 5, 1] … Check whether the path is shortened by inserting each element into every order as shown. In the case of Figure 16, the delivery order of numbers 21, 12, and 17 has been changed.

이후, 도 17에 도시된 바와 같이 경로가 교차하는 부분이 있을 경우 풀어준다. 도 17의 경우, 24 - 23, 7 - 12 경로가 24 - 7, 23 - 12로 변경되었다.Afterwards, as shown in Figure 17, if there is a part where the paths intersect, it is released. In the case of Figure 17, the paths 24 - 23, 7 - 12 have been changed to 24 - 7, 23 - 12.

도 18은 본 명세서에서 제안하는 배송 시간을 예측하기 위한 방법의 일 예를 나타내는 순서도이다.Figure 18 is a flowchart showing an example of a method for predicting delivery time proposed in this specification.

도 18을 참조하면, 배송자의 배송 물품들 및 배송 순서에 대한 배송 정보를 획득하여 각각의 배송 물품에 대한 배송 시간을 계산함으로써 특정 물품의 배송 시간을 정확히 계산할 수 있다.Referring to FIG. 18, the delivery time of a specific product can be accurately calculated by obtaining delivery information about the deliverer's delivered items and delivery order and calculating the delivery time for each delivered item.

구체적으로, 특정 물품과 관련된 배송 정보가 획득될 수 있다. 이때, 상기 배송 정보는 배송자가 배송하는 복수 개의 배송 물품들의 개수, 및 상기 복수 개의 배송 물품들의 배송 순서를 포함할 수 있다.Specifically, delivery information related to a specific product may be obtained. At this time, the delivery information may include the number of a plurality of delivery items delivered by the deliverer, and a delivery order of the plurality of delivery items.

배송 정보에 포함된 상기 복수 개의 배송 물품들의 개수, 및 상기 복수 개의 배송 물품들의 상기 배송 순서에 따라 상기 복수 개의 배송 물품들이 정렬될 수 있으며, 배송 순서에 따라 정렬된 상기 복수 개의 배송 물품들 중 상기 특정 물품의 배송 시간이 계산될 수 있다.The plurality of delivery items may be sorted according to the number of the plurality of delivery items included in the delivery information and the delivery order of the plurality of delivery items, and among the plurality of delivery items sorted according to the delivery order, Delivery time for a specific item can be calculated.

이때, 특정 물품의 배송 시간은 상기 특정 물품의 배송 전에 배송되는 적어도 하나의 물품들 각각의 제1 구간 배송 시간과 상기 적어도 하나의 물품 중 마지막에 배송되는 물품 이후 상기 특정 물품이 배송되는 제2 구간 배송 시간을 합친 값일 수 있다.At this time, the delivery time of the specific product is the delivery time of the first section of each of the at least one product delivered before delivery of the specific product and the second section of the delivery time of the specific product after the last product among the at least one product. It may be the sum of delivery times.

제1 구간 배송 시간 및 상기 제2 구간 배송 시간 각각은 거리에 기초한 제1 알고리즘을 이용한 거리 기반 배송 시간과 주변 환경 정보에 따른 제2 알고리즘을 이용한 가중치 시간을 합친 값이며, 제1 알고리즘은 현재 배송 물품의 제1 배송 위치와 상기 현재 배송 물품 이전에 배송되는 이전 배송 물품의 제2 배송 위치 간의 거리에 기반한 선형회귀분석에 기초하여 모델링될 수 있다.Each of the first section delivery time and the second section delivery time is the sum of the distance-based delivery time using the first algorithm based on the distance and the weighted time using the second algorithm according to the surrounding environment information, and the first algorithm is the current delivery time It may be modeled based on a linear regression analysis based on the distance between the first delivery location of the product and the second delivery location of the previous delivery product delivered before the current delivery product.

또한, 제2 알고리즘은 각각의 배송 물품의 배송 위치의 환경 정보에 따른 배송 시간의 차이에 기반한 시그모이드 함수에 기초하여 모델링될 수 있으며, 상기 환경 정보는 강우량, 강설량, 풍량 및 교통량 중 적어도 하나를 포함할 수 있다.Additionally, the second algorithm may be modeled based on a sigmoid function based on the difference in delivery time according to environmental information of the delivery location of each delivery item, and the environmental information is at least one of rainfall, snowfall, wind volume, and traffic volume. may include.

상기 선형회귀 분석은 배송 거리에 따른 시간대별 소요시간 및 상기 배송 거리에 기초하여 모델링 되며, 상기 선형회귀 분석에 기초하여 상기 배송 거리가 X 및 상기 시간대별 소요시간이 y인 경우, 아래의 수학식 2의 a 및 b의 값이 결정될 수 있다.The linear regression analysis is modeled based on the delivery distance and the time required for each time slot according to the delivery distance. Based on the linear regression analysis, if the delivery distance is The values of a and b of 2 can be determined.

[수학식 2][Equation 2]

주변 환경 정보에 기초한 값이 x인 경우, 가중치 시간은 수학식 2에 의해서 결정된 a 및 상기 b에 기초하여 아래의 수학식 3에 의해서 계산될 수 있다.If the value based on the surrounding environment information is x, the weight time can be calculated by Equation 3 below based on a and b determined by Equation 2.

[수학식 3][Equation 3]

이때, 상기 배송 정보는 상기 배송자의 단말 또는 배차 서비스 시스템에 대한 서버를 통해 획득될 수 있다.At this time, the delivery information may be obtained through the deliverer's terminal or a server for the dispatch service system.

이때, 배송시간 예측 알고리즘을 수행하기 전에 아래와 같은 두개의 알고리즘 모델을 구해야 한다.At this time, before performing the delivery time prediction algorithm, the following two algorithm models must be obtained.

- 배송시간 선형회귀 분석 보델 - Delivery time linear regression analysis model

1. 배송 데이터를 배송 완료 시각, 지역별로 구분한다.1. Classify delivery data by delivery completion time and region.

2. 배송 소요 시간에 대해 직선거리로 선형회귀분석을 실시한다. 2. Perform linear regression analysis on delivery time using straight line distance.

- 기상상태 반영(시그모이드 모델)- Reflection of weather conditions (sigmoid model)

1. 강우량, 강설량에 따라 배송 시간이 얼마나 차이를 보이는지 구한다. 1. Find how much the delivery time varies depending on rainfall and snowfall.

2. 시그모이드 함수로 모델링한다. 2. Model with a sigmoid function.

3. 회귀분석으로 모델의 가중치를 구한다. 3. Find the weights of the model through regression analysis.

예를 들면, 도 18에 도시된 바와 같이 배송 시간을 예측하기 위한 알고리즘은 배송 시간을 예측하고 싶은 물품이 포함된 배송자의 배송 정보(또는, 라이더 정보)를 획득할 수 있다(S18010). 이때, 배송 정보는 위에서 살펴본 바와 같이 상기 복수 개의 배송 물품들의 개수, 및 상기 복수 개의 배송 물품들의 상기 배송 순서를 폼할 수 있다.For example, as shown in FIG. 18, the algorithm for predicting delivery time can obtain delivery information (or rider information) of the deliverer including the product for which delivery time is to be predicted (S18010). At this time, as discussed above, the delivery information may be in the form of the number of the plurality of delivery items and the delivery order of the plurality of delivery items.

이후, 도 10 내지 도 17에서 설명한 경로 설정 방법을 통해 설정된 최적의 경로에 따라 물품들이 정렬될 수 있다(S18020).Thereafter, the items can be aligned according to the optimal path set through the path setting method described in FIGS. 10 to 17 (S18020).

이후, 배송자의 현재 위치와 첫 번재 배송될 물품(i=1)의 직선거리를 구하고(S18030), 제1 알고리즘인 선형회귀 모델을 이용하여 거리에 따른 제1 배송시간(total_time)을 계산한다(S18040). i번째 배송될 물품이 목표하는 특정 물품이 아닌 경우, i의 값은 1이 증가하고, 1이 증가된 i번째 물품의 배송지에 대한 직선거리를 구한다. 이후, i번째 물품의 배송지에 대한 이전 물품의 배송지부터의 거리에 기초하여 선형회구 모델에 기초한 배송 시간을 계산한다(S18050). 이러한 과정은 i번째 물품이 원하는 특정 물품일때까지 반복해서 수행된다.Afterwards, the straight line distance between the current location of the deliverer and the first product to be delivered (i=1) is obtained (S18030), and the first delivery time (total_time) according to the distance is calculated using the linear regression model, which is the first algorithm ( S18040). If the i-th product to be delivered is not the target specific product, the value of i is increased by 1, and the straight-line distance to the delivery destination of the i-th product with the increment of 1 is calculated. Afterwards, the delivery time based on the linear regression model is calculated based on the distance from the delivery location of the previous product to the delivery location of the ith product (S18050). This process is performed repeatedly until the ith product is the specific desired product.

만약, i번재 물품이 목표하는 특정 물품인 경우, 제1 배송 시간(total taime)에 환경 영향(예를 들면, 강우량, 강설량 등)에 따른 제2 알고리즘인 시그모이드 알고리즘을 이용하여 가중치 시간을 더한다(S18060).If the item i is a specific target product, the weighted time is calculated using the sigmoid algorithm, which is a second algorithm, according to the environmental impact (e.g., rainfall, snowfall, etc.) on the first delivery time (total taime). Add (S18060).

이대, 제2 알고리즘은 배송 물품들의 각각의 배송지 간의 거리에 개별적으로 적용될 수 있으며, 배송 물품들의 각각의 배송지 간의 거리에 따른 제1 배송 시간에 개별적으로 적용되어 합쳐질 수 있다.In this case, the second algorithm can be applied individually to the distance between each delivery destination of the delivered goods, and can be applied separately and combined to the first delivery time according to the distance between each delivery destination of the delivered goods.

이후, i번째까지 계산된 각각의 제1 배송 시간 및 가중치 시간을 모두 더한 값이 배송시간으로 계산되어 출력될 수 있다(S18070).Thereafter, the sum of each first delivery time and weight time calculated up to the ith time may be calculated and output as the delivery time (S18070).

이와 같은 방법을 통해서, 특정 배송 물품에 대한 배송 시간이 정확하게 계산될 수 있다.Through this method, the delivery time for a specific delivery item can be accurately calculated.

도 19는 본 명세서에서 제안하는 배송 시간을 예측하기 위한 선형회귀 데이터의 일 예를 나타낸다.Figure 19 shows an example of linear regression data for predicting delivery time proposed in this specification.

도 19를 참조하면, 선형회귀 데이터는 배송자, 시군구, 시간대별로 나눠 소요시간(y)에 대해 이동거리(x)로 선형회귀 진행할 수 있다.Referring to FIG. 19, the linear regression data can be divided by deliverer, city, county, and district, and time zone, and linear regression can be performed on the travel distance (x) for the time required (y).

이때, y = ax + b 와 같이 1차방정식을 구하고, 계수 a, 및 b가 각각 따로 저장될 수 있다. 만약, 라이더 데이터가 충분하지 않을 경우 해당 지역, 해당 시간대 전체 배송에 대한 선형회귀 값이 사용될 수 있다.At this time, the linear equation is obtained as y = ax + b, and the coefficients a and b can be stored separately. If there is not enough lidar data, linear regression values for all deliveries in the region and time zone can be used.

도 20은 본 명세서에서 제안하는 배송 시간을 예측하기 위한 시그모이드 함수의 일 예를 나타낸다.Figure 20 shows an example of a sigmoid function for predicting delivery time proposed in this specification.

도 20을 참조하면, 시그모이드 함수는 강수량, 및/또는 강설량과 같은 배송시간에 영향을 줄 수 있는 환경 적인 요소를 반영하기 위해서 도입될 수 있다.Referring to FIG. 20, the sigmoid function may be introduced to reflect environmental factors that may affect delivery time, such as precipitation and/or snowfall.

시그모이드 함수는 도 20과 같은 개형을 가질 수 있으며, 아래 수학식 3과 같은 수식이 사용될 수 있다.The sigmoid function may have a reformed form as shown in FIG. 20, and an equation such as Equation 3 below may be used.

[수학식 3][Equation 3]

수학식 3에서 계수 a, 및 b는 도 19에서 설명한 선형회구 분석을 통해서 획득될 수 있다.In Equation 3, the coefficients a and b can be obtained through the linear regression analysis described in FIG. 19.

배송 시간은 비나, 눈, 및/또는 태풍 등과 같이 배송 시간에 환경적인 요인이 적용될 경우, 앞에서 구한 회귀분석 추정치에 시그모이드 함숫값을 곱해줄 수 있다.If environmental factors such as rain, snow, and/or typhoons apply to the delivery time, the regression analysis estimate obtained above can be multiplied by the sigmoid function value.

예를 들면, 김철수 라이더의 배송물품의 지역구와 이전 배송지로부터의 거리는 다음과 같다.For example, the distance from the constituency of Rider Kim Cheol-soo's delivery item and the previous delivery location is as follows.

1. 강남구, 4km(첫 번째 물품의 경우 현위치에서의 거리)1. Gangnam-gu, 4km (distance from current location for first item)

2. 강남구, 2km2. Gangnam-gu, 2km

3. 강남구, 3km3. Gangnam-gu, 3km

4. 서초구, 0.5km4. Seocho-gu, 0.5km

5. 서초구, 1km5. Seocho-gu, 1km

기존 데이터로 선형회귀한 값은 다음과 같이 저장되어 있다The values of linear regression with existing data are stored as follows:

김철수 강남구 3~4시: a = 5, b = 6 Kim Cheol-soo Gangnam-gu 3-4 p.m .: a = 5, b = 6

김철수 강남구 4~5시: a = 7, b = 5 Kim Cheol-soo Gangnam-gu 4-5 p.m .: a = 7, b = 5

김철수 서초구 4~5시: a = 4, b = 7 Kim Cheol-soo Seocho-gu 4-5 p.m .: a = 4, b = 7

김철수 라이더가 3시 반부터 배송을 시작한다고 했을 때, 예상시간은 다음과 같이 결정된다.When Rider Kim Cheol-soo starts delivery at 3:30, the estimated time is determined as follows.

1. 현재 시각 3시 반, 강남구 물품이므로 김철수 강남구 3~4시 데이터 활용. 4km가 걸리므로 예상시간은 5*4 + 6 = 26분. 1. The current time is 3:30, and since it is a Gangnam-gu product, Kim Cheol-soo uses data from 3 to 4 o'clock in Gangnam-gu . Since it takes 4km, the estimated time is 5*4 + 6 = 26 minutes.

3시 56분 완료로 추정함.Estimated completion at 3:56.

2. 예상 배송 시작 시간이 3시 56분, 강남구 물품이므로 김철수 강남구 3~4시 데이터 활용. 2km가 걸리므로 예상시간은 5*2 + 6 = 16분 2. The estimated delivery start time is 3:56, and since it is a Gangnam-gu product, Kim Cheol-soo used data from 3 to 4 o'clock in Gangnam-gu. Since it takes 2km, the estimated time is 5*2 + 6 = 16 minutes.

4시 12분 완료로 추정함.Estimated completion at 4:12.

3. 예상 배송 시작 시간이 4시 12분, 강남구 물품이므로 김철수 강남구 4~5시 데이터 활용. 3km가 걸리므로 7*3 + 5 = 26분3. The estimated delivery start time is 4:12, and since it is a Gangnam-gu product, Kim Cheol-soo used data from 4 to 5 o'clock in Gangnam-gu. It takes 3km, so 7*3 + 5 = 26 minutes.

4시 38분 완료로 추정함.Estimated completion at 4:38.

4. 예상 배송 시작 시간이 4시 38분, 서초구 물품이므로 김철수 서초구 4~5시 데이터 활용. 0.5km가 걸리므로 4*0.5 + 7 = 9분4. The estimated delivery start time is 4:38, and since it is a Seocho-gu item, Kim Cheol-soo used data from 4 to 5 o'clock in Seocho-gu. It takes 0.5km, so 4*0.5 + 7 = 9 minutes.

4시 47분 완료로 추정함.Estimated completion at 4:47.

5. 예상 배송 시작 시간이 4시 47분, 서초구 물품이므로 김철수 서초구 4~5시 데이터 활용. 1km가 걸리므로 4*1 + 7 = 11분 걸림. 5. The estimated delivery start time is 4:47, and since it is a Seocho-gu item, Kim Cheol-soo used data from 4 to 5 o'clock in Seocho-gu. It takes 1km, so 4*1 + 7 = 11 minutes.

4시 58분 완료로 추정함.Estimated completion at 4:58.

이 때 시간당 22mm의 비가 내리고 있고, 비에 대한 시그모이드 함수의 계수가 a = 0.5, b = 20이라면 각각의 단계에서 = 1.44만큼의 가중치가 곱해진다(이 경우 2번째 배송품은 4시가 넘어 시작될 것으로 예측되므로 예상시간을 구할 때 3~4시 데이터가 아니라 4~5시 데이터를 사용함.).At this time, it is raining at 22 mm per hour, and if the coefficients of the sigmoid function for rain are a = 0.5 and b = 20, at each stage = Multiplied by a weight of 1.44 (In this case, the second delivery is expected to start after 4 o'clock, so when calculating the expected time, the 4-5 o'clock data is used, not the 3-4 o'clock data.)

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

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

Claims (8)

서버 또는 단말에 의한 배송 시간을 예측하기 위한 방법에 있어서, 상기 방법은,
특정 물품과 관련된 배송 정보를 획득하는 단계,
상기 배송 정보는 배송자가 배송하는 복수 개의 배송 물품들의 개수, 및 상기 복수 개의 배송 물품들의 배송 순서를 포함하고;
상기 배송 정보에 포함된 상기 복수 개의 배송 물품들의 개수, 및 상기 복수 개의 배송 물품들의 상기 배송 순서에 따라 상기 복수 개의 배송 물품들을 정렬하는 단계; 및
상기 배송 순서에 따라 정렬된 상기 복수 개의 배송 물품들 중 상기 특정 물품의 배송 시간을 계산하는 단계를 포함하되,
상기 특정 물품의 배송 시간은 상기 특정 물품의 배송 전에 배송되는 적어도 하나의 물품들 각각의 제1 구간 배송 시간과 상기 적어도 하나의 물품 중 마지막에 배송되는 물품 이후 상기 특정 물품이 배송되는 제2 구간 배송 시간을 합친 값이고,
상기 제1 구간 배송 시간 및 상기 제2 구간 배송 시간 각각은 거리에 기초한 제1 알고리즘을 이용한 거리 기반 배송 시간과 주변 환경 정보에 따른 제2 알고리즘을 이용한 가중치 시간을 합친 값이고,
상기 제1 알고리즘은 현재 배송 물품의 제1 배송 위치와 상기 현재 배송 물품 이전에 배송되는 이전 배송 물품의 제2 배송 위치 간의 거리에 기반한 선형회귀분석에 기초하여 모델링 되고
상기 제2 알고리즘은 각각의 배송 물품의 배송 위치의 환경 정보에 따른 배송 시간의 차이에 기반한 시그모이드 함수에 기초하여 모델링 되고
상기 선형회귀 분석은 배송 거리에 따른 시간대별 소요시간 및 상기 배송 거리에 기초하여 모델링 되며,
상기 선형회귀 분석에 기초하여 상기 배송 거리가 X 및 상기 시간대별 소요시간이 y인 경우, 수학식 1의 a 및 b의 값을 결정하고,
수학식 1

상기 주변 환경 정보에 기초한 값이 x인 경우, 상기 가중치 시간은 상기 a 및 상기 b에 기초한 아래의 수학식 2를 이용하고
수학식 2

상기 배송 순서에 따라 정렬된 상기 복수 개의 배송 물품들 중 상기 특정 물품의 배송 시간을 계산하는 단계; 는
복수 개의 배송지들이 존재하는 경우, 최적의 배송 경로를 설정하기 위해, 배송지들을 특정 기준에 따라 복수 개로 그룹핑하는 단계; 를 포함하고,
상기 복수 개의 배송지들이 존재하는 경우, 최적의 배송 경로를 설정하기 위해서 배송지들을 특정 기준에 따라 복수 개로 그룹핑하는 단계; 는
일정 범위의 지역에 특정 기준에 따라 복수 개의 제1 중심 좌표를 설정하고, 상기 특정 기준은 상기 복수 개의 중심 좌표 각각에 따른 배송지의 개수, 중심 좌표 간의 거리, 인구 수, 교통 량 및 인구 밀집 도 중 적어도 하나를 포함하고,
복수 개의 제1 중심 좌표 각각을 기준으로 복수 개의 중심 좌표에서 일정 거리 이내에 포함되어 있는 복수 개의 배송지를 제1 그룹핑 절차를 통해 복수 개의 제1 그룹들로 그룹핑하고, 복수 개의 제1 그룹들 각각에 포함된 상기 복수 개의 배송지의 개수가 특정 값 이상인지 여부를 판단하고,
복수 개의 제1 그룹들 중 상기 복수 개의 배송지들의 개수가 상기 특정 값 이상인 적어도 하나의 제1 그룹은 상기 복수 개의 배송지의 개수가 상기 특정 값 이하가 되도록 제2 그룹핑 절차를 통해서 적어도 하나의 제2 그룹으로 그룹핑하고, 제2 그룹핑 절차는 상기 적어도 하나의 제2 그룹에 포함된 적어도 하나의 배송지의 개수가 상기 특정 값 이하가 될 때까지 반복해서 수행되는 방법.







In a method for predicting delivery time by a server or terminal, the method includes:
Obtaining delivery information related to a specific product;
The delivery information includes the number of a plurality of delivery items delivered by the deliverer, and a delivery order of the plurality of delivery items;
Sorting the plurality of delivery items according to the number of the plurality of delivery items included in the delivery information and the delivery order of the plurality of delivery items; and
Comprising the step of calculating a delivery time of the specific product among the plurality of delivery items arranged according to the delivery order,
The delivery time of the specific product includes a first section delivery time of each of the at least one product delivered before delivery of the specific product and a second section delivery time of the specific product delivered after the last product among the at least one product. It is the sum of time,
Each of the first section delivery time and the second section delivery time is a sum of a distance-based delivery time using a first algorithm based on distance and a weighted time using a second algorithm based on surrounding environment information,
The first algorithm is modeled based on linear regression analysis based on the distance between the first delivery location of the current delivery item and the second delivery location of the previous delivery item delivered before the current delivery item,
The second algorithm is modeled based on a sigmoid function based on the difference in delivery time according to the environmental information of the delivery location of each delivery item, and
The linear regression analysis is modeled based on the delivery distance and the time required for each time period according to the delivery distance.
Based on the linear regression analysis, if the delivery distance is
Equation 1

When the value based on the surrounding environment information is x, the weight time uses equation 2 below based on a and b,
Equation 2

calculating a delivery time of the specific product among the plurality of delivery items arranged according to the delivery order; Is
When a plurality of delivery destinations exist, grouping the delivery destinations into a plurality according to specific criteria to set an optimal delivery route; Including,
When the plurality of delivery destinations exist, grouping the delivery destinations into a plurality according to specific criteria to set an optimal delivery route; Is
A plurality of first center coordinates are set according to specific criteria in a certain range of areas, and the specific criteria include the number of delivery destinations for each of the plurality of center coordinates, the distance between center coordinates, the number of people, traffic volume, and population density. contains at least one,
Based on each of the plurality of first center coordinates, a plurality of delivery locations included within a certain distance from the plurality of center coordinates are grouped into a plurality of first groups through a first grouping procedure, and are included in each of the plurality of first groups. Determine whether the number of the plurality of delivery destinations is greater than or equal to a certain value,
Among the plurality of first groups, at least one first group in which the number of the plurality of delivery addresses is greater than or equal to the specific value is divided into at least one second group through a second grouping procedure such that the number of the plurality of delivery addresses is less than or equal to the specific value. grouping, and the second grouping procedure is repeatedly performed until the number of at least one delivery address included in the at least one second group becomes less than or equal to the specific value.







삭제delete 삭제delete 삭제delete 제1 항에 있어서,
상기 환경 정보는 강우량, 강설량, 풍량 및 교통량 중 적어도 하나를 포함하는 방법.




According to claim 1,
A method wherein the environmental information includes at least one of rainfall, snowfall, wind volume, and traffic volume.




삭제delete 삭제delete 삭제delete
KR1020210128134A 2021-09-28 2021-09-28 Improved delivery time prediction system through AI algorithm KR102623622B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210128134A KR102623622B1 (en) 2021-09-28 2021-09-28 Improved delivery time prediction system through AI algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210128134A KR102623622B1 (en) 2021-09-28 2021-09-28 Improved delivery time prediction system through AI algorithm

Publications (2)

Publication Number Publication Date
KR20230045372A KR20230045372A (en) 2023-04-04
KR102623622B1 true KR102623622B1 (en) 2024-01-11

Family

ID=85928914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210128134A KR102623622B1 (en) 2021-09-28 2021-09-28 Improved delivery time prediction system through AI algorithm

Country Status (1)

Country Link
KR (1) KR102623622B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102035864B1 (en) * 2018-09-07 2019-10-23 정완식 Method for providing multiple shortest-way finding service
KR102077970B1 (en) * 2019-09-17 2020-04-09 주식회사 아이트립 Providing method for delivering baggage based on communication network and apparatus therefor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190057823A (en) * 2017-11-21 2019-05-29 이태영 Set-up of a system for automatic information of delivery schedule in each logistics area

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102035864B1 (en) * 2018-09-07 2019-10-23 정완식 Method for providing multiple shortest-way finding service
KR102077970B1 (en) * 2019-09-17 2020-04-09 주식회사 아이트립 Providing method for delivering baggage based on communication network and apparatus therefor

Also Published As

Publication number Publication date
KR20230045372A (en) 2023-04-04

Similar Documents

Publication Publication Date Title
Van Duin et al. Improving home delivery efficiency by using principles of address intelligence for B2C deliveries
Martinez et al. An agent‐based simulation model to assess the impacts of introducing a shared‐taxi system: an application to Lisbon (Portugal)
Bruglieri et al. PoliUniPool: a carpooling system for universities
Comi et al. DynaLOAD: a simulation framework for planning, managing and controlling urban delivery bays
CN110832561B (en) System and method for determining and recommending boarding location for vehicles
US20130317884A1 (en) System and method for estimating a dynamic origin-destination matrix
US11288603B2 (en) System for real-time optimal matching of ride sharing requests
CN108229879A (en) A kind of stroke duration predictor method, device and storage medium
CN114386720B (en) Logistics system scheduling management method, system, terminal equipment and storage medium
US20220108615A1 (en) Systems and methods for dispatching shared rides through ride-hailing platform
US20130290056A1 (en) Schedule optimisation
KR102623622B1 (en) Improved delivery time prediction system through AI algorithm
KR102623620B1 (en) Delivery grouping system for setting delivery route
KR102623621B1 (en) Improved delivery route setting system using grouping algorithm
Hou et al. Optimization framework for crowd-sourced delivery services with the consideration of shippers’ acceptance uncertainties
CN112819394B (en) Waybill processing method and device, computer-readable storage medium and electronic equipment
KR102068886B1 (en) System and method for providing an advertisement using distribution information
JP2021096793A (en) Area analysis system and method thereof
CN113240218B (en) Logistics distribution planning method and system based on big data
CN111612493A (en) User grouping method and device
Fu et al. Potential effects of automatic vehicle location and computer-aided dispatch technology on paratransit performance: a simulation study
US11227347B2 (en) System and method for utilizing transit data to determine where a transit traveler's order is placed in an order queue
CN111325594A (en) Potential tail bill judging and scheduling method and device
KR102297992B1 (en) System and usage method for constructing charter bus customer information
Montenegro et al. A demand-responsive feeder service with mandatory and optional, clustered bus-stops

Legal Events

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