IP Library Granted Patent US 10,982,963
Granted Patent B2
US 10,982,963 · App. 16/236,578 · Granted Apr 20, 2021

Utilizing a geo-locator service and zone servers to reduce computer resource requirements for determining high quality solutions to routing problems

Inventors: John Brian Stewart (Charlotte, NC); Dinesh Premalal Weerapurage (Morrison, CO); Timothy Alan Carnes (Seattle, WA); Christopher Sebastian Groer (Knoxville, TN); Lahiru Sandakith Pileththuwasan Gallege (Knoxville, TN); Chenlu Lou (Knoxville, TN)
Assignee: Salesforce.com, Inc.
G01C21/32G01C21/3407G01C21/3446G06F16/9566H04L67/18H04W4/024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,982,963
App. No.
16/236,578
Granted
Apr 20, 2021
Kind
B2
Abstract

A method involves utilizing a geo-locator service and zone servers to reduce server resource requirements for determining high quality solutions to routing problems. The use of a geo-locator service and zone servers enables the use of servers having less memory which can handle determination of high quality solutions to routing problems involving locations spanning a smaller geographic area even if they are incapable of handling determination of high quality solutions to routing problems involving locations spanning a larger geographic area, and enables efficient assignment of requests to an appropriate server without unduly burdening high value servers having sufficient memory to handle determination of high quality solutions to routing problems involving locations spanning a very large geographic area with determination of high quality solutions to routing problems involving locations spanning a smaller geographic area.

Claims (53)

1. A method involving utilizing a geo-locator service and zone servers to reduce server resource requirements for determining optimized solutions to routing problems, the method comprising:

(a) maintaining, for a geo-locator service, electronic data corresponding to a plurality of defined zones each corresponding to a geographic area, wherein

(i) each defined zone has a defined boundary,

(ii) a plurality of the defined zones each overlap with other of the defined zones, and

(iii) a plurality of the defined zones are each located entirely within another defined zone;

(b) maintaining a plurality of zone servers, each zone server including road network data for one or more of the zones of the plurality of defined zones;

(c) electronically receiving, by the geo-locator service, a request originating from a requesting device comprising information for a plurality of locations involved in a routing problem;

(d) electronically determining, by the geo-locator service based on the received information for the plurality of locations and the maintained data corresponding to the plurality of defined zones, a smallest defined zone that contains all of the locations of the plurality of locations;

(e) electronically determining, by the geo-locator service, a zone server corresponding to the determined zone;

(f) electronically communicating, to the determined zone server corresponding to the determined zone, problem data for the routing problem comprising data for the plurality of locations involved in the routing problem;

(g) electronically determining, at the determined zone server corresponding to the determined zone in response to the effected communication of problem data, a set of one or more optimized solutions to the routing problem using a plurality of calculated travel time estimates accessed from one or more computed shortest path matrices; and

(h) electronically communicating, from the one or more zone servers corresponding to the determined zone to the requesting device, data corresponding to the determined set of one or more optimized solutions to the routing problem.

2. The method of claim 1 , wherein maintaining, for a geo-locator service, data corresponding to a plurality of defined zones each corresponding to a geographic area comprises maintaining, for each defined zone, a list of coordinates defining the defined boundary for that zone.

3. The method of claim 1 , wherein the received request comprises coordinates for each of the plurality of locations.

4. The method of claim 1 , wherein the requesting device comprises a computing device having a web browser loaded thereon, and wherein the received request was communicated via a web browser.

5. The method of claim 1 , wherein the requesting device comprises a computing device having a web browser loaded thereon, and wherein the request utilizes hypertext transfer secure protocol (HTTPs).

6. A method involving utilizing a geo-locator service and zone servers to reduce server resource requirements for determining optimized solutions to routing problems, the method comprising:

(a) maintaining, for a geo-locator service, electronic data corresponding to a plurality of defined zones each corresponding to a geographic area, wherein

(i) each defined zone has a defined boundary,

(ii) a plurality of the defined zones each overlap with other of the defined zones, and

(iii) a plurality of the defined zones are each located entirely within another defined zone;

(b) maintaining a plurality of zone servers, each zone server including road network data for one or more of the zones of the plurality of defined zones;

(c) electronically receiving, by the geo-locator service, a request originating from a requesting device comprising information for a plurality of locations involved in a routing problem;

(d) electronically determining, by the geo-locator service based on the received information for the plurality of locations and the maintained data corresponding to the plurality of defined zones, a smallest defined zone that contains all of the locations of the plurality of locations;

(e) electronically determining, by the geo-locator service, an identifier for accessing a zone server corresponding to the determined zone;

(f) electronically effecting, using the determined identifier for accessing a zone server corresponding to the determined zone, communication to one or more zone servers corresponding to the determined zone of problem data for the routing problem comprising data for the plurality of locations involved in the routing problem;

(g) electronically determining, at the one or more zone servers corresponding to the determined zone in response to the effected communication of problem data, a set of one or more optimized solutions to the routing problem using a plurality of calculated travel time estimates accessed from one or more computed shortest path matrices; and

(h) electronically communicating, from the one or more zone servers corresponding to the determined zone to the requesting device, data corresponding to the determined set of one or more optimized solutions to the routing problem.

7. The method of claim 6 , wherein maintaining, for a geo-locator service, data corresponding to a plurality of defined zones each corresponding to a geographic area comprises maintaining, for each defined zone, a list of coordinates defining the defined boundary for that zone.

8. The method of claim 6 , wherein the received request comprises coordinates for each of the plurality of locations.

9. The method of claim 6 , wherein the determined identifier comprises a server name.

10. The method of claim 6 , wherein the determined identifier comprises an internet protocol (IP) address.

11. The method of claim 6 , wherein the determined identifier comprises a uniform resource locator (URL).

12. The method of claim 6 , wherein the requesting device comprises a computing device having a web browser loaded thereon, and wherein the received request was communicated via a web browser.

13. The method of claim 6 , wherein the requesting device comprises a computing device having a web browser loaded thereon, and wherein the request utilizes hypertext transfer secure protocol (HTTPs).

14. A method involving utilizing a geo-locator service and zone servers to reduce server resource requirements for facilitating determination of optimized solutions to routing problems, the method comprising:

(a) maintaining, for a geo-locator service, electronic data corresponding to a plurality of defined zones each corresponding to a geographic area, wherein

(i) each defined zone has a defined boundary,

(ii) a plurality of the defined zones each overlap with other of the defined zones, and

(iii) a plurality of the defined zones are each located entirely within another defined zone;

(b) maintaining a plurality of zone servers, each zone server including road network data for one or more of the zones of the plurality of defined zones;

(c) electronically receiving, by the geo-locator service, a request originating from a requesting device comprising information for a plurality of locations involved in a routing problem;

(d) electronically determining, by the geo-locator service based on the received information for the plurality of locations and the maintained data corresponding to the plurality of defined zones, a smallest defined zone that contains all of the locations of the plurality of locations;

(e) electronically determining, by the geo-locator service, an identifier for accessing a zone server corresponding to the determined zone;

(f) electronically effecting, using the determined identifier for accessing a zone server corresponding to the determined zone, communication to one or more zone servers corresponding to the determined zone of problem data for the routing problem comprising data for the plurality of locations involved in the routing problem;

(g) electronically computing, at the one or more zone servers corresponding to the determined zone in response to the effected communication of problem data, one or more shortest path matrices comprising shortest path data for directional shortest paths between pairs of locations of the plurality of locations; and

(h) electronically communicating, from the one or more zone servers corresponding to the determined zone to the requesting device, data corresponding to the computed one or more shortest path matrices comprising shortest path data for directional shortest paths between pairs of locations of the plurality of locations.

15. The method of claim 14 , wherein maintaining, for a geo-locator service, data corresponding to a plurality of defined zones each corresponding to a geographic area comprises maintaining, for each defined zone, a list of coordinates defining the defined boundary for that zone.

16. The method of claim 14 , wherein the received request comprises coordinates for each of the plurality of locations.

17. The method of claim 14 , wherein the determined identifier comprises a server name.

18. The method of claim 14 , wherein the determined identifier comprises an internet protocol (IP) address.

19. The method of claim 14 , wherein the determined identifier comprises a uniform resource locator (URL).

20. The method of claim 14 , wherein the requesting device comprises a computing device having a web browser loaded thereon, and wherein the received request was communicated via a web browser.

Assignments (3)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0394 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2020
From: MAPANYTHING, INC.
To: SALESFORCE.COM, INC.
Reel/Frame 053520/0173 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2018
From: STEWART, JOHN BRIAN; CARNES, TIMOTHY ALAN; GALLEGE, LAHIRU SANDAKITH PILETHTHUWASAN; GROER, CHRISTOPHER SEBASTIAN; LOU, CHENLU; WEERAPURAGE, DINESH PREMALAL
To: MAPANYTHING, INC.
Reel/Frame 047995/0065 →
Continuity (2)
Continuation 16053792 · Aug 2, 2018
Related Publication 20200041279A1 · Feb 6, 2020