KR20200084370A - 동적 페어링 기능 최적화를 위한 시스템 및 방법 - Google Patents

동적 페어링 기능 최적화를 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20200084370A
KR20200084370A KR1020207018934A KR20207018934A KR20200084370A KR 20200084370 A KR20200084370 A KR 20200084370A KR 1020207018934 A KR1020207018934 A KR 1020207018934A KR 20207018934 A KR20207018934 A KR 20207018934A KR 20200084370 A KR20200084370 A KR 20200084370A
Authority
KR
South Korea
Prior art keywords
pairing
data
shipper
delivery
order
Prior art date
Application number
KR1020207018934A
Other languages
English (en)
Other versions
KR102665720B1 (ko
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 도어대쉬, 인크.
Publication of KR20200084370A publication Critical patent/KR20200084370A/ko
Application granted granted Critical
Publication of KR102665720B1 publication Critical patent/KR102665720B1/ko

Links

Images

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/0834Choice of carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • 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
    • 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/10Services
    • G06Q50/12Hotels or restaurants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

부패하기 쉬운 물품 배달의 배정을 최적화하기 위한 시스템 및 프로세스가 제공된다. 일 형태에서, 활동 가능한 배송자와 생성된 주문 세트와의 페어링을 위한 방법이 제공된다. 생성된 주문의 세트는 판매자에 의해 확인된 주문을 포함하고, 활동 가능한 배송자 세트는 활동중 상태로 온라인 중인 배송자를 포함한다. 각 배송자와 각 생성된 주문 간에는 실행 가능한 페어링이 형성된다. 실행 불가능한 페어링은 운송 모드와 같은 인자에 기초하여 제거된다. 각 페어링에 대해 가능한 경로가 가중된 인자에 기초하여 생성되고 점수가 매겨진다. 점수를 최적화하여 최대 점수를 갖는 경로의 세트를 얻는다. 다음에 경로는 생성된 주문이 판매자에 의해 완성될 때나 그 이후에 배송자가 도착하는 경우 대응하는 배송자에게 제공된다. 신경 네트워크를 구현하여 임의의 기간 동안 최적의 점수를 알 수 있도록 한다.

Description

동적 페어링 기능 최적화를 위한 시스템 및 방법
관련된 출원에 대한 크로스 - 레퍼런스
본 발명은 이 출원에 인용된 다른 레퍼런스들과 함께 전체적으로 모든 목적을 위해 레퍼런스로 합체되는 것으로, 미국 특허법 35 U.S.C.§119(a)에 의거 2017년 11월 30일자로 출원된 미국 특허출원 번호 15/826,736( 발명의 명칭: 동적 페어링 기능 최적화를 위한 시스템 및 방법)의 우선권 이익을 청구한다.
기술분야
본 발명은 부패하기 쉬운 물품의 실-시간, 온-디맨드 배달을 촉진하기 위한 시스템에 관한 것이다. 하나의 예에서, 본 발명은 배송자에게 배달의 배정을 최적화 하기 위한 구조 및 프로세스에 관한 것이다.
로지스틱스 플랫폼, 특히 부패하기 쉬운 물품의 실-시간 온-디맨드 배달을 관리하기 위한 로지스틱스 플랫폼은 정확한 위치, 상태 및 소비자를 부패하기 쉬운 물품의 공급자에게 효과적이고 능률적으로 연결하기 위한 발송 구조에 의지된다. 일부 시스템에서, 수만 건의 주문이 실-시간으로 배달을 위해 들어온다. 빠른 그리고 온-타임 배달이 가능토록 하기 위해, 특히 부패하기 쉬운 물품에 대해서는, 그러한 주문들은 그 배달을 가장 능률적으로 완료할 수 있는 배송자에게 제공되어야만 한다.
필연적으로, 배달 경로 및 주문의 핸들링, 특히 부패하기 쉬운 물품의 실-시간 온-디맨드 배달을 위한 로지스틱스 플랫폼에 대한 최적화를 위한 향상된 구조를 제공하는 것이 바람직하다.
본 발명의 목적은 부패하기 쉬운 물품의 배달 제안과 배송자와의 페어링을 최적화하기 위한 다양한 구조 및 프로세스를 제공하고자 하는 것이다.
선행하는 및/또는 뒤따르는 어느 예들 및 특징들의 본 발명의 적어도 일부분을 포함하는 하나의 특징에서, 동적 페어링 기능 최적화를 위한 방법이 제공된다. 방법은 서버에서, 복수의 판매자로부터 부패하기 쉬운 물품의 실-시간 배달을 위해 생성된 복수의 주문에 대응하는 제1 필터된 데이터세트를 수신하는 단계를 포함하며, 상기 제1 필터된 데이터세트는 시간 임계값 및 확인 이정표에 의해 필터링된다.
방법은 상기 서버에서, 복수의 활동 가능한 배송자에 대응하는 제2 필터된 데이터세트를 수신하는 단계를 더 포함하며, 상기 제2 필터된 데이터세트는 활동중 상태 임계값에 의해 필터링된다.
방법은 상기 제1 및 제2 필터된 데이터세트로부터 바람직한 데이터 페어링 세트를 생성하는 단계를 더 포함한다. 상기 바람직한 데이터 페이링 세트를 생성하는 단계는 상기 제1 데이터세트 및 상기 제2 데이터세트의 통합을 복수의 분류 그룹으로 미세 분류하는 단계를 포함한다. 상기 미세 분류는 상기 제1 및 제2 데이터세트의 지리적 데이터 관련 데이터 값에 적어도 부분적으로 기초한다. 각 분류 그룹에 대해, 상기 제1 데이터세트로부터의 제1 데이터 값과 상기 제2 데이터세트로부터의 제2 데이터 값 사이의 가능한 데이터 페어링이 식별된다.
상기 가능한 데이터 페어링은 실행 불가능한 페어링을 제거하여 실행 가능한 페어링 세트를 형성하도록 필터링된다. 상기 실행 불가능한 페어링은 운송 모드를 포함하는 인자를 사용하여 결정된다. 상기 실행 불가능한 페어링은 차량 유형, 차량 크기, 주문품 크기, 및 식품 유형 중 하나 이상을 포함하는 추가 제약에 기초하여 결정된다.
그리고나서 각각의 실행 가능한 페어링과 관련된 가능한 경로가 생성된다. 각각의 실행 가능한 페어링은 가중된 인자에 기초하여 점수를 매긴다. 모든 페어링에 대해 점수의 합을 최대화하는 상기 실행 가능한 페어링 세트는 수학적 해결 장치를 사용하여 구해진다.
방법은 예상되는 경로의 시간 값이 예측되는 부패하기 쉬운 물품 준비 완료 시간 값 이상인 경우 상기 해당하는 실행 가능 페어링을 선택하는 단계를 더 포함한다. 상기 예상되는 경로의 시간 값은 상기 예측되는 시간 값보다 크거나 같지 않은 경우, 상기 실행 가능 페어링에 대응하는 상기 주문 및 상기 배송자는 바람직한 데이터 페어링의 세트를 생성할 때 재검토하기 위해 마킹된다. 상기 예상되는 경로의 시간 값은 상기 경로에 해당하는 상기 배송자가 상기 판매자에게 도착할 것으로 예측되는 시간에 해당하고, 상기 예측되는 시간은 상기 판매자에 의한 주문품 준비 완료에 해당한다.
상기 시간 임계값은 준비 완료까지 추산되는 시간 간격에 해당하고, 상기 확인 이정표는 해당 판매자에 의한 해당 주문의 수신 확인에 해당한다. 상기 활동중 상태 임계값은 배송자가 온라인 상태이며 배달 제안을 적극적으로 수락한 것에 대응한다.
상기 지리적 데이터 관련 데이터 값은 배송자의 실시간 위치와 주문에 해당하는 픽업 장소의 위치 간의 지리적 근접도, 지역적 경계, 수요와 공급 조건, 및 과거 배달 데이터 중 하나 이상을 포함한다.
상기 바람직한 데이터 페어링 세트를 생성하는 단계는 예상되는 시간 값과 차량 유형, 차량 크기, 주문품 크기 및 식품 유형을 포함하는 학습되는 인자에 기초하는 예측 시간 값을 자동으로 추산하도록 상기 제1 및 제2 필터된 데이터세트를 학습된 신경 네트워크에 입력하는 단계를 더 포함한다.
상기 제2 필터된 데이터세트는 지오해시 데이터 좌표에 의해 정의된 활성 영역을 확장 또는 축소하여 상기 활성 영역 내의 활동 가능한 배송자들에 대한 생성되는 주문의 비율을 바람직하게 유지함으로써 결정된다.
본 발명의 다른 실행은 연관된 동적 페어링 기능 최적화를 위한 방법 뿐만 아니라 대응하는 장치, 시스템, 및 컴퓨터 프로그램들을 포함한다. 이들 다른 실행들은 하나 이상의 다음의 특징들을 각각 선택적으로 포함한다. 예를 들면, 컴퓨터에 의해 실행되도록 구성된 하나 이상의 프로그램을 포함하는 비일시적 컴퓨터 판독 가능 매체가 제공된다. 일부 실시예에서,하나 이상의 프로그램들은 개시된 방법 및 시스템의 액션들을 수행하기 위한 지시를 포함한다.
선행하는 및/또는 뒤따르는 어느 예들 및 특징들의 본 발명의 적어도 일부분을 포함하는 하나의 특징에서, 동적 페어링 기능 최적화를 위한 시스템이 제공된다. 상기 시스템은 하나 이상의 프로세서, 메모리, 및 상기 메모리에 저장된 하나 이상의 프로그램을 포함한다. 하나 이상의 프로그램들은 개시된 방법 및 시스템의 액션들을 수행하기 위한 지시를 포함한다.
이들 및 다른 실시예들은 도면을 참조하여 더 기술된다.
본 발명에 의하면, 부패하기 쉬운 물품의 배달 제안과 배송자와의 동적 페어링 기능을 정밀하고 효율적으로 최적화할 수 있는 방법 및 시스템을 얻게 된다.
본 발명은 본 발명의 특정한 실시예를 도해 설명하는 별첨 도면들과 결합하여 된 다음의 설명에 의거하여 가장 잘 이해된다.
도1은 하나 이상의 실시예에 따라서, 복수의 판매자, 배송자 및 고객을 가지는 배달 로지스틱스 시스템의 일 예를 도해 설명한다.
도2는 하나 이상의 실시예에 따라서, 부패하기 쉬운 물품의 실-시간 온-디맨드 배달과 연합된 배달 이벤트 스케쥴 예를 도해 설명한다.
도3은 하나 이상의 실시예에 따라서, 본 발명의 다양한 시스템 및 방법을 실행하기 위한 네트워크 체계 예의 다이아그램을 도해 설명한다.
도4a, 4b, 및 4c는 하나 이상의 실시예에 따라서, 가중치가 주어진 인자를 사용하여 다양한 이벤트 및 타임스탬프를 프로세싱하기 위한 프로세스 예를 도해 설명한다.
도5는 하나 이상의 실시예에 따라서, 동적 추산 도착시간 예측을 위한 방법을 도해 설명한다.
도6은 하나 이상의 실시예에 따라서, 예측 ETA 업데이트를 실행하기 위한 흐름 프로세스 예를 도해 설명한다.
도7은 하나 이상의 실시예에 따라서, 최적 배달 경로 페어링을 위한 프로세스 예를 도해 설명한다.
도8은 하나 이상의 실시예에 따라서, 매트릭스 채점 예를 도해 설명한다.
도9는 본 발명의 다양한 실시예에서 실행될 수 있는 지오해시 좌표 지도의 예를 도해 설명한다.
도10은 본 발명의 다양한 실시예에서 사용될 수 있는 컴퓨터 시스템의 특별한 예를 도해 설명한다.
본 발명을 수행하기 위해서 발명자에 의해 심사숙고된 최상의 양태를 포함하는 본 발명의 일부 특정한 예에 대해 구체적으로 개시된다. 이들 특정한 실시예의 예들이 첨부 도면에서 도해 설명된다. 본 발명은 이들 특정한 실시예들과 결합하여 개시되는 반면에, 본발명을 개시된 실시예에 한정하려고 의도하지는 않는다는 것을 이해할 것이다. 반대로, 첨부된 청구범위에 의해 정의된 바와 같이 본 발명의 사상 및 요지 내에 포함되는 것과 같은 대체물, 변형물, 및 균등물들을 포괄하기를 의도한다.
다음의 개시에서, 다수의 특별한 상세들이 본 발명에 대한 완전한 이해를 제공하기 위해 주어진다. 본 발명의 특정한 실시예는 이들 특별한 상세의 일부 또는 전부 없이 실행된다. 다른 보기에서, 잘 알려진 프로세스 단계들은 본 발명을 불필요하게 불명료하게 하지 않도록 구체적으로 개시하지 않았다.
예를 들면, 본 발명의 기술들은 와이파이 또는 블루투스와 같은 특별한 프로토콜의 상황에서 개시될 것이다. 그러나. 본 발명의 기술들은 또한 프로토콜의 변형물에도 적용된다는 점을 특히 주의해야만 한다.
본 발명의 다양한 기술 및 구조들은 때때로 명확성을 위해 단일 형태로 개시된다. 그러나, 일부 실시예들은 달리 언급이 없는한 기술의 복수의 반복 또는 구조에 대한 복수의 사례를 들어 설명함을 포함한다는 점을 특히 주의해야만 한다. 예를 들면, 시스템은 다양한 상황에서 하나의 프로세서를 사용한다. 그러나, 시스템은 달리 언급이 없는한 본 발명의 요지 내에 있다면 복수의 프로세서를 사용할 수 있다는 것을 이해할 것이다. 더우기, 본 발명의 기술 및 구조는 때때로 두 존재 사이의 연결을 개시한다. 두 존재 사이의 연결은 다양한 다른 존재들이 두 존재 사이에 존재할 수 있는 것처럼 반드시 직접적인, 방해받지 않는 연결을 의미하는 것은 아니라는 점을 특히 주의해야만 한다. 예를 들면, 프로세서는 메모리에 연결되지만, 그러나 다양한 브릿지 및 컨트롤러들이 프로세서와 메모리 사이에 존재할 수 있다는 것을 이해할 것이다. 결론적으로, 연결은 달리 언급이 없는 한 반드시 직접적인, 방해받지 않는 연결을 의미하는 것은 아니다.
개 략
본 발명에 관해서, 부패하기 쉬운 물품의 실-시간 온-디맨드 배달을 관리하는 로지스틱스 플랫폼은 주문품의 배달을 최적화하도록 배송자와 배달 기회의 능률적인 페어링에 의존한다. 이것은 배송자 활동성, 비가동시간 감소, 고객에의 스피드업 배달을 최적화한다. 그러나, 일부 실시예에서, 매 분 생성되는 대형 주문량은 시스템의 상태를 빈번하게 바꾸도록 하며 이것은 페어링을 위한 가장 능률적인 경로 세트를 결정하는데 어려움을 야기한다.
다양한 실시예에 따라서, 부패하기 쉬운 물품의 배달을 위한 페어링을 최적화하기 위한 시스템 및 연합된 프로세스가 제공된다. 생성된 주문의 데이터세트와 활동가능한 배송자의 데이터세트를 페어링하기 위한 방법이 제공된다. 생성된 주문의 데이터세트는 대응하는 판매자에 의해 확인완료된 주문을 포함하며 활동가능한 배송자의 데이터세트는 온라인 상에 있고 배달 기회를 적극적으로 수락하는 배송자들을 포함한다. 이것은 시스템 내의 모든 주문 및 모든 배송자들로부터 선택된 글로벌 데이터세트, 또는 지역적인 주문 및 배송자의 데이터세트이다.
그리고나서 주문의 데이터세트와 활동가능한 배송자의 데이터세트는 근접성, 지오해시(geohash) 값 등과 같은 지리적 데이터 항목에 기초한 그룹으로 분류된다.주문 및 배송자의 각각의 그룹 내에서, 실행 가능한 페어링은 실행 불가능한 페어링을 식별하고 제거함으로써 각각의 배송자와 각각의 생성된 주문 사이에서 생성된다. 실행 불가능한 페어링은 운송 모드, 차량 유형, 차량 크기, 주문품 크기, 및 주문 품목과 같은 다양한 제약을 사용하여 결정된다.
그리고나서 배달 경로는 각각의 실행 가능한 페어링을 위해 생성되며 경로 효율성, 경로 선행권, 경로의 계획된 지체, 경로의 신뢰성, 경로의 적합성, 경로의 상태 효과와 같은 가중치가 주어진 인자들에 기초하여 점수가 매겨진다. 신경 네트워크는 추산된 도착시간 예측 업데이트를 생성함으로써 가중치가 주어진 인자들을 결정하기 위해 실행된다. 그리고나서 점수는 모든 생성된 경로에 대해 최대 점수 조합을 얻도록 최적화된다.그리고나서 각각의 경로는 만약 배송자가 도착하거나 또는 판매자에 의해 생성된 주문품이 준비완료된 후에 대응하는 배송자를 위해 선택된다. 일부 실시예에서, 경로는 배달 페어링을 수락하도록 대응하는 배송자에게 제안된다. 경로 배정을 결정하기 위해 사용된 더 많은 시간이 더 정밀하고 정보에 근거한 결정을 위한 추가적인 데이터를 제공하고 또한 제안된 배달 기다림에 지체를 야기하기 때문에, 신경 네트워크는 주어진 시간 양에 대해 배송자로 하여금 주문의 최적 선택을 예측하도록 학습된다.
일부 실시예에서, 여기에 개시된 시스템은 특정한 접수확인 포인트를 요구하는 제3의 판매자로부터 일어난 부패하기 쉬운 물품의 온-디맨드 배달의 사용 경우를 위해 구축된다. 주문 페어링에의 지금의 접근은 간단하게 각 배달을 통과하고, 근접성에서 가장 가까운 배송자를 선택하며, 경로 페어링을 만든다. 그러나, 이 접근은 단지 시스템의 현재 상태에 대한 가장 좋은 해법을 고려하며 시스템의 미래 상태는 고려하지 않는다. 더욱이, 이것은 단지 제일 먼저 고려되는 주문에 대한 가장 좋은 페어링을 결정하며, 해법의 종합적인 유틸리티를 무시한다.
본 발명의 방법은 또한 배달이 차례로 원을 형성하기 때문에 배달 수가 클 때, 또는 배송자들이 풀은 방해받을 수 없기 때문에 동시에 같은 풀로부터 선택될 때 수행 이슈 및/또는 진행 상황들을 경험한다. 본 발명의 방법은 또한 판매자 단계들, 즉 판매자는 주문을 보지 않았으며, 또는 주문은 배송자가 도착할 때 준비완료되지 않는 등을 효과적으로 참작하지 않는다.
여기에 개시된 배달의 최적의 배정을 위한 향상된 시스템은 시스템의 미래 상태를 고려하면서 페어링 결정이 되자마자 복수의 서로 다른 매트릭스의 명백한 발란싱을 제공한다. 게다가, 데이터세트의 분류하기 및 경로 생성을 대응시키기는 더 빈번한 존재의 재최적화 및 계속 발생하는 주문을 고려하면서 정밀하고 효율적인 경로 페어링을 얻는다.
실시예
도1을 참조하여, 하나 이상의 실시예에 따라서 다수의 판매자, 배송자, 및 고객을 위해 실행된 배달 로지스틱스 시스템(100)의 일 예를 나타낸다. 여기에서 사용된 바와 같이, 용어 "배달 로지스틱스 시스템"은 용어 "로지스틱스 플랫폼" 또는 "배달 플랫폼"과 교체될 수 있도록 사용된다. 이 예에서, 배달 로지스틱스 시스템(100)은 부패하기 쉬운 물품의 실-시간, 온-디맨드 배달을 관리하는 로지스틱스 플랫폼이다. 예를 들면, 고객은 로지스틱스 플랫폼을 통하여 주문을 발주하는 모바일 장치 앱을 이용하여 레스토랑으로부터 식품을 주문할 수 있다. 일부 예에서, 사용자는 또한 컴퓨터, 랩톱, 태블릿 등에 의해 인터넷을 통하여 로지스틱스 플랫폼을 접속할 수 있다. 고객이 로지스틱스 플랫폼을 통하여 식품을 주문할 때, 주문품은 공급자 사이트에서 준비되며, 거기에서 배송자는 그리고나서 주문품을 픽업하고 주문품을 공급자 사이트로부터 고객에게 배달하게 된다.
도1에 나타낸 바와 같이, 시스템(100)은 공급자(110),(112),(114) 및 (116)를 포함한다. 다양한 예에 따라서, 공급자는 레스토랑에서 식품과 같은 부패하기 쉬운 물품을 준비하는 판매자일 수 있다. 다른 그러한 판매자는 레스토랑, 바, 카페, 또는 호텔과 같은 식음료의 다른 행상인의 하나 이상의 어떤 조합일 수 있다. 그러한 장소는 또한 여기에서 식품 서비스 산업 내에 독립적 존재를 기술하기 위해 사용된 용어 또는 약자인 HORECA(호텔/레스토랑/카페)로서 간주된다.
그러나, 일부 예에서, 공급자 사이트는 또한 고객에게 실-시간, 온-디맨드 배달을 필요로 하는 꽃바구니 제품, 의약품, 냉장 또는 냉동 제품, 살아있는 동물 등과 같은 다른 부패하기 쉬운 물품을 제공할 수 있다. 따라서 비록 본 발명에서 다양한 예들이 레스토랑 및 식품 배달 상황에서 공급자 사이트 및 로지스틱스 플랫폼을 개시하더라도 여기에서 개시된 구조 및 공정들은 또한 다양한 다른 부패하기 쉬운 물품들의 배달에도 적용될 수 있다. 여기에서 사용된 바와 같이, 용어 "공급자" 및 "판매자"는 교체할 수 있도록 사용될 수 있다.
시스템(100)은 또한 하나 이상의 배송자(120),(122),(124),(126), 및 (128)를 포함한다. 그러한 배송자는 도보이거나 또는 자동차, 스쿠터, 자전거 등과 같은 것으로 이동한다. 시스템(100)의 다양한 실시예에서, 하나 이상의 배송자는 고객에 의해 발주된 주문을 받고 또한 거주지 또는 상업적 주소인 대응 목적지(130),(132),(134), 또는 (136)에 위치된 고객에게 주문품을 배달하기 위해 하나 이상의 판매자에게 지휘된다. 일부 실시예에서, 목적지는 GPS 또는 다른 좌표 시스템에 의해 결정된 정밀한 지구-위치에 대응한다.
다양한 실시예에서, 배달 플랫폼은 주문이 들어왔을 때 고객에게 주문품을 배달하는 추산 도착시간(Estimated Time Arrival)(ETA)을 결정한다. 이 ETA는 고객에게 제공된다. 주문 배달의 ETA는 주문에 대응하는 탐지된 사건이나 이정표에 기초하여 산정된다. 여기에서 사용된 바와 같이, 용어 "사건"은 "이정표"와 교체할 수 있도록 사용된다. 고객은 또한 주문, 사건, 또는 이정표의 상태에 관한 정보를 제공받는다. 고객은 또한 배송자에 대응하는 정보와 같은 다른 정보를 제공받는다. 주문, 사건 또는 이정표의 상태에 관한 정보는 또한 판매자 및 배송자에게 제공된다.
도2를 참조하여, 하나 이상의 실시예에 따라서, 부패하기 쉬운 물품의 실-시간 온-디맨드 배달과 연관된 배달 이벤트의 스케쥴(200) 예를 나타낸다. 스케쥴(200)은 고객에 의해 주문이 되었을 때 판매자 스케쥴(210) 및 배송자 스케쥴(211)상에 일어나는 다양한 이벤트를 묘사한다. 다양한 실시예에서, 판매자 스케쥴 또는 배송자 스케쥴은 도2에 묘사된 것보다 추가적인 또는 더 적은 이벤트를 포함한다. 다양한 실시예에서, 스케쥴(200) 내의 이벤트들은 서버 시스템과 도3을 참조하여 더 기술되는 하나 이상의 배송자, 판매자 및/또는 고객과 연합된 클라이언트 장치들 사이의 전송에 의해 탐지된다. 여기에서 사용된 바와 같이, 고객과 연합된 클라이언트 장치는 "고객 장치"로서 참조되고 판매자와 연합된 클라이언트 장치는 "판매자 장치"로서 참조되며, 배송자와 연합된 클라이언트 장치는 "배송자 장치"로서 참조된다. 서버 시스템은 여기에서 더 기술하는 바와 같이 동적 ETA 추산 시스템을 실행한다.
판매자 스케쥴(210) 상에서 일어나는 이벤트는 주문 생성(212-A), 주문 발주(214), 주문 확인(216), 주문품 준비(218) 및 주문품 픽업(220-A)을 포함한다. 주문 생성(212-A)은 시스템이 고객에 의해 생성된 주문을 접수할 때 일어난다. 주문은 서버 시스템에서 접수된다. 주문은 그 뒤 정해진 판매자에게 발송된다. 일부 실시예에서, 주문은 서버로부터 판매자 장치에 주문에 대응한 전송 정보에 의해 정해진 판매자에게 발송된다.
주문 발주(214) 이벤트는 주문이 판매자 장치에서 접수될 때 일어난다. 일부 실시예에서, 판매자는 주문 확인(216) 이벤트를 유발하는 정보를 전송함으로써 주문 접수를 접수확인한다. 주문 확인(216)은 주문품의 준비가 판매자에 의해 시작되었다는 것을 나타낸다. 일부 실시예에서, 주문 생성(212-A)과 주문 확인(216) 사이의 시작 기간은 부엌 잠복(Kitchen Latency)(240)으로 알려진다.
주문품 대기 상태(218) 이벤트는 그리고나서 주문 내의 품목의 준비가 완료되고 주문품이 배송자에 의해 픽업 준비 완료될 때 일어난다. 이벤트(218)는 주문품이 준비 완료되었다는 판매자 확인에 의해 유발된다. 그러한 확인은 판매자 장치에 의해 서버로 전송된다. 판매자는 그리고나서 주문품의 픽업을 위해 도착하도록 배송자를 기다린다. 배송자가 도착하고 주문품을 픽업할 때, 주문품 픽업(220-A) 이벤트는 일어난다. 이 이벤트는 또한 배송자가 주문품을 접수하였다는 판매자 확인에 의해 유발된다.
일부 실시예에서, 배송자 스케쥴(211)상에 일어나는 이벤트는 판매자 스케쥴(210)상의 하나 이상의 이벤트와 부분적으로 겹치거나 또는 일치한다. 배송자 스케쥴(211) 상의 이벤트는 주문 생성(212-B), 주문 배정(222), 판매자에 주차(224), 판매자에 도착(226), 주문품 픽업(220-B), 차량에 돌아오기(228), 고객에 주차(230), 및 주문품 배달(232)을 포함한다.
일부 실시예에서, 주문 생성(212-B)은 주문 생성(212-A)에 대응하며, 시스템이 이벤트(212-A)에서와 같이 고객에 의해 생성된 주문을 접수할 때 일어난다. 일부 실시예에서, 이벤트(212-A) 및 (212-B)는 같은 이벤트이다. 시스템은 그리고나서 주문을 배송자에게 배정하며, 그리하여 주문 배정(222)이 유발된다. 일부 실시예에서, 주문 배정(222)은 배송자에 의해 주문 수용을 확인함으로써 유발된다. 시스템은 배송자에 대응하는 배송자 장치에 통지를 전송한다. 일부 실시예에서, 주문 생성(212-B)과 주문 배정(222) 사이의 시작 기간은 배정 잠복(241)으로 알려진다.
주문 배정(222)이 언제 일어나는가는 판매자로부터 배송자의 거리, 판매자에의 배송자의 주행 시간, 교통 상황, 그날의 시간 등을 포함하는 다양한 요인에 달려있다. 일부 실시예에서, 주문 배정(222)은 주문이 (216)에서 판매자에 의해 확인되었거나 또는 판매자에 의해 준비되고 있을 때까지 일어나지 않는다. 일부 실시예에서, 주문 배정(222)은 판매자가 주문이 (218)에서 픽업을 위해 준비 완료 상태인 것을 확인하였을 때까지 일어나지 않는다. 여기에서 사용된 바와 같이, 주문 배정 또는 배달 배정은 주문과 배송자의 페어링 및 배송자에게 주문품을 배송자에 의해 수용되거나 거절된 대응 배달 목적지에 배달하도록 배달 기회를 제공하기에 관련되어 있는 것으로 간주된다.
주문이 (222)에서 배정되자마자, 배송자는 주문품을 픽업하기 위해 판매자 위치로 갈 것이다. 배송자는 그리고나서 판매자 위치에 도착하여 주문품을 픽업하고, 주문품 픽업(220-B)을 유발한다. 이벤트(220-B)는 주문품 픽업(220-A)에 대응한다. 일부 실시예에서, 이벤트(220-A) 및 (220-B)는 같은 이벤트이다. 일부 실시예에서, 이벤트(220-B)는 배송자가 판매자로부터 주문품을 접수하였다는 배송자 확인에 의해 유발된다.
일부 실시예에서, 시스템은 판매자에 도착(226)이 주문 준비 완료 상태(218)와 동시에 일어나도록 주문을 배정하고 배송자들의 순서를 정하도록 시도한다. 이것은 판매자가 주문품을 준비 완료하기 전에 배송자가 도착하거나 또는 배송자가 도착하기 전에 판매자가 주문품을 준비 완료하는 일이 일어나는 비 가동 시간을 최소화하도록 배송자와 판매자의 행동을 가장 효과적으로 활용할 수 있다.
일부 실시예에서, 추가적인 이벤트가 주문 배정(222)과 판매자에 도착(226) 사이에서 탐지된다. 예를 들면, 배송자는 판매자 위치까지 차량으로 가며 그리고나서 판매자에게 도착하기 위해 차량을 주차한다. 일부 실시예에서, 배송자는 차량은 배송자 장치로부터 서버로 확인함을 전송함으로써 주차되었음을 확인하며, 그리하여 판매자에 주차(224)를 유발한다. 배송자는 그 뒤 걸어야만 하며 또는 그렇지 않으면 주차 위치로부터 판매자에게 차량으로 가야한다. 판매자에 도착(226) 이벤트는 또한 배송자가 판매자 위치에 도착했을 때 일어난다. 배송자 도착의 확인함은 배송자 장치 및/또는 판매자 장치에 의해 보내진다. 다양한 실시예에서, 이들 추가적 이벤트들의 탐지는 주문 배정(222)과 판매자에 도착(226) 사이의 더 정확한 ETA 예측을 제공한다.
일부 실시예에서, 배송자는 주문품이 완성되기를 기다려야만 한다. 주문품 픽업(220-B) 후에, 배송자는 그리고나서 주문품 배달(232)에서 주문품의 배달을 완성하기 위해 고객 위치로 차량으로 간다. 주문품 배달(232)은 주문품이 고객에게 주어졌을 때 일어난다. 주문품 배달(232)은 고객 또는 배송자에 의해 대응하는 장치로 배달을 확인함으로써 유발된다.
일부 실시예에서, 추가적인 이벤트는 주문품 픽업(220-B)과 주문품 배달(232) 사이에서 탐지된다. 예를 들면, 배송자는 판매자 위치에서 주문품 픽업(220-B) 후에 차량으로 돌아옴을 확인한다. 이것은 배송자 장치로부터 서버로 전송했음을 확인함으로써 행해진다. 일부 실시예에서, 확인은 수동으로 입력되거나 또는 근접 표지에 의해 자동으로 탐지된다. 예를 들면, 배송자의 위치를 결정하기 위해 사용된 시스템은 블루투스 저에너지(BLE) 표지 및 BLE 표지에 의해 보내진 신호를 탐지할 수 있는 BLE-가능 장치를 실행한다.
BLE 표지 및 장치를 사용함으로써, 시스템은 배달 배송자의 더 정확한 위치 정보를 제공할 수 있으며 또한 GPS의 결점, 셀타워 삼각 측량, 및 수동 위치 기재를 회피할 수 있다. 즉, 시스템은 약하거나 또는 GPS 부존재 또는 셀 신호일 때 사용될 수 있다. 시스템은 또한 배달 배송자로부터 어떠한 입력도 요구함이 없이 자동으로 위치를 탐지한다. 여기에서 다양한 구조 및 공정의 예들을 기술한 바와 같이, 위치 서비스를 제공하기 위하여 BLE 표지 및 BLE-가능 장치의 사용은 실-시간, 온-디맨드, 부패하기 쉬운 물품의 배달을 관리하는 로지스틱스 플랫폼을 위해 다른 이익뿐 아니라 향상된 효율성 및 정확성을 가져온다.
다른 예와 같이, 배송자는 그리고나서 고객에게 도착하기 위해 적당한 위치에 그의 차량을 주차한다. 일부 실시예에서, 배송자는 배송자 장치로부터 서버로 확인을 전송함으로써 차량이 주차되었다는 것을 확인하며, 그리하여 판매자에 주차(224) 이벤트에 유사한 고객에 주차(230) 이벤트를 유발한다. 배송자는 그리고나서 걸어야만 하며 또는 그렇지 않으면 주차 위치로부터 고객 위치로 차량으로 가야 한다. 고객에 도착 이벤트(도시되지 않음)는 또한 배송자가 주문품의 배달 전에 고객 위치에 도착하였을 때 일어난다.
다양한 실시예에서, 이벤트 또는 이정표의 탐지는 효율적으로 배송자의 순서를 정하도록 배정 또는 알고리즘을 정하기에 안내를 제공한다. 예를 들면, 위에서 기술한 바와 같이, 다양한 이벤트용 ETA 예측을 생성함으로써, 특별한 수취 증명을 요구하는 제3의 판매자로부터 생긴 부패하기 쉬운 물품의 온-디맨드 배달을 위해 배달과 배송자와의 더 최상의 페어링이 가능해진다.
다양한 실시예에서, 여기에서 기술된 하나 이상의 이벤트는 고객, 판매자, 또는 배송자에 대응하는 클라이언트 장치에 전송된다. 도3은 하나 이상의 실시예에 따라서, 본 발명의 다양한 시스템 및 방법을 실행하기 위한 네트워크 체계(300) 예의 그림을 도해 설명한다. 네트워크 체계(300)는 네트워크(310)에 의해 하나 이상의 서버 시스템(312) 및 (314)에 전달 가능하게 연결된 다수의 클라이언트 장치(302~308)를 포함한다. 일부 실시예에서, 서버 시스템(312) 및 (314)는 하나 이상의 프로세서 및 메모리를 포함한다. 서버 시스템(312) 및 (314)의 프로세서는 네트워크 데이터 교환 서버의 기능을 수행하기 위해 메모리에 저장된 컴퓨터 명령(즉, 네트워크 컴퓨터 프로그램 코드)을 실행한다. 다양한 실시예에서, 네트워크 데이터 교환 서버의 기능은 부패하기 쉬운 물품의 실-시간, 온-디맨드 배달을 순서를 정하고, 및/또는 그러한 배달을 위해 추산 도착 시간(ETAs)을 예측하고 또한 동적으로 업데이트 하는 것을 포함한다.
일부 실시예에서, 서버 시스템(312)은 네트워크 윤곽 정보를 받고 저장하도록 구성된 콘텐츠 서버이다. 일부 실시예에서, 서버 시스템(314)은 네트워크 메시지를 포함하는 네트워크 데이터 패킷을 전송하고 및/또는 발송하도록 구성된 급송 서버이다. 일부 실시예에서, 콘텐츠 서버(310) 및 급송 서버(312)는 양 서버의 동작을 수행하도록 구성된 단일 서버 시스템으로서 구성된다.
일부 실시예에서, 네트워크 체계(300)는 네트워크(310)에 의해 클러이언트 장치(302~308) 및 서버 시스템(312) 및 (314)에 전달 가능하게 연결된 데이터베이스(316)를 더 포함한다. 일부 실시예에서, 네트워크 데이터, 또는 사용자 정보, 배송자 정보, 및 판매자 정보와 같은 다른 정보는 데이터베이스(316)에 저장되고 및/또는 데이터베이스(316)로부터 검색된다.
클라이언트 장치(302~308)의 사용자는 네트워크 데이터 교환 서비스에 관여하기 위해 서버 시스템(312)에 접속한다. 예를 들면, 클라이언트 장치(302~308)는 네트워크 데이터 교환 서비스에 접속하기 위해 사용될 수 있는 웹 브라우저 앱을 실행할 수 있다. 다른 예에서, 클라이언트 장치(302~308)는 네트워크에 특유한 소프트웨어 앱을 실행할 수 있다(즉, 스마트폰에서 구동하는 데이터 교환 "앱"을 네트워킹 한다).
클라이언트 장치(302~308)와 상호 작용하는 사용자는 텍스트 코멘드(즉, 업데이트, 공고, 응답), 디지털 사진, 비디오, 온라인 주문, 지불 정보, 활동 업데이트, 위치 정보, 또는 다른 적합한 전자 정보와 같은 디지털 콘텐츠를 분배함으로써 서버 시스템(312)에 의해 제공된 네트워크 데이터 교환 서비스에 관여할 수 있다. 일부 수행에서 정보는 네트워크 또는 서버 시스템(312) 외부의 시스템 및/또는 서비스에 의해 사용자 쪽에 개시된다. 예를 들면, 사용자는 웹사이트가 사용자 쪽에 네트워크 리뷰(review)를 횡단 게시하는 것을 적당히 허용하여 영화 리뷰 웹사이트에 영화의 리뷰를 게시한다. 다른 예에서, 적당한 허용과 함께 모바일 장치에 실행된 소프트웨어 앱은 사용자의 위치를 결정하고 그의 위치(즉, "집에, "직장에", "샌프란시스코, 캘리포니아 내")에 대해 네트워크를 자동적으로 업데이트하도록 전 지구 위치 파악 시스템(GPS) 능력을 사용한다.
일부 수행에서, 클라이언트 장치(302~308)는 랩톱 또는 데스크톱 컴퓨터, 스마트폰, PDA(Personal Digital Assistant), PMP(Portable Media Players), 태블릿 컴퓨터, 또는 전자적 소셜 네트워크와 소통하도록 사용될 수 있는 다른 적합한 컴퓨팅 장치와 같은 컴퓨팅 장치일 수 있다. 일부 수행에서, 서버 시스템(312)은 하나 이상의 컴퓨터 서버와 같은 컴퓨팅 장치를 포함할 수 있다. 다양한 실시예에서, 각각의 클라이언트 장치(302~308)는 판매자(110~116)에 대응하는 판매자 장치, 배송자(120~128)에 대응하는 배송자 장치, 또는 고객(130~136)에 대응하는 고객 장치의 어느 하나이다.
일부 수행에서, 서버 시스템(312)은 서버 컴퓨터(즉, 클라우딩 컴퓨터)의 기능을 수행하기 위해 함께 작동하는 하나 이상의 컴퓨팅 장치의 일례일 수 있다. 일부 수행에서, 네트워크(310)는 공공의 통신 네트워크(즉, 인터넷, 셀룰러 데이터 네트워크, 전화 네트워크 상의 다이얼 업 모뎀,) 또는 개인 전용 통신 네트워크(즉, 개인 전용 LAN, 임차회선)일 수 있다.
가지각색의 고객, 판매자, 및 배송자는 대응하는 클라이언트 장치에 의해 서버(312) 또는 (314)에 하나 이상의 주문에 관한 정보를 전송한다. 앞에서 기술한 바와 같이, 그러한 정보는 주문 정보, 지불 정보, 활동 업데이트, 타임 스탬프, 위치 정보, 또는 다른 적합한 전자 정보를 포함한다. 시스템은 부패하기 쉬운 물품의 픽업 및 배달을 위해 주문을 일괄 처리하고 배송자에게 최상의 루트를 결정하도록 이 전송된 정보를 활용한다.
시스템은 또한 업데이트된 타임 스템프가 접수될 때 동적으로 업데이트 할 뿐만 아니라 주문 배달의 ETA를 계산하기 위해 클라이언트 장치에 의해 서버(312) 또는 (314)에 전송된 정보를 활용한다. 도4a~4c를 참조하여, 하나 이상의 실시예에 따라, 다수의 이벤트 및 타임 스탬프를 접수하기 위한 방법 예를 나타낸다.
도4a는 고객 장치로부터 이벤트 업데이트를 접수하는 공정(400) 예의 흐름도 예를 묘사한다. 단계(401)에서, 주문의 발주가 접수된다. 일부 실시예에서, 주문은 고객에 의해 (302~308)과 같은 대응 고객 장치 상에서 발주된다. 일부 실시예에서, 주문은 웹 브라우저 또는 고객 장치 내에 설치된 앱에서 발주된다. 주문은 네트워크(310)로 전송된다. 주문 발주는 주문품의 배달 위치에 대응하는 위치 정보를 포함한다. 예를 들면, 고객 장치의 위치는 GPS에 의해 결정된다. 다른 예로서, 위치 정보는 고객에 대응하는 주소를 포함한다. 주문 발주는 주문 품목, 지불 정보, 및 다른 고객 정보와 같은 추가적인 정보를 포함한다. 일부 실시예에서, 단계(401)에서의 주문의 접수는 주문 생성 이벤트(212-A) 및/또는 (212-B)에 해당한다.
일부 실시예에서, 주문 업데이트는 단계(403)에서 접수된다. 일부 실시예에서, 주문 업데이트는 주문 내의 다양한 품목의 추가 또는 제거, 주문의 취소, 배달 위치 변경 등을 포함한다. 일부 실시예에서, 주문 업데이트는 주문 배달의 예측된 ETA에 계산에 넣어진다. 일부 실시예에서, 배달의 확인은 단계(405)에서 고객 장치로부터 접수된다. 예를 들면, 고객은 배송자로부터 주문품이 접수되자마자 고객 장치에 의해 배달의 확인을 전송한다. 그러나, 일부 실시예에서, 배달의 확인은 도4c를 참조하여 더 기술되는 바와 같이, 대응하는 배송자 장치로 배송자에 의해 전송된다. 일부 실시예에서, 주문 업데이트는 선택적 실행이다.
도4b는 판매자 장치로부터 이벤트 업데이트를 접수하는 공정(410) 예의 흐름도 예를 묘사한다. 주문 접수의 확인은 단계(411)에서 접수된다. 일부 실시예에서, 주문은 적합한 판매자와 연합된 판매자 장치에 시스템에 의해 네트워크(310) 너머로 발송된다. 판매자는 그리고나서 주문 확인 이벤트(216)를 유발하는 주문 접수의 확인을 전송한다. 일부 실시예에서, 단계(411)에서 주문 접수의 확인은 주문이 성공적으로 판매자 장치로 발송되고 판매자 장치에 의해 접수되자마자 네트워크(310)에 의해 시스템(312)으로 자동적으로 전송된다.
판매자가 주문품의 준비를 완료하자마자, 주문품 준비 완료의 확인은 단계(413)에서 접수된다. 주문품 준비 완료의 확인은 주문품 준비 완료 이벤트(218)를 유발한다. 주문품 픽업의 확인은 그리고나서 단계(415)에서 접수되고 주문품 픽업 이벤트(220-A)를 유발한다. 판매자는 배송자가 주문품을 픽업하자마자 주문품 픽업 확인을 판매자 장치에 의해 전송한다. 그러나, 일부 실시예에서, 주문품 픽업의 확인은 도4c를 참조하여 더 기술되는 바와 같이, 배송자에 의해 대응하는 배송자 장치로 전송된다.
도4c는 배송자 장치로부터 이벤트 업데이트를 접수하는 공정(420) 예의 흐름도를 묘사한다. 단계(421)에서, 주문 배정의 확인은 접수된다. 일부 실시예에서, 주문 배정의 확인은 배송자에 의해 배송자 장치 상의 주문 배정 입력의 수용이다. 단계(423)에서, 배송자의 위치는 접수된다. 일부 실시예에서, 배송자의 위치는 실시간으로 탐지되고 업데이트 된다. 일부 실시예에서, 배송자의 위치는 실시간 GPS 좌표를 사용하는 것에 의하는 바와 같이, 배송자 장치에 의해 탐지된다. 일부 실시예에서, 배송자의 위치는 근접 표지를 이용하여 추가적으로 탐지된다.
다양한 실시예에서, 배송자는 주문 배정(222) 후에 판매자 위치로 이동한다. 배송자가 판매자 위치로 이동하자마자, 판매자 위치로 이동하는 상태는 단계(425)에서 접수된다. 다양한 실시예에서, 이동하는 상태는 배송자에 대응하는 차량의 상태를 포함한다. 예를 들면, 배송자 장치는 배송자가 그의 차량을 판매자 위치 가까이에 주차했다는 통지를 서버 시스템에 전송한다. 이것은 판매자에 주차 이벤트(224)에 해당한다.
판매자 위치에 배송자의 도착에 의거하여, 판매자 위치에 도착의 확인은 단계(427)에서 접수된다. 일부 실시예에서, 판매자 위치에 도착의 확인은 배송자 장치에 배송자에 의한 도착 등록 상태 업데이트 입력이며 네트워크(310)에 의해 전송된다. 주문품이 배송자에게 제공되자마자, 주문품 픽업의 확인은 단계(429)에서 접수된다. 일부 실시예에서, 주문품 픽업의 확인은 배송자에 의해 배송자 장치로 확인된다. 앞서 기술된 바와 같이, 주문품 픽업의 확인은 추가적으로, 및/또는 양자 택일적으로 판매자에 의해 판매자 장치로 확인된다.
다양한 실시예에서, 배송자는 주문품 픽업(220-B) 후에 고객 위치로 이동한다. 배송자가 고객 위치로 이동하자마자, 고객 위치로 이동하는 상태는 단계(431)에서 접수된다. 다양한 실시예에서 이동 상태는 배송자에 대응하는 차량의 상태를 포함한다. 예를 들면, 배송자 장치는 배송자가 주문품 픽업 후에 차량으로 돌아왔다는 통지를 서버 시스템에 전송한다. 이것은 차량으로 돌아옴 이벤트(228)에 해당한다. 다른 예와 같이, 배송자 장치는 배송자가 그의 차량을 고객 위치 가까이에 주차했다는 통지를 서버 시스템에 전송한다. 이것은 고객에 주차 이벤트(230)에 해당한다.
다음에, 주문품 배달의 확인은 단계(433)에서 배송자 장치로부터 접수된다. 일부 실시예에서, 주문품 배달의 확인은 배송자에 의해 배송자 장치로 확인된다. 앞서 기술된 바와 같이, 주문품 배달의 확인은 추가적으로 및/또는 양자 택일적으로 고객에 의해 고객 장치로 확인된다.
일부 실시예에서, 공정(400),(410) 및 (420)은 단일의 공정 내로 통합될 수 있다. 일부 실시예에서, 기술된 시스템은 도4a~4c에서 묘사된 것보다 추가적인 또는 더 적은 이벤트 업데이트를 접수할 수 있다.
일부 실시예에서, 스케쥴 내의 다양한 지점에서 배송자의 이동 상태는 하나 이상의 표지를 포함하는 근접 시스템에 의해 탐지된다. 근접 센서 및/또는 표지를 사용하여 배송자의 위치를 결정하기 위한 다양한 시스템 및 공정은 2017년 11월 30일자로 시에(Hsieh) 등에 의해 출원되고 여기에서 전체적으로 모든 목적을 위해 레퍼런스로 합체되는 것인 미국 특허출원번호 15/826,737(발명의 명칭: 실-시간 라스트 마일 로지스틱스 플랫폼에서 표지를 사용함에 의한 예측 향상법)에 기술되어 있다.
예를 들면, BLE 표지 센서는 배송자의 차량에 위치되며, 배송자 위치에 대응하는 표지 장치를 탐지하도록 구성된다. 일부 실시예에서, 표지 장치는 배송자와 연합된 클라이언트 장치이다. 게다가, 표지 센서는 하나 이상의 판매자 위치에 위치된다. 일부 실시예에서, 배송자 장치는 표지 센서를 포함하며 표지 장치는 배송자의 차량 또는 여러 판매자 위치에 위치된다. 배송자, 및 대응하는 배송자 장치가 여러가지 표지 쪽으로 및 표지로부터 멀어지며 이동하자마자, 배송자의 실시간 위치는 탐지된다.
예를 들면, 만약 배송자와 배송자 차량 사이의 거리가 주문 페어링(222) 후 그러나 주문품 픽업(220-B) 전에 증가하는 것이 탐지된다면, 그리고나서 배송자는 주차하였고 판매자 위치쪽으로 이동하고 있다는 것이 결정된다. 다른 예와 같이, 배송자는 목표 판매자 위치 뿐 아니라 하나 이상의 가까운 판매자 위치에 위치되고 배송자의 위치에 대응하는 표지 장치를 탐지하도록 구성된 근접 센서에 의하여 판매자 위치 쪽으로 걷고 있다고 결정된다. 판매자에 도착(226)은 또한 배송자 장치가 판매자 위치에서 표지 센서의 정해진 반경 내에 가져오게 되었을 때 결정된다.
배송자의 이동 상태는 또한 주문품 픽업(220-B)후와 주문품 배달(232) 전에 탐지된다. 만약 배송자와 판매자 위치 사이의 거리가 증가하는 것이 탐지된다면, 그리고나서 배송자는 판매자 위치를 떠나고 차량 쪽으로 이동하고 있다는 것이 결정된다. 다른 예와 같이, 배송자가 차량의 정해진 반경 내로 이동하자마자, 근접 센서는 차량으로 돌아옴 이벤트(228)가 일어났다는 것을 결정하며, 고객 위치로 추가적 이동 상태가 단계(431)에서 접수된다. 그 후, 만약 배송자와 배송자 차량 사이의 거리가 증가하는 것이 탐색된다면, 그리고나서 배송자는 차량을 주차하였으며 주문품을 배달하기 위해 고객 위치 쪽으로 이동하고 있다고 결정된다.
게다가, 주문품 배달(232)이 일어난 후, 근접 시스템은 배송자가 차량의 정해진 반경 내로 이동하였을 때 배송자는 차량으로 돌아왔다는 것을 결정한다. 이것은 배송자는 다른 주문 배정이 주어지도록 준비되어 있다는 것을 가리킨다. 다양한 실시예에서, 배송자의 판매자로의 이동 상태를 가리키는 다른 이벤트는 단계(425) 및 (431)에서 탐지된다.
도5는 하나 이상의 실시예에 따라서, 가중치가 주어진 인자를 사용하여 배달 이벤트 및 타임 스탬프를 처리하기 위한 공정(500)을 도해 설명하고 예시한다. 단계(502)에서, 주문에 대응하는 이벤트의 타임 스탬프가 접수된다. 다양한 실시예에서, 주문은 고객에 의해 고객 장치로 발주된 주문이다. 일부 실시예에서, 이벤트는 도2를 참조하여 기술된 어느 하나의 이벤트이며, 또한 도4a~4c를 참조하여 기술된 바와 같이 접수된다.
단계(504)에서, 타임 스탬프는 대응하는 예측 이벤트 모델 안으로 입력된다. 일부 실시예에서, 신경 네트워크가 특정 주문에 대해 추산 도착 시간(ETA)을 산출하도록 실행된다. 그러한 시스템은 일반적으로 작업-특정 프로그래밍 없이, 정확한 ETA 예측을 산출하는 것과 같은, 예시를 숙고함으로써 작업을 하기 위해 학습한다 (또는 점진적으로 작업을 개선한다). 일부 실시예에서, 신경 네트워크는 이벤트와 연합된 타임 스탬프를 입력하고 하나 이상의 그 후의 배달 이벤트에 대한 예측ETA를 산출하도록 예측 모델을 제공한다.
일부 실시예에서, 신경 네트워크는 다수의 서브 네트워크를 포함하며, 그 각각은 계속되는 배달 이벤트들 사이의 특정한 시간 간격에 대해 추산된 시간 길이를 산출하기 위한 예측하는 이벤트 모델로서 기능한다. 여기에서 사용된 바와 같이, 용어 "서브 네트워크" 및 "이벤트 모델"은 달리 언급되는 바 없는 한, 교체할 수 있도록 사용된다. 일부 실시예에서, 도2에서 도해 설명된 이벤트들과 같이 이벤트 사이의 각각의 간격은 서브 네트워크와 연합된다. 달리 말하면, 특정한 예측 이벤트 모델은 도2에서 나타낸 바와 같이, 하나의 이벤트와 다음까지 사이의 지속 시간을 묘사한다.
단계(504)에서, 주문에 대응하는 배달 매개 변수가 접수된다. 배달 매개 변수는 하나 이상의 탐지된 이벤트 사이의 시간 길이에 영향을 주는 여러가지 요인 또는 측정치를 포함한다. 다양한 실시예에서, 배달 매개 변수는 시간, 날짜, 교통량, 날씨, 과거의 배송자 능력, 및 시장의 크기를 포함한다. 배달 매개 변수는 접수된 주문 수, 주문 당 물품 수, 주문 내 접시 형태, 주문당의 소계, 과거의 레스토랑 데이터를 더 포함한다. 다양한 실시예에서, 여러가지 다른 매개 변수들이 신경 네트워크 내에서 실행된다.
단계(508)에서, 배달 매개 변수는 가중치가 주어진 인자로서 대응하는 예측 이벤트 모델 안으로 입력된다. 다양한 실시예에서, 신경 네트워크는 여러가지 매개 변수를 연속되는 이벤트 사이의 시간 지속 상의 특정한 효과와 연관시키도록 훈련된다. 신경 네트워크는 가중치가 주어진 요인을 생성하도록 그러한 매개 변수에 가중치를 할당한다. 그러한 가중치는 실제의 도착 시간에 기초하여 조정된다.
예를 들면, 어떤 날짜들은 역사적으로 바쁜 날들로 알려져 있는 휴일로 될 수 있다. 그래서, 어떤 휴일들은 증가된 교통량 또는 증가된 발주 주문량과 관련될 수 있다. 게다가, 날짜의 어떤 시간대는 러시 아워 동안과 같은 혼잡한 교통량과 연합될 수 있다. 일부 실시예에서, 날짜의 시간은 계속하여 실-시간으로 업데이트 되고 신경 네트워크 안으로 입력되는 매개 변수이다.
일부 실시예에서, 교통 정보는 실-시간으로 탐지된다. 일부 실시예에서, 교통 정보는 제3의 앱에 의해 탐지될 수 있다. 일부 실시예에서, 교통 데이터는 실-시간 업데이트 되며, 또는 거의 실-시간으로 항상 업데이트 된다.
날씨에 대응하는 매개 변수는 또한 교통량 또는 주문 영향력을 알린다. 예를 들면, 험악한 날씨는 위험한 조건에 기인하는 교통 정체와 연관된다. 험악한 날씨는 또한 고객들이 실내에 머물기를 더 좋아하기 때문에 더 많은 발주된 주문과 연관된다. 날씨 매개 변수는 또는 특정한 식품 형태에 대한 요구의 변화에 대응한다.
일부 실시예에서, 시장 크기는 어떤 시장에서 제품이나 서비스의 잠재적인 고객, 배송자, 및/또는 판매자인 개인들의 수에 대응한다. 여기에서 사용된 바와 같이, 용어 "시장"은 특정한 제품 형태와 연합된 특정한 판매자이거나 또는 판매자 그룹을 의미하도록 사용된다. 그러나, 일부 실시예에서, 용어 시장은 온-디맨드 로지스틱스 플랫폼의 부분인 주어진 내역 내의 전체 고객, 배송자, 및/또는 판매자에게 참조시킨다. 신경 네트워크는 특정한 시장 크기를 주문품 준비 또는 배달에 대한 시간상의 어떤 차이와 연관된 것으로 간주한다. 시장 크기는 또한 새로운 및 더 성숙한 시장에 대응한다. 예를 들면, 더 새로운 시장은 더 긴 주문품 준비 시간과 관련되며, 한편 더 성숙한 시장은 더 빠른 주문품 준비 시간과 관련된다.
다른 입력 매개 변수는 미해결 배송자 수에 대한 미해결 주문 수의 비율에 대응하는 플리트(fleet) 하중 인자를 포함한다. 일부 실시예에서, 플리트 하중 인자의 더 높은 이 비율은 충분하지 않은 배송자 수에 대응하며, 그러므로 주문품 준비 완료(218) 후의 이벤트에 대해 시간 지속이 더 길어진다.
일부 실시예에서, 주문 내의 품목 형태는 매개 변수로서 입력된다. 예를 들면, 어떤 접시는 특별한 준비 시간과 관련된다. 일부 실시예에서, 주문의 크기는 예측하는 매개 변수로서 입력된다. 일부 실시예에서, 주문 내에서 더 많은 품목은 더 긴 준비 시간에 연관된다. 일부 실시예에서, 주문의 중간 합계 가격은 또한 주문 크기 또는 주문품 준비 시간에 대응한다. 예를 들면, 더 큰 중간 합계는 주문 내에서 더 큰 품목량에 연관된다. 게다가, 더 비싼 품목은 준비에 있어 더 많은 내용물, 더 많은 어려움, 또는 더 많은 전문화로 인하여 만들기 위해 더 오래 걸린다.
일부 실시예에서, 신경 네트워크는 주어진 정해진 지역내에서 배송자용 배송자 스케쥴(211) 상에서 하나 이상의 이벤트 사이의 시간 지속에 대한 평균률을 결정한다. 유사하게 일부 실시예에서, 특정 판매자용 판매자 스케쥴(210) 상에서 하나 이상의 이벤트 사이의 시간 지속에 대한 평균률을 결정한다. 그러나, 과거의 작업은 또한 매개 변수로서 입력된다.
배송자의 과거의 작업은 특정 배송자용 배송자 스케쥴(211) 상에서 하나 이상의 이벤트 사이의 이전의 시간 지속의 기록이다. 이 기록은 주어진 지역 내에서 모든 배송자용 배송자 스케쥴(211) 상에서 하나 이상의 이벤트 사이의 평균 시간 지속과 비교된다. 신경 네트워크는 예측을 그것에 알맞게 조정하도록 특정 상태 변수를 주어진 배송자에게 배정하기 위해 이 인자를 사용한다. 예를 들면, 주어진 배송자는 주어진 지역에 대한 평균과 비교하여, 판매자에 주차함(224)과 판매자에 도착(226) 사이와 같은 특정한 이벤트 사이의 더 짧은 시간 지속을 가진다. 신경 네트워크는 이 특정 배송자에 대해 알맞게 판매자에 도착(226)에 대한 ETA 예측을 조정한다.
특정 판매자의 과거의 작업은 또한 입력된다. 이것은 그 특정 판매자용 판매자 스케쥴(210) 상에서 이벤트 사이의 평균 시간 지속을 포함한다. 신경 네트워크는 예측을 그것에 알맞게 조정하도록 특정 상태 변수를 주어진 판매자에게 배정하기 위해 이 인자를 사용한다. 예를 들면, 특정 품목을 준비하기 위한 특정 판매자의 평균 시간은 탐지되며 결정된다. 예와 같이, 일부 판매자는 단계(411)에서와 같이 주문 접수의 확인을 전송하지 않고, 그러나 대신에 즉시 주문품의 준비를 시작한다. 주문품이 완전하게 되자마자, 판매자는 그리고나서 주문 접수의 확인 및 주문 완성의 확인을 동시에 전송한다. 신경 네트워크는 배달 발송 시스템이 최상의 시간에 배송자를 적합하게 정하도록 ETA 예측을 그것에 알맞게 결정한다.
일부 실시예에서, 과거의 작업 매개 변수는 정해진 시간량을 위한 총 유니트로 구성된다. 예를 들면, 이전의 30일간 증대에 대한 배송자 또는 판매자의 과거 작업은 더 높은 가중치가 주어진다. 일부 실시예에서, 이전 30일 전에 일어난 일자에 대한 과거 작업 매개 변수는 또한 더 낮은 가중치로 입력된다. 일부 실시예에서, 이전 30일 전에 일어난 일자에 대한 과거 작업 매개 변수는 폐기된다.
다양한 실시예에서, 특정한 매개 변수에 할당된 가중치는 다른 매개 변수들에 기초하여 업데이트 된다. 예를 들면, 교통량에 주어진 가중치는 최고 혼잡시간으로부터 혼잡시간 후까지 시간 변화에 따라 실-시간으로 조정된다. 일부 실시예에서, 하나 이상의 매개 변수는 신경 네트워크가 특정 상태 변수를 유지하도록 하게 한다.
단계(510)에서, 업데이트된 예측된 추산 도착 시간(ETA)이 산출된다. 매개 변수 및 타임 스탬프는 서브 네트워크의 다양한 계산층으로 입력된다. 일부 실시예에서, 그러한 계산층은 선형 층, 소용돌이 층, 비소용돌이(deconvolution) 층, 잔류 층, 2차 층을 포함하나, 한정하지는 않는다. 일부 실시예에서, 이벤트의 타임스탬프, 또는 이벤트에 대한 실제 도착 시간(ATA)은 주문품 배달(232)과 같은 주문품의 배달에 대한 예측된 ETA를 출력하도록 예측하는 모델의 하나 이상의 계산층으로 입력된다.
다른 실시예에서, 이벤트의 ATA는 그 후의 배달 이벤트에 대한 예측된 ETA를 출력하도록 하나 이상의 계산층으로 입력된다. 그리고나서, 출력된 예측된 ETA는 추가적인 배달 이벤트에 대한 추가적인 예측된 ETA 들을 결정하도록 다른 예측하는 모델의 추가적인 계산층으로 입력된다. 일부 실시예에서, 서브 네트워크 내의 각각의 계산층은 하나 이상의 매개 변수에 대응한다.
일부 실시예에서, 예측된 ETA는 스케쥴(210) 및 (211) 상의 각각의 이벤트에 대해 산출된다. 일부 실시예에서, 하나 이상의 이벤트에 대한 예측된 ETA는 고객 장치, 판매자 장치, 및 배송자 장치와 같은 다양한 클라이언트 장치에 전송된다. 예측된 ETA는 배달을 위해 배송자 및 판매자에게 주문을 배정하기 위해 배달 발송 시스템에 대해 더 사용된다.
이 접근은 배달 공정을 주문 프로토콜, 식품 준비 속도 등과 같은 판매자의 유일한 특징에 의존하기 때문에 더욱 예측할 수 있는 별개의 배달 이벤트로 분할한다. 더욱이, 개시된 시스템은 다양한 앱과 장치를 통하여 각각의 배달 이벤트에 대해 타임 스탬프 데이터를 받는 향상된 능력을 제공한다. 그리하여, 배달 동안 일어나는 이벤트에 기초하여 실시간 업데이트를 ETA 예측에 포함시키기 위한 자연스러운 방법이 있다.
단계(512)에서, 추가적인 이벤트가 배달에서 존재하는 지가 결정된다. 만약 주문품 배달(232)과 같은 마지막 이벤트에 대한 ATA가 접수되면, 그 때에 공정(500)은 종료된다. 그러나, 만약 추가적인 이벤트가 존재하면, 그 때에 공정(500)은 계속되는 이벤트의 타임 스탬프를 받도록 단계(502)으로 돌아간다. 계속되는 이벤트의 타임 스탬프는 단계(514)에서 계속되는 이벤트의 타임 스탬프와 예측된 ETA를 비교함으로써 그 자신을 교육하도록 신경 네트워크에 의해 사용된다.
단계(514)에서, 대응하는 이벤트 모델은 업데이트 된다. 일부 실시예에서, 프로세서는 복수개의 가중치가 주어진 인자를 사용하여 계속하여 예측하는 이벤트 모델을 교육함으로써 복수개의 ETA 시간 지속을 동적으로 산출한다. 다양한 실시예에서, 가중치는 또한 도4a~4c에서 기술된 바와 같이 접수된 다양한 배달 이벤트 업데이트의 ATA에 대응하는 타임 스탬프에 기초하여 조정된다. 이벤트 업데이트가 접수될 때, 신경 네트워크는 ATA를 특정한 이벤트에 대한 예측된 ETA와 비교하고 차이점을 분석한다. 비교에 기초하여 신경 네트워크는 예측된 ETA와 이벤트에 대해 접수된 ATA 사이의 어떠한 차이점을 밝히도록 특정한 매개 변수에 주어진 가중치를 업데이트한다. 그와 같이, 동적 ETA 예측 시스템의 신경 네트워크 내의 예측하는 모델은 작동 동안 계속하여 교육된다.
도6은 하나 이상의 실시예에 따라서, 예측 ETA 업데이트의 실행에 대한 공정 흐름 예를 도해 설명한다. 앞서 기술한 바와 같이, 개시된 시스템은 레스토랑에 의한 주문의 완료, 배송자에 의한 주문품의 픽업, 및 고객에게 부패하기 쉬운 물품의 배달의 완료를 포함하는 하나 이상의 배달 이벤트를 업데이트한다. 그러한 예측 ETA 업데이트는 단계(601)에서 다양한 클라이언트 장치에 전송된다. 도6에 나타낸 바와 같이, 그러한 클라이언트 장치는 고객 장치(620), 배송자 장치(622), 및 판매자 장치(624)를 포함한다. 클라이언트 장치(620),(622), 및 (624)는 도3에 나타낸 바와 같은, 클라이언트 장치(302~308)의 어느 하나이다.
예를 들면, 단계(603)에서, 주문품 배달(232)에 대한 예측된 ETA는 고객 장치(620)에 제공된다. 다른 예와 같이, 단계(605)에서, 주문품 준비완료(218)에 대한 예측된 ETA는 배송자에게 픽업을 위해 준비되어 있다는 것을 알리기 위해 배송자 장치(624)에 제공된다. 또 다른 예와 같이, 단계(607)에서, 판매자에 도착(226)에 대한 예측된 ETA는 판매자에게 배송자가 도착하는 것이 예상될 때를 알리기 위해 판매자 장치(624)에 제공된다. 다양한 다른 이벤트에 대한 하나 이상의 예측된 ETA 업데이트는 클라이언트 장치(620), (622), 및 (624)의 어느 하나에 전송된다.
개시된 시스템은 또한 배달이 배송자에게 언제 제안되어야 하는지에 대해 정보에 근거한 결정을 내리도록 타임 스탬프를 구비한 배달 발송 시스템을 제공한다. 일부 실시예에서, 예측된 ETA 업데이트는 단계(611)에서 배달 발송 시스템에 전송된다. 그러한 배달 발송 시스템은 배송자에게 복수개의 접수된 주문을 제안하도록 ETA 업데이트를 페어링 알고리즘 안으로 입력한다. 일부 실시예에서, 배달 발송 시스템은 다양한 이벤트에 대한 예측된 ETA에 기초하여 계속되는 주문을 배송자에게 제안한다. 예를 들면, 계속되는 주문은 주문품 배달(232)에 대해 예측된 ETA에 기초하여 현재 고객 위치 도중에 있는 배송자에게 제안된다. 일부 실시예에서, 게속되는 주문의 페어링은 또한 계속되는 주문에 대응하는 판매자까지의 배송자의 거리 및 이동시간 매개변수 뿐 아니라, 계속되는 주문의 주문품 준비완료 이벤트(218)의 예측된 ETA에 달려 있다. 다양한 실시예에서, 단계(613)에서, 주문 페어링은 고객에게 동일성 증명, 접촉 정보 등과 같은 배송자에게 대응하는 정보를 알리기 위해 고객장치(620)에 전송된다. 일부 실시예에서, 주문 페어링은 배송자에게 위치, 접촉 정보, 주문 정보 등과 같은 판매자 및/또는 고객에게 대응하는 정보를 알리기 위해 배송자 장치(622)에 전송된다. 일부 실시예에서, 주문 페어링은 판매자에게 접촉 정보를 포함하는 고객 및/또는 배송자에게 대응하는 정보를 알리기 위해 판매자 장치(624)에 전송된다.
일부 실시예에서, 배달 발송 시스템은 다수의 주문을 같은 배송자에게 제안한다. 예를 들면, 정해진 거리 내에 있는 고객 위치로 배달되는 다수의 주문은 배달을 위한 이동 경로를 가장 효과적으로 활용하도록 같은 배송자에게 제안된다. 일부 실시예에서, 그러한 다수의 주문의 주문품 준비완료 이벤트(218)에 대한 예측된 ETA는 단일 배송자가 다수의 주문을 픽업하기 위한 기회를 제안받아야 하는지를 결정하도록 입력된다.
게다가, 예측된 이벤트 타임 스탬프와 실제의 타임 스탬프를 비교함으로써 배달의 어느 부분이 잘못되어 갔는지를 결정하도록 문제점을 정확히 지적하는 방법을 제공한다. 일부 실시예에서, 다수의 ETA 시간 지속은 예측된 이벤트 타임 스탬프와 실제의 타임 스탬프를 비교함으로써 문제점을 단계적으로 확대시키고 배달의 어느 부분이 잘못되어 갔는지를 결정하기 위해 사용된다. 예를 들면, 배달에서 이벤트의 예측된 ETA와 ATA 사이의 어떤 큰 차이는 지연의 중대한 원인을 식별할 뿐 아니라 배달 이벤트 사이에서 지연이 어디에서 일어났는지를 정확히 지적하도록 식별된다. 예를 들면, 특정한 배달에서, 예측된 ETA와 ATA 사이의 가장 큰 차이는 판매자에 주차됨 이벤트(224)에서 식별된다. 만약 그러한 차이의 다수의 경우가 다수의 배송자에게 일어난다면, 원인은 그러한 판매자 가까이에 주차구역의 부족으로 식별된다. 식별되자마자, 이 문제점은 배달을 더 완벽하게 활용하도록 어드레스된다.
신경 네트워크를 사용하여 동적 ETA 예측 업데이트를 산출하는 다양한 다른 방법들은 2017년 10월 30일자로 한(Han) 등에 의해 출원되고 여기에서 전체적으로 모든 목적을 위해 레퍼런스로 합체되는 것인 미국 특허출원번호 15/798,207(발명의 명칭: 동적 추산 도착 시간 예측 업데이트용 시스템)에 기술되어 있다.
개시된 시스템 및 방법은 또한 부패하기 쉬운 물품에 대한 주문품의 픽업 및 배달을 위해 배송자에게 최상의 경로를 페어링하는 산출된 ETA 예측 업데이트 뿐 아니라 다양한 클라이언트 장치에 의해 서버로 전송된 정보를 이용한다. 도7을 참조하여, 최상의 배달 경로를 페어링하는 공정(700)을 나타낸다. 단계(702)에서, 주어진 경우 내에서 주문 요구사항을 수정하기가 집합된다. 일부 실시예에서, 제1 필터된 데이터세트가 서버에서 접수된다. 제1 데이터세트는 판매자로부터 부패하기 쉬운 물품의 실-시간 배달을 위해 생성된 주문에 대응한다. 에를 들면, 시스템(300)에서 다양한 고객에 의해 접수된 주문은 수집되고 배달 발송 시스템으로 전송된다.
제1 데이터세트는 시간 한계 및 확인 이정표에 의해 필터된다. 확인 이정표는 대응하는 판매자에 의한 대응하는 주문의 접수의 확인에 해당한다. 예를 들면, 주문의 제1 필터된 데이터세트는 오직 대응하는 주문확인 이벤트(216)를 구비한 주문들이 포함되는 것과 같이 필터된다. 일부 실시예에서, 시간 한계는 준비의 완료까지 예측된 시간 간격에 해당한다. 예를 들면, 앞서 위에서 기술된 방법 및 시스템에 의해 산출된 다양한 ETA 예측은 제1 데이터세트 내에서 각각의 확인된 주문을 위해 주문품 준비완료(218) 이벤트를 추산하도록 사용된다.
각각의 주문품이 준비완료될 것(218)이라는 추산된 시간을 사용하여, 예측된 시간 간격은 정해진 한계보다 더 큰 준비 시간을 구비하여 결정되고 주문품을 필터해 내도록 사용된다. 따라서, 제1 필터된 데이터세트는 각각 판매자에 의해 확인되었으며 정해진 한계보다 더 짧은 추산된 준비 시간을 포함하는 한 세트의 주문을 포함한다. 그러나, 다른 실시예에서, 추가된, 또는 다른 매개변수는 제1 필터된 데이터세트에서 주문을 필터하기 위해 사용된다.
단계(704)에서, 활동가능한 배송자가 식별된다. 일부 실시예에서, 제2 필터된 데이터세트는 서버에서 접수되는 바, 그것은 다수의 활동가능한 배송자에 대응한다. 제2 필터된 데이터세트는 유효한 상태 한계에 의해 필터된다. 이 유효한 상태 한계는 온라인에 있고 및 배달 제안을 적극적으로 수락하는 배송자에 대응한다. 예를 들면, 배송자는 배송자가 주문을 제안받도록 준비되어 있다는 것을 나타내는 대응하는 배송자 장치 상의 앱에 서명하거나 로그온한다. 온라인 상에 있지 않거나 배달 배정을 적극적으로 수락하지 않는 다른 배송자들은 제2 데이터세트 밖으로 필터된다.
다양한 실시예에서, 배송자는 또한 지리적 위치에 의해 필터된다. 예를 들면, 배송자 장치로부터 수신된 GPS 데이터는 각각의 배송자를 위치시키고 정해진 활성 영역의 밖에 위치되고 제2 데이터세트 밖으로 필터된 배송자들을 필터해내기 위해 사용된다. 일부 실시예에서, 지리적 영역은 활성 영역을 규정하는 주어진 반경으로 고정된다. 일부 실시예에서, 활성 영역은 높은 주문량의 시간 동안 더 큰 영역을 포함하도록 늘어난다. 예를 들면, 활성 영역은 높은 주문량 동안 제2 데이터세트에서의 요구에 맞추기 위해 추가적인 배송자를 포함하도록 영역으로 두배가 된다.
다른 실시예에서, 활성 영역은 제1 필터된 데이터세트에 포함된 주문의 판매자 위치에 대응한다. 예를 들면, 복수의 영역은 집합된 주문 요구량에 대응하는 각각의 판매자 주위의 정해진 반경을 사용하여 결정된다. 그리고나서 활성 영역은 모든 이들 영역으로부터 만들어진다. 일부 실시예에서, 활성 영역은 연결되지 않거나 또는 복수의 분리된 서브-영역을 포함한다.
또 다른 실시예에서, 활성 영역은 활동가능한 배송자들의 집중에 기초하여 동적으로 변화될 수 있다. 에를 들면, 활성 영역은 생성된 주문에 대해 활성 영역 내에서 활동가능한 배송자의 바람직한 비율은 유지되도록 활동 중인 배송자를 포함하도록 확장되거나 축소된다. 일부 실시예에서, 최소 임계값은 활동가능한 배송자에 대해 생성된 주문의 비율로 주어진다. 일부 실시예에서, 활성 영역은 주어진 시간에서 주문의 수에 기초하여 수정된다. 예를 들면, 활성 영역은 단계(702)에서 생성되고 제1 필터된 데이터세트 내에 포함된 추가적인 또는 더 적은 주문을 포함하도록 확장되거나 축소된다.
일부 실시예에서, 제1 필터된 데이터세트 내의 활동 중인 배송자는 활성 영역을 규정하는 지오해시 좌표 시스템을 사용하는 지리적 위치에 의해 필터된다. 지오해시 좌표 시스템에서, 위도 및 경도 좌표는 지오해시라고 알려져 있는 특수한 코드로 그들을 서로 연관시킴으로써 지오코드된다. 그러므로, 지오해시는 더 긴 문자열로 얻어진 더 큰 정밀함을 가지는 짧은 문자숫자 문자열을 사용하여 위치(세계 어느 곳이나)를 표현하는 편리한 방법으로서 도움이 된다. 일부 실시예에서, 지오해시는 32 서브 셀 중의 하나를 식별하기 위한 각각의 특별한 문자로서 직사각형 셀을 식별한다. 지오해시는 각 5 비트가 하나의 문자로 변환되어 문자숫자로 되는 문자(32 비트 엔코딩된)로서 표현된다. 다른 실시예에서, 엔코딩의 다른 형식이 사용된다.
일부 실시예에서, 활성 영역은 지오해시에 의해 표현된다. 일부 실시예에서, 지오해시는 제1 필터된 데이터세트 내의 주문에 대응하는 하나 이상의 판매자가 그 안에 위치되는 직사각형 셀을 나타낸다. 일부 실시예에서, 복수의 더 작은 지오해시는 직사각형 셀이 활성 영역을 나타내기 위해 사용된다. 일부 실시예에서, 지오해시된 직사각형 셀 내에 위치된 모든 활동 중인 배송자들은 제2 필터된 데이터세트에 포함된다.
만약 생성된 주문에 대해 활동가능한 배송자의 바람직한 비율이 너무 낮으면, 지오해시의 문자숫자로 되는 문자는 제2 필터된 데이터세트에 포함되는 활동 중인 배송자들을 잠재적으로 더 많이 획득하기 위해 더 큰 활성 영역을 생성하도록 짧아진다. 지오해시는 활동 중인 배송자의 적당량이 활성 영역 내에 포함될 때까지 복수 번 짧아진다.
역으로, 만약 생성된 주문에 대해 활동가능한 배송자의 바람직한 비율이 너무 높으면, 지오해시는 활성 영역을 판매자 위치 둘레의 더 작은 영역으로 축소시키도록 길어진다. 지오해시는 활동 중인 배송자의 적당량이 활성 영역 내에 포함될 때까지 복수 번 길어진다. 그러나, 다른 실시예에서, 만약 생성된 주문에 대해 활동가능한 배송자의 바람직한 비율이 제2 필터된 데이터세트 내의 활동 중인 배송자의 나머지를 책임지기에 너무 높으면 아무 행동도 취해 지지 않는다.
이것은 지구적 영역이 배송자의 요구 또는 집중에 기초하여 쉽게 확장되거나 또는 축소되도록 허용한다. 그러한 지오해시된 좌표 설정하기는 단계(708)와 도9를 참조하여 더 기술되는 바와 같이, 주문 요구의 동적 영역 그룹핑을 위해 제1 데이터세트 및 제2 데이터세트의 통합을 미세 분류하도록 실행된다.
단계(706)에서, 바람직한 데이터 페어링 세트가 제1 및 제2 필터된 데이터세트로부터 생성된다. 다양한 실시예에서, 바람직한 데이터 페어링은 제1 데이터세트로부터 배송자를 및 제2 데이터세트로부터 주문 요구를 포함한다. 일부 실시예에서, 바람직한 데이터 페어링 세트를 생성하기는 차량 유형, 차량 크기, 주문품 크기, 식품 유형 등을 포함하는 교육된 인자들에 기초하여 계획된 시간 값 및 예상된 시간 값을 자동적으로 예측하도록 제1 및 제2 필터된 데이터세트를 교육된 신경 네트워크 내로 입력하는 것을 포함한다. 일부 실시예에서, 신경 네트워크는 위에서 기술한 바와 같은 ETA 예측 업데이트를 생성하기 위해 실행된 신경 네트워크이다.
제1 및 제2 필터된 데이터세트로부터 바람직한 데이터 페어링 세트를 생성하기는 단계(708)에서, 정해진 인자들에 기초하여 배송자 및 주문 요구를 미세 분류하기를 포함한다. 일부 실시예에서, 제1 데이터세트와 제2 데이터세트의 통합은 복수의 분류 그룹으로 미세 분류된다. 미세 분류는 제1 및 제2 데이터세트의 지리적 데이터 관련 데이터 값에 적어도 부분적으로 기초된다.
일부 실시예에서, 지리적 데이터 관련 데이터 값은 물리적 위치 또는 영역의 위도 및 경도를 나타내는 한 쌍의 수치 값을 포함할 수 있는 지리적 좌표의 인스턴스를 지칭할 수 있다. 또한, "지리적 데이터 항목" 및 "지리적 데이터 관련 데이터 값"이라는 용어는 상호 교환적으로 사용될 수 있으며, 여러 배송자, 판매자 및/또는 고객의 지리적 위치를 식별할 수 있는, 네트워크 트래픽에서 발견되는 지리적 좌표의 인스턴스를 지칭할 수 있다.
복수의 지리적 데이터 관련 데이터 값은 도 3에 도시된 바와 같이 클라이언트 장치와 관련된 복수의 네트워크 트래픽 흐름으로부터 추출될 수 있다. 복수의 네트워크 트래픽 흐름은 수동적인 네트워크 트래픽의 관찰을 포함할 수 있다. 지리적 데이터 관련 데이터 값은 대응하는 전송 클라이언트 장치의 위치와 관련될 수 있다.
지리적 데이터 관련 데이터 값은 배송자의 실시간 위치와 주문에 대응하는 픽업 위치 간의 지리적 근접성, 지역적 경계, 수요와 공급 조건, 및 과거 배달 데이터 중 하나 이상을 추가로 포함할 수 있다.
따라서, 배송자의 현재 위치와 판매자 위치의 근접성은 제1 및 제2 데이터 세트의 주문들과 활동중인 배송자들을 분류 그룹으로 나누는데 사용될 수 있다. 예를 들어, 제1 데이터 세트에 배치된 주문에 대응하는 판매자 위치는 하위 영역별로 그룹화 될 수 있다. 일부 실시예에서, 하위 영역은 임의로 선택될 수 있다. 그러나, 다른 실시예에서, 주문 및 배달은 고속도로, 강, 이웃 경계 등의 지역 경계와 같은 다른 요인에 의해 분류될 수 있다. 예를 들어, 생성된 주문에 해당하는 판매자는 도로로 정의된 하위 지역으로 분류되므로, 이 하위 영역들이 인식된 이웃에 대응할 수 있다.
데이터 세트를 분류하는 다른 요인에는 특정 지역에 대한 친숙도를 나타내는 과거 배달 데이터를 포함한다. 예를 들어, 다른 배송자가 주문품 픽업 위치와 지리적으로 더 근접한 경우에도, 특정 지역이나 판매자로부터 주문품을 픽업했던 배송자가 일련의 주문으로 분류될 수 있다.
다양한 실시예에서, 제1 및 제2 데이터 세트는 공급 및 수요 조건을 이용하여 분류될 수 있다. 지리적 데이터 항목은 전술한 바와 같이 지오해시를 포함할 수 있다. 지오해시를 사용하여 미세 분류를 행하여 그룹을 분류할 수 있다. 예를 들어, 하위 영역은 특정 길이의 지오해시 값에 대응하는 직사각형 셀에 의해 정의될 수 있다. 제2 데이터 세트에서 생성된 주문은 대응하는 판매자가 위치한 지오해시 영역에 기초하여 그룹으로 분류될 수 있다.
직사각형 셀의 크기는 미리 결정될 수 있다. 그러나, 일부 실시예에서, 다양한 크기의 직사각형 셀이 상이한 영역에서 사용될 수 있다. 예를 들어, 번잡한 위치일수록 또는 레스토랑 및 그 외 판매자가 고밀도로 있는 위치에서는, 더 작은 직사각형 셀이 더 긴 지오해시 문자열로 정의할 수 있다.
일부 실시예에서, 제2 필터링 된 데이터 세트의 각각의 활동중인 배송자는 서브-영역을 정의하는 지오해시와 동일한 길이의 지오해시에 의해 정의된 위치를 포함할 수 있다. 도 9을 참조하면, 본 개시의 다양한 실시 예로 구현 될 수 있는 예시적인 지오해시 좌표 지도(900)가 도시되어 있다. 지도(900)는 도로(950, 952, 954 및 956)을 포함하는 지리적 영역을 표시한다. 활동중인 배송자의 위치가 또한 배송자(920-928)의 위치를 포함하여, 원으로 도 9에 도시되어 있다. 지리적 영역은 직사각형 영역(901 내지 909)으로 분할될 수 있고, 이들 각각은 특정한 숫자의 정밀도로 지오해쉬 값으로 정의된다. 이러한 문자는 이진 코드, 영숫자 32 비트 코드 또는 기타 적절한 코드일 수 있다. 예를 들어, 도 9의 각각의 직사각형 영역은 25개 문자의 길이를 갖는 이진 지오해시 코드에 대응할 수 있으며, 이는 대략 4.89 킬로미터 x 4.89 킬로미터의 영역을 정의할 수 있다.
일 예에서, 직사각형(905 및 908)은 24개 문자의 길이를 갖는 이진 지오해시 코드로 코딩 된 음영의 서브 영역(911)에 대응할 수 있다. 하위 영역(911)과 동일한 지오해시 값을 포함하는, 제1 데이터세트의 활동중인 배송자와 제2 데이터 세트의 생성된 주문에 대응하는 판매자는 동일한 그룹으로 분류 될 수 있다. 도시된 바와 같이, 배송자(922, 923, 926, 927 및 928)가 이 그룹으로 분류된다.
그러나, 활동 가능한 배송자의 수가 분류 그룹 내의 생성된 주문 수에 비해 적은 경우, 정의된 영역을 확대하여 분류된 그룹에 추가의 활동중인 배송자를 포함시키도록 배송자에 대해 더 짧은 지오해쉬 스트링이 사용될 수 있다. 예를 들어, 각 그룹에 대해, 완성된 주문품을 픽업하기에 충분한 배송자가 있는 것을 확실하게 하기 위해서는 각 그룹에 대해서 4 개의 주문에 대해 5 명의 배송자라는 미리 정해진 최소 비율이 바람직할 수 있다. 이 분류 그룹에 6개의 주문이 있는 경우, 제한 조건을 충족시키기 위해 더 많은 배송자가 필요하다. 직사각형(904) 내의 배송자(924 및 925) 및/또는 직사각형(907) 내의 배송자(920 및 921)과 같이, 인접한 지오해시 지역 내의 배송자가 이 분류 그룹에 포함될 수 있다.
대조적으로, 일부 실시예에서, 분류 그룹에서 생성된 주문에 대한 활동중인 배송자의 비율이 너무 높은 경우, 활동중인 배송자에 해당하는 지오해쉬 문자열을 길게 하여, 분류 그룹에 포함된 활동중인 배송자의 수를 줄인다. 예를 들어, 분류 그룹은 직사각형(905) 내의 배송자만을 포함시켜 배송자(926, 927 및 928)만이 포함되게 할 수 있다.
그리고 나서, 각각의 분류 그룹에 대해, 단계(710)에서 각각의 요청에 대해 각 배송자의 가능한 경로가 생성된다. 각각의 분류 그룹 내에서, 가능한 데이터 페어링은 제1 데이터 세트로부터의 제1 데이터 값과 제2 데이터 세트로부터의 제2 데이터 값을 식별한다. 제1 데이터 값은 배송자과 그 외 차량 유형, 위치, 과거 실적 등과 같은 관련 배송자 정보에 대응할 수 있다. 제2 데이터 세트로부터의 제2 데이터 값은 생성된 주문과 그 외 주문 항목, 주문 소계, 고객 신원, 판매자 식원, 주문 시간 등과 같은 주문 관련 정보에 대응할 수 있다.
분류 그룹 내의 배송자는 해당 그룹에서 생성된 주문과 페어링을 이룬다. 일부 실시예에서, 가능한 데이터 페이렁을 필터링하여 실행 가능한 세트로부터 실행 불가능한 페어링을 제거한다. 실행 불가능한 페어링들은 운송 모드, 차량 유형, 차량 크기, 주문 크기 및 식품 유형, 주문된 품목 및 그 외 데이터 값과 관련된 정보와 같이, 다양한 요소를 제약 조건으로 사용하여 결정될 수 있다. 예를 들어, 주문 품목으로 특대 피자를 포함하는 주문은 자전거를 운송 수단으로 사용하는 배송자와 페어링을 이루는 것이 불가능하다. 다른 예로서, 온도에 민감한 물품의 주문은 냉장 능력을 가진 배송자하고만 페어링을 이룰 수 있다. 일부 실시예들에서, 모든 실행 가능한 페어링들이 병렬로 생성된다. 실행 불가능한 페어링은 차량 유형, 차량 크기, 주문 크기 및 식품 유형 중 하나 이상을 포함하는 추가 제약에 기초하여 결정될 수 있다.
일부 실시예들에서, 각각의 가능한 페어링과 관련된 가능한 경로들이 생성된다. 일부 실시 예에서, 경로는 지도상의 도로 거리에 기초하여 생성된다. 이러한 경로는 네트워크(300)상의 로컬 데이터베이스 또는 글로벌 데이터베이스에 저장된 매핑 정보를 사용하여 생성될 수 있다. 일부 실시 예들에서, 경로는 단순히 배송자 위치로부터 주문 위치까지 직선 거리일 수 있다. 일부 실시 예에서, 모든 실행 가능한 페어링에 대한 경로는 병렬로 생성된다.
단계(708)에서 데이터세트를 지능적으로 미세 분류하고 단계(710)에서 경로 생성을 병렬화함으로써, 보다 정확한 시간 예측과 보다 효율적인 경로 페어링을 포함하는 고품질의 결과를 매우 짧은 실행 시간 (20 초 정도이거나 더 빠르게) 내에 성취할 있다. 이를 통해 페어링되지 않은 배송자와 주문을 보다 자주 다시 최적화 할 수 있을 뿐만 아니라, 계산 실행 시간으로 인한 배송 지연을 최소화하거나 줄일 수 있다.
단계(712)에서, 각각의 예측 경로가 점수화된다. 일부 실시예들에서, 점수는 각각의 가능한 페어링에 대해 계산된다. 다양한 실시예에서, 특정 경로의 점수는 경로 효율성, 경로 우선 순위, 예상되는 경로의 지연, 경로의 신뢰성, 경로의 적합성 및 경로의 상태 영향을 포함하는, 하나 이상의 인자의 조합에 기초할 수 있다. 각각의 인자는 미리 결정된 변수에 기초하는 점수가 할당될 수 있다. 일부 실시예에서, 할당된 점수는 가중되거나 가중되지 않을 수 있다.
경로 효율성은 배송자가 생성된 경로를 따라 주문의 배달을 얼마나 빨리 완료할 수 있는지에 대응할 수 있다. 이는 실시간 운송 정보 및 기타 지역 데이터 항목뿐만 아니라, 과거 배달 실적 데이터를 기반으로 추정될 수 있다. 일부 실시예들에서, 차량 유형이 또한 고려될 수 있다. 예를 들어, 오토바이는 교통량이 많은 차선을 나누어 사용할 수 있기 때문에, 특정 경로에 대해에서는 오토바이 또는 스쿠터에 자동차보다 높은 점수가 할당될 수 있다.
경로 우선 순위는 주문품이 곧 픽업 준비가 되는지에 해당할 수 있다. 다시 말해, 경로 우선 순위는 그 주문에 대한 주문품 준비 완료 이벤트(218)의 추산 ETA에 대응할 수 있다. 전술한 바와 같이, 생성된 주문에 대한 주문품 준비 완료 이벤트(218)의 추산 ETA는 동적 ETA 추산 업데이트를 위한 시스템에 의해 생성될 수 있다. 일부 실시 예에서, 더 빠른 주문품 준비 완료 이벤트(218)를 갖는 주문에는 더 높은 점수가 할당된다.
예상되는 경로 지연은 경로에 의해 예상되는 예측 배달 시간과, 본 명세서에 기술된 동적 ETA 추산 업데이트를 위한 시스템에 의해 추산될 수 있는 배달 이벤트(232) 등의 추산 배달 시간 간의 시차에 해당 할 수 있다. 일부 실시예에서, 경로에 의해 예상되는 예측 배달 시간은 실시간 교통 정보 및 다른 지리적 데이터 항목에 기초하여 결정될 수 있다. 이는 또한 과거 배달 실적 데이터를 기반으로 결정될 수도 있다. 일부 실시예들에서, 예상되는 경로 배달 시간이 배달(232)을 위해 예측된 ETA보다 늦다면, 이 경로에는 더 낮은 점수가 할당될 수 있다. 이와 대조하여, 예상되는 경로 배달 시간이 배달(232)을 위해 추산된 ETA보다 빠르면, 경로에는 더 높은 점수가 할당될 수 있다. 일부 실시예들에서, 경로에 의해 예상되는 예측 배달 시간은 미리 결정된 시간 임계 값과 비교될 수 있다. 예상되는 배달 시간이 일정 시간 임계 값을 초과하면, 이 경로에는 0 점이 부여될 수 있다.
경로의 신뢰도는 경로를 따르는 각각의 지점에 대한 예측치에 대한 분산에 대응할 수 있다. 이것은 또한 배송자가 경로에 의해 예상되는 예측 배달 시간까지 배달을 완료할 확률에 대응할 수 있다. 일부 실시예들에서, 과거 경로 데이터는 경로의 신뢰성을 결정하기 위해 사용될 수 있다. 예를 들어, 특정 생성 경로가 하나 이상의 개별 경로 세그먼트를 포함하는 경우, 각각의 경로 세그먼트는 이전에 페어링된 경로와 추적 배송자 실적에 기초하는 과거 이동 기간을 포함할 수 있다. 각 세그먼트에 대한 이전의 이동 기간이 비교되어 표준 편차가 결정될 수 있다. 더 큰 표준 편차를 포함하는 더 많은 세그먼트의 경로가 신뢰할 수 없는 경로에 해당하여 더 낮은 점수가 주어진다.
경로의 적합성은 이 경로가 배송자에게 얼마나 적합하느냐에 대응할 수 있으며, 이는 차량 유형, 차량 용량, 과거 배달 실적 등에 기초할 수 있다. 경로의 상태 영향은 시스템에서 활동 가능한 배송자 및 생성된 주문과 관련하여 공급과 수요의 균형에 경로가 미치는 영향에 해당할 수 있다. 예를 들어, 한 명의 배송자가 더 많은 배송자를 필요로 하는 지역으로 이동하는 경로에는 더 높은 점수가 주어질 수 있다. 다양한 실시예들에서, 전술한 것 외에 다른 인자들이 고려 될 수 있다.
일부 실시예에서, 인자들은 각각의 실행 가능한 페어링에 대한 경로 점수를 달성하기 위해 점수가 매겨지고 가중된다. 일부 실시 예에서, 경로는 단계(714)를 참조하여 아래에 더 설명되는, 최적화를 위한 행렬에서 점수가 매겨진다. 도8을 참조하면, 하나 이상의 실시 예에 따른 예시적인 점수 행렬(800)이 도시되어 있다. 도시된 바와 같이, 점수 행렬은 생성된 주문 (배달(810), 배달(812) 및 배달(14))과 4명의 배송자(배송자(820), 배송자(822), 배송자(824) 및 배송자(826))의 분류 그룹을 포함한다.
도시된 바와 같이, 제1 열의 점수는 배달(810)과 4명의 활동 가능한 배송자의 페이링에 대응할 수 있다. 배달(810)은 배송자(820)와는 실행 불가능한 페어링이므로 행렬에서 "X"로 표시될 수 있다. 배달(810)과 배송자(822)의 페어링은 점수 "3"을 포함하고, 배달(810)과 배송자(824)의 페어링은 점수 "2"를 포함하고, 배달(810)과 배송자(826)의 페어링은 점수 "2"를 포함한다.
제2 열의 점수는 배달(812)과 4명의 활동 가능한 배송자와의 페어링에 대응할 수 있다. 배달(812)과 배송자(820)의 페어링은 점수 "2"를 포함하고, 배달(812)과 배송자(822)의 페어링은 점수 "2"를 포함하고, 배달(812)과 배송자(824)의 페어링은 점수 "5"를 포함하고, 배달(812)과 배송자(826)의 페어링은 점수 "1"을 포함한다.
제3열의 점수는 배달(814)과 4명의 활동 가능한 배송자와의 페어링에 대응할 수 있다. 배달(814)과 배송자(820)의 페어링은 점수 "1"을 포함하고, 배달(814)과 배송자(822)의 페어링은 점수 "4"을 포함하고, 배달(814)과 배송자(824)의 페어링은 점수 "1"을 포함하고, 배달(814)과 배송자(826)의 페어링은 점수 "1"을 포함한다.
단계(714)에서, 경로 세트는 생성된 모든 경로의 최대 점수의 조합에 대해 최적화된다. 다양한 실시예에서, 시스템은 모든 배달이 정확히 하나의 배송자와 페어링을 이루는 제약 조건에 따라 총 점수를 최대화하는 경로의 조합을 결정할 수 있다. 각 배달이 하나의 배송자에 의해서만 배송될 수 있기 때문에 모든 배송자가 경로 페어링을 받을 수 있는 것은 아니다. 모든 페어링에 걸쳐 점수의 합을 최대화하는 실행 가능한 페어링 세트를 구하기 위해 수학적인 해결 장치를 구현할 수 있다.
도8의 예를 사용하여, 배달(812)은 배송자(824)와 바람직한 페어링을 이루는 반면, 배달(810 및 814)은 배송자(822)와 바람직한 페어링을 이룰 수 있다. 이 경우, 분류 그룹에서 페어링의 총 점수를 최대화하려면, 배달(814)은 배송자(822)와 페어링을 이루고, 배달(812)은 배송자(824)와 페어링을 이룰 수 있다. 배달(810)은 배송자(826)와 페어링을 이루는데, 이는 이들 페어링에 대한 점수가 "2"로 묶여 있기 때문이다. 이 최적화로 인해 최대 점수 "11"이 결과된다. 배달(810)은 배송자(822)와 페어링을 이루지 않는데, 왜냐하면 이렇게 하면 최대 점수 "9"를 제공하기 때문이다.
상기 예는 전체적으로 가장 높은 점수를 얻기 위한 전역 최적화를 보여준다. 그러나, 일부 실시예에서, 경로 점수는 각 주문 또는 각 배송자에 대한 최고 점수로 최적화 될 수 있다. 이것을 최대 최적화라고 할 수 있다. 이러한 예에서, 최적화는 각 배달 페어링이 가능한 최고 점수를 포함하도록 경로의 조합을 결정할 수 있다. 따라서, 배달(812)과 배송자(824)의 페어링은 그 배달에 대해 "5"라는 최고 점수로 선택 될 것이다. 그러나, 배달(814) 및 배달(810) 둘 다는 배송자(822)와 바람직한 점수를 포함한다. 그러나, 최대 최적화는 배달(814)과 배송자(822)의 페어링을 선호하는데, 이는 배달(810)과 배송자(822)의 페어링 보다 높은 점수를 가지기 때문이다. 따라서, 배달(810)는 배송자(826)와 페어링을 이룰 것이다. 이 결과는 전역 최적화와 동일한 결과를 얻지만, 최적화 방법은 다르다.
설명된 바와 같이, 이 점수매김은 페어링 결정을 행할 때 다수의 상이한 메트릭의 명시적인 밸런싱을 제공할 수 있다. 또한 현재 시스템 요구에 따라 페어링을 조정할 수 있는 직관적인 레버를 제공할 수 있다. 또한 변수간 연속적인 균형을 가능하게 하므로, 페어링 결정을 완전히 변경시키는 임의의 임계 값이 없다.
경로 페어링을 결정하는 데 사용되는 시간이 길수록 보다 정확한 정보를 바탕으로 경로 점수매김을 수행하는 데 도움이 되는 추가 데이터를 제공하여 더 큰 전역 최적 점수를 얻을 수 있다. 그러나 이는 대기중인 배달을 지연시킬 수도 있다. 일부 실시 예에서, 신경 네트워크는 주어진 시간 동안 주문과 배송자의 최적의 페어링을 예측하도록 학습된다. 페어링 지연이 경로 점수를 전체적으로 줄어들게 하는, 일정 시간이 있을 수 있다. 따라서, 정보를 수집하는 것과 페어링을 행하는 것 사이에 최적의 절충점이 존재한다. 따라서 신경 네트워크는 경로 페어링을 만드는 시점과 추가 배송자와 주문을 그룹으로 분류하여 점수를 매기는 시점을 결정할 수 있다.
단계(716)에서, 경로는 최적화된 경로 세트에 기초하여 배송자에게 제공된다. 다양한 실시예들에서, 경로에 대해 예상되는 시간 값이 예측되는 부패하기 쉬운 물품 준비 완료 시간 값 이상이면 대응하는 실행 가능한 페어링들이 제공된다. 일부 실시예들에서, 경로에 대한 예상 시간 값은 경로에 대응하는 배송자가 판매자에게 도달할 것으로 예상되는 시간에 대응하고, 이 예상 시간 값은 판매자에 의한 주문품 준비 완료 완료에 대응한다. 다시 말해, 특정 페어링에 대한 경로는 배송자가 판매자(226)에게 도착한 ETA가 주문품 준비 완료 이벤트(218)의 ETA 또는 그 이후에 발생하는 경우에만 선택된다. 이는 주문품이 픽업 준비가 되기 전에 배송자가 도착하는 경우에 발생할 수 있는 대기 시간을 제거하여 배송자의 활동을 최적화할 수 있도록 한다.
식품 준비 시간(이벤트 218) 전에 배송자가 도착(이벤트 226)할 것으로 예상되는 경로의 경우에, 페어링은 이루어지지 않는다. 대신에, 이들 비적격의 요구는 단계(718)에서 식별된다. 일부 구체 예에서, 경로의 예상 시간 값이 예측 시간 값보다 크거나 같지 않은 경우, 실행 가능한 페어링에 대응하는 주문 및 배송자가 바람직한 데이터 페어링 세트를 생성할 때 재검토를 위해 표시된다. 다음에, 방법 (700)은 단계(702)로 돌아가, 단계(702 내지 718)를 통해 후속 실행에서 페어링 및 최적화를 위해 표시된 주문과 배송자를 추가의 주문과 배송자와 함께 재고려한다.
다양한 컴퓨팅 장치가 설명된 방법을 구현할 수 있다. 예를 들어, 모바일 장치, 컴퓨터 시스템 등을 사용하여 동적 ETA 추산 업데이트를 생성할 수 있다. 도 10을 참조하면, 본 개시의 특정 예를 구현하는데 사용될 수 있는 컴퓨터 시스템 (1000)의 특정 예가 도시되어 있다. 특정 실시 예에 따르면, 본 발명의 특정 실시 예를 구현하기에 적합한 시스템(1000)은 프로세서(1001), 메모리(1003), 인터페이스(1011) 및 버스(1015) (예를 들어, PCI 버스)를 포함한다. 적절한 소프트웨어 또는 펌웨어의 제어하에 작용할 때, 프로세서(1001)는 신경 네트워크에서 다양한 계산 계층 및 알고리즘을 통해 입력을 처리하는 역할을 한다. 일부 실시 예에서, 프로세서는 확률적 기울기 강하 알고리즘 및 역 전파 알고리즘을 포함하지만 이에 제한되지 않는 알고리즘을 사용하여, 각각의 연산 계층의 파라미터를 업데이트하는 기능을 행한다. 프로세서(1001) 대신에 또는 프로세서(1001) 외에 다양한 특수 구성 장치가 또한 사용될 수 있다. 완벽한 구현은 주문형 하드웨어로도 가능하다.
인터페이스(1011)는 일반적으로 네트워크를 통해 데이터 패킷 또는 데이터 세그먼트를 송수신하도록 구성된다. 장치가 지원하는 인터페이스의 특정 예로는 이더넷 인터페이스, 프레임 릴레이 인터페이스, 케이블 인터페이스, DSL 인터페이스, 토큰 링 인터페이스 등이 있다. 인터페이스(1011)는 별도의 입력 및 출력 인터페이스를 포함할 수 있거나, 두 동작을 모두 지원하는 통합 인터페이스일 수 있다. 또한, 고속 이더넷 인터페이스, 기가비트 이더넷 인터페이스, ATM 인터페이스, HSSI 인터페이스, POS 인터페이스, FDDI 인터페이스 등과 같은 다양한 초고속 인터페이스가 제공될 수 있다. 일반적으로 이러한 인터페이스에는 적절한 매체와 통신하기에 적합한 포트가 포함될 수 있다. 경우에 따라 독립 프로세서를 포함할 수 있고, 경우에 따라 휘발성 RAM을 포함할 수도 있다. 독립 프로세서는 패킷 교환, 매체 제어 및 관리와 같은 통신 집약적인 작업을 제어 할 수 있다.
특정 실시예에 따르면, 시스템 (1000)은 메모리 (1003)를 사용하여 신경 네트워크 훈련, 전달 경로 생성 및/또는 ETA 예측 생성을 포함하는 동작을 위한 데이터 및 프로그램 명령을 저장한다. 프로그램 명령은 예를 들어 운영 체제 및/또는 하나 이상의 애플리케이션의 동작을 제어할 수 있다. 메모리(들)는 또한 수신된 메타 데이터 및 배치 요청된 메타 데이터를 저장하도록 구성 될 수 있다. 메모리(들)는 또한 파라미터 및 가중 인자에 대응하는 데이터를 저장하도록 구성될 수 있다.
이러한 정보 및 프로그램 명령어는 본 명세서에 설명된 시스템/방법을 구현하기 위해 사용될 수 있기 때문에, 본 발명은 본 명세서에 설명된 다양한 동작을 수행하기 위한 프로그램 명령어, 상태 정보 등을 포함하는 유형의 기계 판독 가능 매체에 관한 것이다. 기계 판독 가능 매체의 예는 하드 디스크, 플로피 디스크, 자기 테이프, CD-ROM 디스크 및 DVD와 같은 광학 매체; 광 디스크와 같은 광 자기 매체; 및 ROM (읽기 전용 메모리 장치) 및 PROM (프로그램 가능 읽기 전용 메모리 장치)과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령어의 예에는 컴파일러에서 생성한 기계 코드 및 컴퓨터가 해석기를 사용하여 실행할 수 있는 상위 코드를 포함하는 파일이 모두 포함된다.
편의상 다수의 구성 요소 및 프로세스가 단수로 위에서 설명되었지만, 다수의 구성 요소 및 반복된 프로세스가 또한 본 개시의 기술을 실시하기 위해 사용될 수 있다는 것이 당업자에게 이해될 것이다.
본 개시가 특정 실시예들을 참조하여 특히 도시되고 설명되었지만, 개시된 실시예들의 형태 및 세부 사항의 변경이 본 개시의 사상 또는 범위를 벗어나지 않고 이루어질 수 있다는 것이 당업자에 의해 이해될 것이다. 그러므로 본 개시는 본 개시의 진정한 사상 및 범위 내에 속하는 모든 변형 및 균등물을 포함하는 것으로 해석되도록 의도된다.

Claims (20)

  1. 동적 페어링 기능 최적화를 위한 방법으로서, 상기 방법은:
    서버에서, 복수의 판매자로부터 부패하기 쉬운 물품의 실시간 배달을 위해 생성된 복수의 주문에 대응하는 제1 필터된 데이터세트를 수신하는 단계 - 상기 제1 필터된 데이터세트는 시간 임계값 및 확인 이정표에 의해 필터링 됨 - ;
    상기 서버에서, 복수의 활동 가능한 배송자에 대응하는 제2 필터된 데이터세트를 수신하는 단계 - 상기 제2 필터된 데이터세트는 활동중 상태 임계값에 의해 필터링 됨 - ;
    상기 제1 및 제2 필터된 데이터세트로부터 바람직한 데이터 페어링 세트를 생성하는 단계 - 상기 바람직한 데이터 페이링 세트를 생성하는 단계는:
    상기 제1 데이터세트 및 상기 제2 데이터세트의 통합을 복수의 분류 그룹으로 미세 분류하는 단계 - 상기 미세 분류는 상기 제1 및 제2 데이터세트의 지리적 데이터 관련 데이터 값에 적어도 부분적으로 기초함-; 및
    각 분류 그룹에 대해,
    상기 제1 데이터 세트로부터의 제1 데이터 값과 상기 제2 데이터 세트로부터의 제2 데이터 값 사이의 가능한 데이터 페어링을 식별하는 단계;
    상기 가능한 데이터 페어링을 필터링하여 실행 불가능한 페어링을 제거하여 실행 가능한 페어링 세트를 형성하는 단계 - 상기 실행 불가능한 페어링은 운송 모드를 포함하는 인자를 사용하여 결정됨 - ;
    각각의 실행 가능한 페어링과 관련된 가능한 경로를 생성하는 단계;
    가중된 인자에 기초하여 각각의 실행 가능한 페어링에 점수를 매기는 단계; 및
    수학적 해결 장치를 사용하여, 모든 페어링에 대해 점수의 합을 최대화하는 상기 실행 가능한 페어링 세트를 구하는 단계
    를 포함함 - ; 및
    예상되는 경로의 시간 값이 예측되는 부패하기 쉬운 물품 준비 완료 시간 값 이상인 경우 상기 해당하는 실행 가능 페어링을 제공하는 단계
    를 포함하는
    동적 페어링 기능 최적화를 위한 방법.
  2. 제1항에 있어서,
    상기 시간 임계값은 준비 완료까지 추산되는 시간 간격에 해당하고, 상기 확인 이정표는 해당 판매자에 의한 해당 주문의 수신 확인에 해당하는
    동적 페어링 기능 최적화를 위한 방법.
  3. 제2항에 있어서,
    상기 활동중 상태 임계값은 배송자가 온라인 상태이며 배달 제안을 적극적으로 수락한 것에 대응하는
    동적 페어링 기능 최적화를 위한 방법.
  4. 제3항에 있어서,
    상기 예상되는 경로의 시간 값은 상기 예측되는 시간 값보다 크거나 같지 않은 경우, 바람직한 데이터 페어링의 세트를 생성할 때 재검토하기 위해 상기 실행 가능 페어링에 대응하는 상기 주문 및 상기 배송자를 마킹하는 단계
    를 더 포함하는
    동적 페어링 기능 최적화를 위한 방법.
  5. 제4항에 있어서,
    상기 예상되는 경로의 시간 값은 상기 경로에 해당하는 상기 배송자가 상기 판매자에게 도착할 것으로 예측되는 시간에 해당하고, 상기 예측되는 시간은 상기 판매자에 의한 주문품 준비 완료에 해당하는
    동적 페어링 기능 최적화를 위한 방법.
  6. 제1항에 있어서,
    상기 지리적 데이터 관련 데이터 값은:
    배송자의 실시간 위치와 주문에 해당하는 픽업 장소의 위치 간의 지리적 근접도;
    지역적 경계;
    수요와 공급 조건; 및
    과거 배달 데이터
    중 하나 이상을 포함하는
    동적 페어링 기능 최적화를 위한 방법.
  7. 제1항에 있어서,
    상기 실행 불가능한 페어링은 추가 제약에 기초하여 결정되며, 상기 추가 제약은:
    차량 유형, 차량 크기, 주문품 크기, 및 식품 유형
    중 하나 이상을 포함하는
    동적 페어링 기능 최적화를 위한 방법.
  8. 제1항에 있어서,
    상기 바람직한 데이터 페어링 세트를 생성하는 단계는:
    상기 제1 및 제2 필터된 데이터 세트를 학습된 신경 네트워크에 입력하여 예상되는 시간 값과 차량 유형, 차량 크기, 주문품 크기 및 식품 유형을 포함하는 학습되는 인자에 기초하는 예측 시간 값을 자동으로 추산하는 단계를 더 포함하는
    동적 페어링 기능 최적화를 위한 방법.
  9. 제1항에 있어서,
    상기 제2 필터된 데이터세트는 지오해시 데이터 좌표에 의해 정의된 활성 영역을 확장 또는 축소하여 상기 활성 영역 내의 활동 가능한 배송자들에 대한 생성되는 주문의 비율을 바람직하게 유지함으로써 결정되는
    동적 페어링 기능 최적화를 위한 방법.
  10. 동적 페어링 기능 최적화를 위한 시스템으로서, 상기 시스템은:
    하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장된 하나 이상의 프로그램
    을 포함하고, 상기 하나 이상의 프로그램은:
    서버에서, 복수의 판매자로부터 부패하기 쉬운 물품의 실시간 배달을 위해 생성된 복수의 주문에 대응하는 제1 필터된 데이터세트를 수신하고 - 상기 제1 필터된 데이터세트는 시간 임계값 및 확인 이정표에 의해 필터링 됨 - ;
    상기 서버에서, 복수의 활동 가능한 배송자에 대응하는 제2 필터된 데이터세트를 수신하고 - 상기 제2 필터된 데이터세트는 활동중 상태 임계값에 의해 필터링 됨 - ;
    상기 제1 및 제2 필터된 데이터세트로부터 바람직한 데이터 페어링 세트를 생성하고 - 상기 바람직한 데이터 페이링 세트를 생성하는 단계는:
    상기 제1 데이터세트 및 상기 제2 데이터세트의 통합을 복수의 분류 그룹으로 미세 분류하는 단계 - 상기 미세 분류는 상기 제1 및 제2 데이터세트의 지리적 데이터 관련 데이터 값에 적어도 부분적으로 기초함-; 및
    각 분류 그룹에 대해,
    상기 제1 데이터 세트로부터의 제1 데이터 값과 상기 제2 데이터 세트로부터의 제2 데이터 값 사이의 가능한 데이터 페어링을 식별하는 단계;
    상기 가능한 데이터 페어링을 필터링하여 실행 불가능한 페어링을 제거하여 실행 가능한 페어링 세트를 형성하는 단계 - 상기 실행 불가능한 페어링은 운송 모드를 포함하는 인자를 사용하여 결정됨 - ;
    각각의 실행 가능한 페어링과 관련된 가능한 경로를 생성하는 단계;
    가중된 인자에 기초하여 각각의 실행 가능한 페어링에 점수를 매기는 단계; 및
    수학적 해결 장치를 사용하여, 모든 페어링에 대해 점수의 합을 최대화하는 상기 실행 가능한 페어링 세트를 구하는 단계
    를 포함함 - ; 및
    예상되는 경로의 시간 값이 예측되는 부패하기 쉬운 물품 준비 완료 시간 값 이상인 경우 상기 해당하는 실행 가능 페어링을 제공하기 위한 명령을 포함하는
    동적 페어링 기능 최적화를 위한 시스템.
  11. 제10항에 있어서,
    상기 시간 임계값은 준비 완료까지 추산되는 시간 간격에 해당하고, 상기 확인 이정표는 해당 판매자에 의한 해당 주문의 수신 확인에 해당하는
    동적 페어링 기능 최적화를 위한 시스템.
  12. 제11항에 있어서,
    상기 활동중 상태 임계값은 배송자가 온라인 상태이며 배달 제안을 적극적으로 수락한 것에 대응하는
    동적 페어링 기능 최적화를 위한 시스템.
  13. 제12항에 있어서,
    상기 예상되는 경로의 시간 값은 상기 예측되는 시간 값보다 크거나 같지 않은 경우, 바람직한 데이터 페어링의 세트를 생성할 때 재검토하기 위해 상기 실행 가능 페어링에 대응하는 상기 주문 및 상기 배송자를 마킹하는
    동적 페어링 기능 최적화를 위한 시스템.
  14. 제13항에 있어서,
    상기 예상되는 경로의 시간 값은 상기 경로에 해당하는 상기 배송자가 상기 판매자에게 도착할 것으로 예측되는 시간에 해당하고, 상기 예측되는 시간은 상기 판매자에 의한 주문품 준비 완료에 해당하는
    동적 페어링 기능 최적화를 위한 시스템.
  15. 제10항에 있어서,
    상기 지리적 데이터 관련 데이터 값은:
    배송자의 실시간 위치와 주문에 해당하는 픽업 장소의 위치 간의 지리적 근접도;
    지역적 경계;
    수요와 공급 조건; 및
    과거 배달 데이터
    중 하나 이상을 포함하는
    동적 페어링 기능 최적화를 위한 시스템.
  16. 제10항에 있어서,
    상기 실행 불가능한 페어링은 추가 제약에 기초하여 결정되며, 상기 추가 제약은:
    차량 유형, 차량 크기, 주문품 크기, 및 식품 유형
    중 하나 이상을 포함하는
    동적 페어링 기능 최적화를 위한 시스템.
  17. 제10항에 있어서,
    상기 바람직한 데이터 페어링 세트를 생성하는 단계는:
    상기 제1 및 제2 필터된 데이터 세트를 학습된 신경 네트워크에 입력하여 예상되는 시간 값과 차량 유형, 차량 크기, 주문품 크기 및 식품 유형을 포함하는 학습되는 인자에 기초하는 예측 시간 값을 자동으로 추산하는 단계를 더 포함하는
    동적 페어링 기능 최적화를 위한 시스템.
  18. 제10항에 있어서,
    상기 제2 필터된 데이터세트는 지오해시 데이터 좌표에 의해 정의된 활성 영역을 확장 또는 축소하여 상기 활성 영역 내의 활동 가능한 배송자들에 대한 생성되는 주문의 비율을 바람직하게 유지함으로써 결정되는
    동적 페어링 기능 최적화를 위한 시스템.
  19. 컴퓨터에 의해 실행되도록 구성된 하나 이상의 프로그램을 저장하는 비일시적 컴퓨터 판독 가능 매체로서, 상기 하나 이상의 프로그램은:
    서버에서, 복수의 판매자로부터 부패하기 쉬운 물품의 실시간 배달을 위해 생성된 복수의 주문에 대응하는 제1 필터된 데이터세트를 수신하고 - 상기 제1 필터된 데이터세트는 시간 임계값 및 확인 이정표에 의해 필터링 됨 - ;
    상기 서버에서, 복수의 활동 가능한 배송자에 대응하는 제2 필터된 데이터세트를 수신하고 - 상기 제2 필터된 데이터세트는 활동중 상태 임계값에 의해 필터링 됨 - ;
    상기 제1 및 제2 필터된 데이터세트로부터 바람직한 데이터 페어링 세트를 생성하고 - 상기 바람직한 데이터 페이링 세트를 생성하는 단계는:
    상기 제1 데이터세트 및 상기 제2 데이터세트의 통합을 복수의 분류 그룹으로 미세 분류하는 단계 - 상기 미세 분류는 상기 제1 및 제2 데이터세트의 지리적 데이터 관련 데이터 값에 적어도 부분적으로 기초함-; 및
    각 분류 그룹에 대해,
    상기 제1 데이터 세트로부터의 제1 데이터 값과 상기 제2 데이터 세트로부터의 제2 데이터 값 사이의 가능한 데이터 페어링을 식별하는 단계;
    상기 가능한 데이터 페어링을 필터링하여 실행 불가능한 페어링을 제거하여 실행 가능한 페어링 세트를 형성하는 단계 - 상기 실행 불가능한 페어링은 운송 모드를 포함하는 인자를 사용하여 결정됨 - ;
    각각의 실행 가능한 페어링과 관련된 가능한 경로를 생성하는 단계;
    가중된 인자에 기초하여 각각의 실행 가능한 페어링에 점수를 매기는 단계; 및
    수학적 해결 장치를 사용하여, 모든 페어링에 대해 점수의 합을 최대화하는 상기 실행 가능한 페어링 세트를 구하는 단계
    를 포함함 - ; 및
    예상되는 경로의 시간 값이 예측되는 부패하기 쉬운 물품 준비 완료 시간 값 이상인 경우 상기 해당하는 실행 가능 페어링을 제공하기 위한 명령을 포함하는
    비일시적 컴퓨터 판독 가능 매체.
  20. 제19항에 있어서,
    상기 제2 필터된 데이터 세트는 지오해시 데이터 좌표에 의해 정의된 활성 영역을 확장 또는 축소하여 상기 활성 영역 내의 활동 가능한 배송자에 대한 생성된 주문의 비율을 바람직하게 유지함으로써 결정되는
    비일시적 컴퓨터 판독 가능 매체.
KR1020207018934A 2017-11-30 2018-11-20 동적 페어링 기능 최적화를 위한 시스템 및 방법 KR102665720B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/826,736 2017-11-30
US15/826,736 US10810536B2 (en) 2017-11-30 2017-11-30 System and method for dynamic pairing function optimization
PCT/US2018/062010 WO2019108442A1 (en) 2017-11-30 2018-11-20 System and method for dynamic pairing function optimization

Publications (2)

Publication Number Publication Date
KR20200084370A true KR20200084370A (ko) 2020-07-10
KR102665720B1 KR102665720B1 (ko) 2024-05-10

Family

ID=66632554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207018934A KR102665720B1 (ko) 2017-11-30 2018-11-20 동적 페어링 기능 최적화를 위한 시스템 및 방법

Country Status (6)

Country Link
US (3) US10810536B2 (ko)
EP (1) EP3701456A4 (ko)
KR (1) KR102665720B1 (ko)
AU (1) AU2018375264A1 (ko)
CA (1) CA3083957A1 (ko)
WO (1) WO2019108442A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024005247A1 (ko) * 2022-06-30 2024-01-04 쿠팡 주식회사 배송 정보를 처리하는 장치 및 그 방법

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810536B2 (en) 2017-11-30 2020-10-20 DoorDash, Inc. System and method for dynamic pairing function optimization
CN110447050A (zh) * 2017-12-04 2019-11-12 北京嘀嘀无限科技发展有限公司 用于在线按需服务中分配订单的系统和方法
US20190228352A1 (en) 2018-01-19 2019-07-25 Walmart Apollo, Llc Systems and methods for combinatorial resource optimization
KR20190117950A (ko) * 2018-04-09 2019-10-17 김나윤 불특정 다수를 대상으로 하는 택배 제휴 시스템
JP7111573B2 (ja) * 2018-09-26 2022-08-02 本田技研工業株式会社 依頼処理システム
US11615368B2 (en) * 2018-11-01 2023-03-28 Walmart Apollo, Llc Systems and methods for determining delivery time and route assignments
US11521161B2 (en) * 2019-01-30 2022-12-06 Walmart Apollo, Llc Automatic determination of pickup wait times
US11062405B2 (en) * 2019-01-31 2021-07-13 Toyota Motor Engineering & Manufacturing North America, Inc. Dynamic ordering system
US11940286B1 (en) * 2019-03-01 2024-03-26 Grubhub Holdings Inc. Fast computational generation of digital pickup and delivery plans
US20200394572A1 (en) * 2019-06-12 2020-12-17 Toshiba Tec Kabushiki Kaisha Reservation order processing system and reservation order processing method
US20200394606A1 (en) * 2019-06-17 2020-12-17 Postmates Inc. Detecting delivery status based on geo-fencing
US20200394609A1 (en) * 2019-06-17 2020-12-17 Postmates Inc. Reassigned delivery protocol
EP3757913A1 (en) * 2019-06-28 2020-12-30 Skipthedishes Restaurant Services Inc. Article transport systems and methods
US10911903B1 (en) * 2020-01-29 2021-02-02 Coupang Corp. Systems and methods for multi-point arrival analysis
US20210256592A1 (en) * 2020-02-19 2021-08-19 Coupang Corp. Systems and methods for intelligent preparation time analysis
US11625673B2 (en) 2020-06-02 2023-04-11 Kpn Innovations, Llc. Methods and systems for path selection using vehicle route guidance
US11599846B2 (en) * 2020-07-02 2023-03-07 Kpn Innovations, Llc. Method and system for selection of a path for deliveries
US11500704B2 (en) * 2020-07-31 2022-11-15 Boomi, LP System and method for intelligent real-time listening and load balancing of integration process executions
US11215467B1 (en) * 2020-08-03 2022-01-04 Kpn Innovations, Llc. Method of and system for path selection
US11829939B2 (en) * 2020-11-03 2023-11-28 Kpn Innovations, Llc. System and methods for transfer path optimization
US20220164858A1 (en) * 2020-11-24 2022-05-26 Ncr Corporation Order Routing and Redirecting for Fulfillment Processing
US20220309446A1 (en) * 2021-03-26 2022-09-29 Dematic Corp. Method and warehouse for delivery order processing
US20230061547A1 (en) * 2021-08-31 2023-03-02 Project44 Using machine learning to dynamically determine shipping information
US11882192B2 (en) * 2022-05-25 2024-01-23 Microsoft Technology Licensing, Llc Intelligent near-field advertisement with optimization
US11770304B1 (en) 2023-03-14 2023-09-26 Ameranth, Inc. Adaptable computing network with real time, intelligent, 4D spherical scalability, tech stack awareness, tech stack integration, automatic bi-directional communications channel switching and order equilibrium—for large enterprise, time sensitive event/transaction driven applications

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9269103B1 (en) * 2015-02-19 2016-02-23 Square, Inc. Combining orders for delivery
US20170024789A1 (en) * 2015-03-27 2017-01-26 Momentum Machines Company Method for queuing orders at a food assembly apparatus
US9639908B1 (en) * 2015-03-20 2017-05-02 Square, Inc. Variable delivery zones for delivery orders

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201215193D0 (en) * 2012-08-25 2012-10-10 Dalp Daniel Order delivery system
US20140279294A1 (en) 2013-03-14 2014-09-18 Nordstrom, Inc. System and methods for order fulfillment, inventory management, and providing personalized services to customers
US20140330738A1 (en) 2013-05-01 2014-11-06 Gruppo Due Mondi, Inc. Optimizing Customer Delivery Services
US20150019354A1 (en) * 2013-07-12 2015-01-15 Elwha Llc Automated cooking system that accepts remote orders
EP3080774A4 (en) * 2013-12-11 2017-06-07 Uber Technologies Inc. Optimizing selection of drivers for transport requests
US20150227888A1 (en) 2014-02-13 2015-08-13 Dragontail Systems Ltd. Method and system for managing preparation and delivery of goods
WO2016029319A1 (en) 2014-08-27 2016-03-03 Samer Ziade Systems and methods for facilitating secure ordering, payment and delivery of goods or services
US20160063436A1 (en) 2014-08-29 2016-03-03 Peter Andrew Coles Optimal bundling of routes in a courier marketplace
WO2016074031A1 (en) * 2014-11-10 2016-05-19 Meemeep Pty Ltd Distributed delivery system
US20160140507A1 (en) 2014-11-18 2016-05-19 Intrenational Business Machines Corporation Optimizing service provider schedule and route
US20160148306A1 (en) 2014-11-21 2016-05-26 Peach Labs, Inc. Lunch order management
US20160300184A1 (en) * 2015-04-07 2016-10-13 Ebay Inc. Communication device interfaces providing courier service information
US20170227370A1 (en) * 2016-02-08 2017-08-10 Uber Technologies, Inc. Reducing wait time of providers of ride services using zone scoring
US9811838B1 (en) * 2016-03-16 2017-11-07 Square, Inc. Utilizing a computing system to batch deliveries for logistical efficiency
TWI742312B (zh) 2017-10-02 2021-10-11 宏達國際電子股份有限公司 機器學習系統、機器學習方法及其非暫態電腦可讀媒體
US10810536B2 (en) 2017-11-30 2020-10-20 DoorDash, Inc. System and method for dynamic pairing function optimization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9269103B1 (en) * 2015-02-19 2016-02-23 Square, Inc. Combining orders for delivery
US9639908B1 (en) * 2015-03-20 2017-05-02 Square, Inc. Variable delivery zones for delivery orders
US20170024789A1 (en) * 2015-03-27 2017-01-26 Momentum Machines Company Method for queuing orders at a food assembly apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024005247A1 (ko) * 2022-06-30 2024-01-04 쿠팡 주식회사 배송 정보를 처리하는 장치 및 그 방법

Also Published As

Publication number Publication date
US10810536B2 (en) 2020-10-20
US11922366B2 (en) 2024-03-05
US20190164126A1 (en) 2019-05-30
US11276028B2 (en) 2022-03-15
US20200394610A1 (en) 2020-12-17
EP3701456A1 (en) 2020-09-02
EP3701456A4 (en) 2021-06-23
KR102665720B1 (ko) 2024-05-10
CA3083957A1 (en) 2019-06-06
WO2019108442A1 (en) 2019-06-06
AU2018375264A1 (en) 2020-06-18
US20220156696A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
KR102665720B1 (ko) 동적 페어링 기능 최적화를 위한 시스템 및 방법
US11568355B2 (en) Depot dispatch protocol for aggregating on-demand deliveries
US11755906B2 (en) System for dynamic estimated time of arrival predictive updates
US11270248B2 (en) System for dynamic effort-based delivery value predictive updates
US11783282B2 (en) Depot dispatch protocol for autonomous last-mile deliveries
US10455363B2 (en) Systems and methods for using geo-blocks and geo-fences to discover lookalike mobile devices
US10880682B2 (en) Systems and methods for creating and using geo-blocks for location-based information service
US10914597B2 (en) Information processing system, information processing method, information processing device, and information processing program
US20170046653A1 (en) Planning of transportation requests
CN109325671B (zh) 一种时空众包在线任务分配方法及系统
JP2021534499A (ja) モバイル機器位置予測システム及び方法
JP2020098573A (ja) 継続的配達
JP7285521B2 (ja) 類似のモバイル装置を予測するためのシステムと方法
RU2769920C2 (ru) Способ и система для определения факта посещения пользователем точки интереса
JP2018206224A (ja) 提供装置、提供方法、提供プログラム、算出装置およびモデル

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant