computer-based methods and systems for dynamically scheduling the distribution of products and services among a system of routes and timeslots are provided. Exemplary embodiments provide a route and timeslot Scheduler (the “RTS”), which controls the creation, quantity, and allocation of schedule stops (or events) for each timeslot of each route based upon a calendar and template system. Each route typically represents a geographic area to which products can be delivered. Each timeslot typically represents a window of time, during which delivery stops (or events) can be scheduled. scheduled stops/events are created based upon defaults which are specified in the template system. A calendar system is provided to specify which routes and timeslots, which would otherwise be available based upon the template system, are actually applicable to be scheduled on a given calendar day. The RTS creates scheduled stops for a designated point.
|
25. A computer-based home delivery scheduling system comprising:
a data repository;
a set of routines for automatically creating in the data repository scheduled timeslot segments for each timeslot, for each route, for a designated calendar day, based upon a template and a calendar system that indicates available routes, timeslots, and numbers of potential timeslot segments per timeslot subject to the available routes being permissible on a particular calendar day, wherein the template is a master pattern from which a copy may be made to create a schedule, wherein the template includes at least available route types, wherein the routes are determined based on the available route types, the available route types being descriptors or identifiers for grouping the different routes, each of the routes is not separated into different route types, at least one of the available route types is a default route type that is available for distribution of products or services on normal days, at least another one of the available route types is a special route type that is available for distribution of products or services on holidays or without charge, and the special route type can override the default route type; and
a user interface for displaying and modifying scheduling data stored in the data repository by invoking the set of routines,
wherein thereafter using the scheduled timeslot segments to schedule deliveries of products and services purchased at an electronic storefront.
1. A computer-implemented method for dynamically creating a schedule of timeslot segments for a plurality of routes and timeslots, the method comprising:
determining from a calendar, a set of possible route types for a selected day and a template Identifier;
based upon the determined set of possible route types, retrieving a set of available route types from a template identified by the template identifier, wherein the available route types are limited to those route types that are within the set of possible route types, wherein the template includes at least available route types;
for each available route type, determining a set of routes for the selected day; and
for each set of routes, creating in a data repository a set of schedulable timeslot segments that correspond to the selected day,
wherein the routes are determined based on the available route types, the route types being descriptors or identifiers for grouping the different routes, wherein each of the routes is not separated into different route types, wherein at least one of the available route types is a default route type that is available for distribution of products or services on normal days, wherein at least another one of the available route types is a special route type that is available for distribution of products or services on holidays or without charge, and wherein the special route type can override the default route type, and
wherein an electronic storefront system thereafter schedules at least one delivery stop using one or more of the set of schedulable timeslot segments, the at least one delivery stop being for delivery of a product or service.
17. A computer-readable memory medium containing instruction for controlling a computer processor to dynamically create a schedule of timeslot segments for a plurality of routes and timeslots by:
determining from a calendar, a set of possible route types for a selected day and a template identifier;
based upon the determined set of possible route types, retrieving a set of available route types from a template identified by the template identifier, wherein the available route types are limited to those route types that are within the set of possible route types, wherein the template includes at least available route types,
for each available route type, determining a set of routes for the selected day; and
for each set of routes, creating a data repository a set of schedulable timeslot segments that correspond to the selected day,
wherein the routes are determined based on the route types, the route types being descriptors or identifiers for grouping the different routes, and wherein each of the routes is not separated into the different route types, wherein at least one of the available route types is a default route type that is available for distribution of products or services on normal days, wherein at least another one of the available route types is a special route type that is available for distribution of products or services on holidays or without charge, and wherein the special route type can override the default route type, and
wherein an electronic storefront program thereafter schedules at least one delivery stop using one or more of the set of schedulable timeslot segments, the at least one delivery stop being for delivery of a product or service.
2. The method of
3. The method of
4. The method of
modifying the template such that data that corresponds to, at least one of the set of timeslots are changed; and
updating the created set of schedulable timeslot segments in the data repository to correspond to the changed data.
6. The method of
9. The method of
10. The method of
11. The method of
12. The method of
14. The method of
modifying the template such that data that corresponds to at least one of the set of routes are changed; and
updating the created set of schedulable timeslot segments in the data repository to correspond to the changed data.
15. The method of
16. The method of
18. The computer-readable memory medium of
19. The computer-readable memory medium of
20. The computer-readable memory medium of
21. The computer-readable memory medium of
22. The computer-readable memory medium of
23. The computer-readable memory medium of
wherein the set of schedulable timeslot segments supports the scheduling of a delivery of a product a plurality of days into the future, and
wherein at least one route type in the set of possible route types indicates that (i) no routes are available for the selected day, or (ii) a holiday service is available for the selected day.
24. The computer-readable memory medium of
26. The scheduling system of
27. The scheduling system of
29. The scheduling system of
30. The scheduling system of
31. The scheduling system of
|
This application claims the benefit of Provisional Application No. 60/175,466, filed Jan. 10, 2000 and of Provisional Application No. 60/175,465, filed Jan. 10, 2000, which are incorporated herein by reference in their entirety.
The present invention relates to a method and system for controlling the scheduling of distribution routes and timeslots and, in particular, to computer software that dynamically schedules distribution routes and timeslots based upon a calendar and template system.
Present delivery environments provide static mechanisms for the scheduling and delivery of goods, or other products or services. In some environments, there are a fixed number of delivery vehicles and personnel, and orders for delivery are accepted based upon the capacity of these vehicles and personnel. For example, a flower shop may have two trucks and two drivers, and, based upon how its schedule fills up on a particular day, the shop may either accept an order or inform the customer that flowers cannot be delivered when desired. One disadvantage of such a system is that customers are disappointed when their needs cannot be met and may not return to the shop for future service. As another example, a pizza parlor may schedule deliveries based entirely upon the availability of a fixed pool of drivers and a history of order traffic. To handle its deliveries, the pizza parlor would typically schedule sufficient delivery trucks and personnel to accommodate an average delivery load for that day, based upon past order data. When the load exceeds the availability of drivers, the delivery times available for the delivery of more orders get pushed out so far that customers are apt to go elsewhere. The pizza parlor thus pays an opportunity cost for not having its delivery schedule able to dynamically handle a changing order environment.
Other environments have offered other solutions. For example, some environments provide load balancing of orders among a fixed set of delivery resources after the orders are made. For example, a beverage distributor might have a fleet of different types of delivery vehicles with various sizes and load capacities. In order to accommodate a variety of different types of customer orders, varying from small sandwich shops, to small convenience stores, then to large chain stores, the distributor needs to optimize deliveries across the fleet. Typically, the distributor performs load balancing by shutting off orders at a particular time of day and running an optimizing computer program to automatically assign particular orders to particular vehicles. The optimizing program uses information about each customer and about each vehicle to maximize the drive time efficiency of the distributor's fleet. One disadvantage of such a system is that orders are typically cut off early during the day because the system is static—it performs post-processing on the order data. Although such a solution optimizes the available resource, it doesn't address accommodating an ever-changing order environment.
Embodiments of the present invention provide computer-based methods and systems for dynamically scheduling the distribution of products and services among a system of routes and timeslots. Embodiments of the present invention provide a Route and Timeslot Scheduler (the “RTS”), which controls the creation, quantity, and allocation of schedulable timeslot segments (segments of time) for each timeslot of each route based upon a calendar and template system. Each route typically represents a geographic area to which products can be delivered. Each timeslot typically represents a window of time (one or more timeslot segments), during which delivery stops (or events) can be scheduled. A schedule of timeslot segments is created based upon defaults which are specified in the template system. A calendar system is provided to specify which routes and timeslots, which would otherwise be available based upon the template system, are actually applicable to be scheduled and subsequently allocated on a given calendar day.
In one embodiment, the RTS schedules timeslot segments for a designated potential order period. Another system or subsystem, programmed to interface to the RTS, can then allocate these scheduled timeslot segments to actual delivery stops or other events. The RTS allows a user or other system, manual or automated, to modify the current schedule by changing the number of scheduled timeslot segments available, the allocation and distribution of delivery stops to different timeslots and routes, the definitions of the timeslots and routes, and other similar information.
In yet another embodiment, the RTS includes an alert mechanism, which notifies a user when the number of actual delivery stops (allocated timeslot segments) have come within or exceeded a specified level, typically relative to the number of scheduled timeslot segments within a timeslot. In one embodiment, when the number of allocated timeslot segments are within one of the number of scheduled timeslot segments for a timeslot, a notification is provided to allow an increase of the number of scheduled timeslot segments or to otherwise load balance the system.
In another embodiment, the RTS supports the modification of the template system used to create a schedule. Routes, route types, and timeslots can be added, deleted, or otherwise modified. Further, the default number of schedulable timeslot segments can be changed. In some embodiments, the system can automatically update a current schedule to reflect changes made to the template data.
In yet another embodiment, the RTS supports the modification of the calendar system. Route type definitions can be modified and assigned to particular calendar days.
In another embodiment, the scheduled timeslots and timeslot segments, and potentially other aspects such as the template and calendar systems are unique to a particular customer fulfillment center, warehouse, or other facility.
In some embodiments, a rating system is used to allocate particular timeslot segments to specific orders or events.
Embodiments of the present invention provide computer-based methods and systems for dynamically scheduling the distribution of products and services among a system of routes and timeslots. Each route typically represents a geographic area to which products can be delivered. For example, a geographic area could be defined by a set of zip codes within a particular vicinity. Each timeslot represents a window of time, during which delivery stops can be scheduled. Timeslots may be of different lengths, for example, longer timeslots may be made available for routes within larger markets. The methods and systems of the present invention provide a standardized dynamic scheduling mechanism that can be used in a consistent manner by different facilities to support scheduling data that is unique to each facility. An example embodiment, which is currently used by an electronic storefront application to schedule the home delivery of groceries and related products, is described in further detail below. Use by the electronic storefront to schedule delivery times for particular orders is described in further detail in U.S. Provisional Application No. 60/175,465, filed on Jan. 10, 2000.
Although the routing and scheduling system is applied herein to the delivery of groceries and similar products and services, one skilled in the art will recognize that the methods and systems of the present invention can be applied to scheduling and/or delivery, or even of the manufacture, of any type of object or event that requires a “window” of time for performing some behavior. For example, such a system could be used to schedule the manufacture of certain components of a product, or the distribution of parts to various departments in a manufacturing facility, etc. In such a case, routes will be understood to encompass any grouping mechanism for scheduling such objects or events, and one or more events may be scheduled in a timeslot.
Embodiments of the present invention provide a Route and Timeslot Scheduler (the “RTS”), which controls the creation, quantity, and allocation of schedulable timeslot segments for each timeslot of a route based upon a calendar and template system. The template system provides default scheduling information for each day of the week. The calendar system provides specific information on allowed types of routes for a specific day. The two systems are combined, as discussed further below, to generate a schedule of timeslot segments for a specific day. The scheduled timeslot segments are the potentially fillable segments of time within a timeslot, which can be occupied by an order or event. For example, when an order is associated with a particular delivery timeslot, the appropriate timeslot segment is allocated to the order. One skilled in the art will recognize that one or more scheduled timeslot segments may be allocated to an order and that variations in which the scheduled timeslot segments are different length time segments are also contemplated. In one embodiment, the RTS supports the scheduling of timeslot segments up to some number of days into the future, presently sixteen. Other ranges of time periods into the future are also possible. One skilled in the art will recognize that, although the scheduled timeslot segments are generated consecutively for this number of days, the present invention could be used to generate a schedule for any arbitrary day in the future if it were desired.
The templates and calendar information that drive future schedule information can be dynamically modified and propagated to automatically revise a future day's schedule. In addition, the routes for each day as well as the timeslots and scheduled timeslot segments for each route are modifiable while the scheduling system is in use. The RTS is thus flexible and can dynamically respond to scheduling modifications based upon a myriad of factors, including, for example, road and weather conditions, delivery vehicle conditions and status, and schedule load.
The Route and Timeslot Scheduler organizes and maintains delivery scheduling data in route database 101 for one or more routes for a potential order period. A potential order period is a period of days for which actual orders can be scheduled for delivery. In one example embodiment, the routes are organized according to geographic data such as zip codes, but, as mentioned, the routes can be based upon any desired criteria. Each route is associated with a set of timeslots for scheduling the occurrence of a number of actual delivery stops/events for that route. Each timeslot is associated with a number of scheduled timeslot segments (also referred to as “scheduled stops”), which are based upon template data. To create a schedule for a particular day, the RTS creates in the route database 101 the same number of scheduled stops for a timeslot as the number of default timeslot segments that are specified in the timeslot template for that route for that day. These scheduled stops are “placeholders” in the database until they are actually allocated to a delivery order. When allocated, the scheduled stops are referred to as actual stops. The RTS maintains data on actual stops and, thus, can optionally provide an automatic post-processing mechanism for dynamically load balancing the actual stops across the scheduled stops of all routes for a particular day. As customer orders are allocated to scheduled stops, the delivery schedule is updated. Each night the RTS system preferably updates the route database to produce future schedules. The scheduled stops in these future schedules can then be allocated by any system that has been programmed to use the RTS route database; for example, an electronic storefront that schedules the delivery of groceries and related products using the RTS.
The user interface components 104-107 operate in conjunction with the route database 101 and the stored procedures 102 to generate scheduled stops based upon the calendar data and the template data. The Schedule component 104 is used to display and dynamically modify the current routing schedule for a designated day. It allows dynamic control of the number of scheduled stops available for each timeslot in each route. The User component 106 is used to set up various access privileges for each user of the RTS system. These privileges range from allowing a user to simply display schedule data to allowing complete display and edit privileges across all facilities and across all schedule data. The Template component 105 maintains template route data for each day of the week (e.g., Sunday through Saturday). Preferably, there are different daily templates for each warehouse, or other distribution facility. Each template contains the routes that are available (typically based upon geographic data) and the set of timeslots that can be scheduled for each route. Each timeslot for a route has associated with it a default number of timeslot segments. In addition, each route is associated with a particular route type so that routes that match only certain route types can be used as template data to create a particular day's schedule. The Route Calendar component 107 associates types of routes with each calendar day for as many days as supported by the calendar system. The types of routes that are associated with a particular calendar day dictate which route types are copied from the templates to create a schedule for that particular calendar day. In this way, the calendar provides a kind of “overriding” mechanism to control the default route data that is otherwise used from the template system to create a day's scheduled stops.
When the number of actual stops reaches within a designated number of the number of scheduled stops, an alert mechanism is used by RTS to allow a user with proper access privileges to modify the schedule. For example, upon receiving an alert, the user can change the number of scheduled stops to provide more delivery opportunities within that timeslot, or, the user can otherwise load balance the actual stops by distributing them to other routes or to newly created routes. One skilled in the art will recognize that the alert mechanism can be used to manually change the route data, or can be used in an automated fashion to automatically load balance the system. For example, the RTS could interface to a computerized load balancing system which redistributes timeslots, delivery stops, and routes upon receiving alerts.
The query icons 208 and 209 are used to enter and execute a database query, respectively, to designate which route data to display on Schedule form 201. Icons 210 and 211 are used to insert a new route or remove a route respectively. Although not discussed with respect to the other example display screens in
The Setup button 206 on the Schedule form is provided for users having appropriate administrative privileges to invoke the other components of the RTS user interface, such as the Template form, the User form, and the Calendar form.
The High Date button 409 is selected by a user to determine the highest date in the future for which orders can be placed for the facility indicated in warehouse field 404. The steps performed by the RTS to retrieve this date are discussed in detail with respect to the GetHighestDate routine in
The Copy button 411 is used to efficiently copy the route information from one route to another route, which allows the efficient population of data for the template. This button invokes the Copy Route dialog, discussed below with respect to
In one embodiment, each timeslot of a route in the RTS is associated with geographical data. The geographical data represents a way to group orders such that they can be efficiently delivered by a particular delivery vehicle at a particular time. For example, the geographical data may be represented by zip codes. Zip codes are associated with a particular timeslot by, for example, double-clicking on a potential stop entry 407. This action invokes the Zip Code window, discussed with respect to
The setup button 206 in
Setup button 206 in
For example, suppose the day of the month entry 807 corresponding to Sep. 5, 1999 is modified to list only route type “CLOSED” instead of the route type list shown in 808 (“REGULAR” and “FREEBAG”). Then, when the calendar is used to create scheduled stops, no routes will be provided in the schedule for Sep. 5, 1999, even though the template data for a Sunday may contain default routes that correspond to “REGULAR” and “FREEBAG” route types.
For the purposes of example, a REGULAR route is a route available for normal days and normal deliveries, and a FREEBAG route is a route that allows the distribution of free produce bags, for example, to first time customers. One skilled in the art will recognize that any type of route can be defined. The route types for a particular calendar day can be changed using the list box 808 contained in each day entry 807. In addition, a user with administrative privileges may use the Route Type button 806 to change the available list of route types.
One skilled in the art will recognize that exemplary Route and Timeslot Schedulers can be implemented as one or more code modules and may be implemented in a distributed environment where the various programs shown as currently residing in the memory 1005 are instead distributed among several computer systems. In addition, a computer system may itself be distributed. For example, referring to
In an example embodiment, the RTS is implemented using the Oracle Forms Developer 2000 environment, which enables the user interface to be presented using a series of database driven forms, such as those shown in
The AdjustScheduledStops routine receives as input a warehouse identifier so that all of the existing scheduled stops for that warehouse can be updated appropriately when a template is changed. In step 1401, the routine determines and retrieves the set of timeslots that match all of the routes for the warehouse identified by the designated warehouse identifier. One skilled in the art will recognize that this routine could be modified to refresh only a particular day of the week or a particular calendar day by only updating the MemberRoute entries for the timeslots and routes of a designated day. Other such modifications are also contemplated. In steps 1402-1407, the routine loops over the timeslot entries retrieved to adjust the corresponding MemberRoute entries. In particular, in step 1402, the routine determines whether there are any more timeslot entries to process and, if not, returns, else continues in step 1403. In step 1403, the routine selects the next timeslot entry to process and retrieves the number of default delivery stops (potential stops, as defined by the template data) for that timeslot from the TimeSlot table 1107. The routine next retrieves, in step 1404, the number of MemberRoute entries that correspond to the selected timeslot (existing scheduled stops). Then, in step 1405, the routine determines whether or not the number of potential stops (which may have been adjusted) corresponds to the number of existing MemberRoute entries. If the number of potential stops is less than the number of existing scheduled stops (which have been created as MemberRoute entries), then the routine needs to delete existing scheduled stops in the MemberRoute table 1110 until the number of scheduled stops corresponds to the number of potential stops. Specifically, if the number of existing scheduled stops in the MemberRoute table 1110 is less than the number of potential stops, then the routine continues in step 1406, else continues in step 1407. In step 1406, the routine inserts additional MemberRoute entries to correspond to the newly added potential stops until the number of corresponding MemberRoute entries corresponds to the number of potential stops. The routine then continues to the beginning of the loop in step 1402. In step 1407, the routine deletes empty MemberRoute entries to reduce the number of existing scheduled stops down to the newly adjusted number of potential stops. Preferably, the routine does not delete MemberRoute entries that are associated with a current sales order or with a customer (member), because such an association indicates that the scheduled stop has already been allocated to a particular customer or order. The routine then continues to the beginning of the loop in step 1402.
Specifically, in step 1501, the routine obtains a route identifier for the designated source route for the designated source day. The route identifier can be obtained, for example, from Route table 1104. In step 1502, the routine determines whether there is a route entry in the Route table 1104 that corresponds to the designated destination route and day and, if not, creates a new entry for the destination route and day, otherwise edits the located route entry. If a new destination route entry is created, its initial data is copied from the source route entry data. In step 1503, the routine retrieves from the TimeSlot table 1107 the set of timeslot entries that corresponds to the designated source route and day. The routine then loops in steps 1504-1508 to copy these timeslot entries as appropriate to the new or existing timeslot entries that correspond to the designated destination route and day. In step 1504, the routine selects the next timeslot entry. In step 1505, the routine determines whether there are more timeslot entries to process and if so, continues in step 1506, else returns. In step 1506, the routine determines whether there already exists a timeslot entry that corresponds to the destination route and day and, if not, creates one, otherwise uses the existing timeslot entry. The routine then copies the timeslot data from the selected timeslot entry to the destination timeslot entry. In step 1507, the routine retrieves the geographic data that is associated with the selected (source) timeslot, for example the zip code data that is stored in TimeSlotZip table 1108. As mentioned earlier, this geographic data can be any type of data that is used to define a route, which for the purposes of this example, are zip codes. In step 1508, the routine determines whether there is an existing entry for the destination geographic data and, if so, uses this entry, otherwise creates a new entry. The source geographic data entry is then copied to the destination geographic data entry. The routine then continues to the beginning of the loop in step 1504.
Specifically, in step 1601, the CreateDailyStops routine invokes the routine GetHighestDate, which is described in detail in
Although specific embodiments of, and examples for, the present invention are described herein for illustrative purposes, it is not intended that the invention be limited to these embodiments. Equivalent methods, structures, processes, steps, and other modifications within the spirit of the invention fall within the scope of the invention. For example, the teachings provided herein of the present invention can be applied to other areas of scheduling systems, such as scheduling vehicle maintenance, demonstrations at a conference, or the scheduling of a labor pool to various construction jobs. In addition, the teachings may be applied to other types of distribution systems, such as the distribution of inventory parts to different factories to be assembled into various products. These and other changes may be made to the invention in light of the above detailed description. Accordingly, the invention is not limited by the disclosure, but instead the scope of the present invention is to be determined by the following claims.
Smith, Michael L., Parker, John E.
Patent | Priority | Assignee | Title |
10002354, | Jun 26 2003 | PayPal, Inc | Multi currency exchanges between participants |
10062104, | Jun 10 2002 | Ebay Inc. | Customizing an application |
10068274, | Apr 23 2004 | Ebay Inc. | Method and system to display and search in a language independent manner |
10091335, | Nov 10 2000 | June Ray Limited | Data transmission and rendering techniques by a device via a network |
10133991, | Sep 18 2014 | ServiceNow, Inc. | System and method for efficient travel time and route computation |
10134290, | Dec 03 2015 | AT&T Intellectual Property I, L.P.; AT&T MOBILITY II LLC | Drone piggybacking on vehicles |
10202192, | Apr 29 2016 | United Parcel Service of America, Inc. | Methods for picking up a parcel via an unmanned aerial vehicle |
10210212, | Jun 15 2017 | SAP SE | Dynamic layout management for robotics warehouse system |
10255577, | Dec 22 2011 | Amazon Technologies, Inc | System and method for generating a delivery plan for multi-tier delivery schemes |
10453022, | Apr 29 2016 | United Parcel Service of America, Inc. | Unmanned aerial vehicle and landing system |
10460281, | Apr 29 2016 | United Parcel Service of America, Inc. | Delivery vehicle including an unmanned aerial vehicle support mechanism |
10482414, | Apr 29 2016 | United Parcel Service of America, Inc. | Unmanned aerial vehicle chassis |
10542121, | Aug 23 2006 | Ebay Inc. | Dynamic configuration of multi-platform applications |
10586201, | Apr 29 2016 | United Parcel Service of America, Inc | Methods for landing an unmanned aerial vehicle |
10606960, | Oct 11 2001 | Ebay Inc. | System and method to facilitate translation of communications between entities over a network |
10706382, | Apr 29 2016 | United Parcel Service of America, Inc. | Delivery vehicle including an unmanned aerial vehicle loading robot |
10726381, | Apr 29 2016 | United Parcel Service of America, Inc | Methods for dispatching unmanned aerial delivery vehicles |
10730626, | Apr 29 2016 | United Parcel Service of America, Inc | Methods of photo matching and photo confirmation for parcel pickup and delivery |
10775792, | Jun 13 2017 | United Parcel Service of America, Inc | Autonomously delivering items to corresponding delivery locations proximate a delivery route |
10796269, | Apr 29 2016 | United Parcel Service of America, Inc. | Methods for sending and receiving notifications in an unmanned aerial vehicle delivery system |
10817810, | Sep 18 2014 | ServiceNow, Inc. | System and method for efficient travel time and route computation |
10860750, | Jun 15 2017 | SAP SE | Model driven layout design for robotics warehouse |
10860971, | Apr 29 2016 | United Parcel Service of America, Inc. | Methods for parcel delivery and pickup via an unmanned aerial vehicle |
10915946, | Jun 10 2002 | Ebay Inc. | System, method, and medium for propagating a plurality of listings to geographically targeted websites using a single data source |
11435744, | Jun 13 2017 | United Parcel Service of America, Inc | Autonomously delivering items to corresponding delivery locations proximate a delivery route |
11445037, | Aug 23 2006 | eBay, Inc. | Dynamic configuration of multi-platform applications |
11472552, | Apr 29 2016 | United Parcel Service of America, Inc. | Methods of photo matching and photo confirmation for parcel pickup and delivery |
11475395, | Jan 19 2018 | Walmart Apollo, LLC | Systems and methods for combinatorial resource optimization |
11481723, | Nov 18 2016 | WAYFORTH INC | Method, system, and media for management and organization of personal property |
11574277, | Dec 22 2011 | Amazon Technologies, Inc. | System and method for generating a delivery plan for multi-tier delivery schemes |
11615368, | Nov 01 2018 | Walmart Apollo, LLC | Systems and methods for determining delivery time and route assignments |
7313530, | Apr 10 2001 | Haier US Appliance Solutions, Inc | Methods and systems for generating and displaying the capacity of a delivery management system |
7437305, | May 11 1999 | June Ray Limited | Scheduling delivery of products via the internet |
7493554, | Nov 10 2000 | June Ray Limited | Data transmission and rendering techniques implemented over a client-server system |
7509407, | May 11 1999 | June Ray Limited | Load balancing technique implemented in a data network device utilizing a data cache |
7532947, | May 11 1999 | June Ray Limited | Method and system for order fulfillment in a distribution center |
7657452, | Nov 20 2003 | GPCP IP HOLDINGS LLC | System and method for tour optimization |
7792712, | May 11 1999 | June Ray Limited | Techniques for processing customer service transactions at customer site using mobile computing device |
7801772, | Mar 19 2001 | June Ray Limited | Method and apparatus for facilitating online purchase of regulated products over a data network |
7828202, | Feb 24 2005 | E-COURIER UK LTD | System and method for controlling the transport of articles |
7853870, | Nov 10 2000 | June Ray Limited | Data transmission and rendering techniques implemented over a client-server system |
7860738, | Aug 10 2001 | GOLDMAN SACHS LENDING PARTNERS LLC, AS COLLATERAL AGENT; ALTER DOMUS US LLC, AS COLLATERAL AGENT | Systems and methods for scheduling reoccurring deliveries and pickups |
7894938, | Mar 31 2005 | CANTALOUPE, INC | Vending machine service scheduling |
7895082, | Jun 10 2002 | Ebay Inc. | Method and system for scheduling transaction listings at a network-based transaction facility |
7904975, | May 11 1999 | June Ray Limited | Real-time display of available products over the internet |
7925524, | Jul 14 2000 | United Parcel Service of America, Inc. | Method and system of delivering items using overlapping delivery windows |
7930416, | May 11 1999 | June Ray Limited | Load balancing technique implemented in a data network device utilizing a data cache |
7941348, | Jun 10 2002 | Ebay Inc.; eBay Inc | Method and system for scheduling transaction listings at a network-based transaction facility |
7970751, | Feb 28 2002 | System and method for performing local searches across user defined events | |
8010411, | Mar 19 2001 | June Ray Limited | Restricted purchase of regulated items over a network |
8078505, | Jun 10 2002 | Ebay Inc.; eBay Inc | Method and system for automatically updating a seller application utilized in a network-based transaction facility |
8090626, | Dec 27 2000 | June Ray Limited | Item substitution for unavailable items relating to a customer order |
8140183, | May 11 1999 | June Ray Limited | Method and system for order fulfillment in a distribution center |
8140592, | Aug 19 2004 | The United States Postal Service | Delivery operations information system with route adjustment feature and methods of use |
8170915, | May 11 1999 | June Ray Limited | Online store product availability |
8195494, | Jul 14 2000 | United Parcel Service of America, Inc. | Method and system of delivering items using overlapping delivery windows |
8244646, | Jun 09 2009 | FISERV, INC.; FISERV, INC | Systems and methods for determining estimated lead times |
8255286, | Jun 10 2002 | Ebay Inc. | Publishing user submissions at a network-based facility |
8260647, | Aug 19 2004 | The United States Postal Service | Delivery operations information system and methods of use |
8311867, | Apr 21 2009 | CANTALOUPE, INC | Vending machine service scheduling taking into account hardness data indicating importance of minimizing the number of service visits to a vending machine and/or to the vending machine's location |
8315802, | Feb 11 2009 | Verizon Patent and Licensing Inc | Systems and methods for analyzing the use of mobile resources |
8326708, | May 11 1999 | June Ray Limited | Techniques for processing customer service transactions at customer site using mobile computing device |
8412641, | Nov 22 2002 | United States Postal Service | Surface air management systems and methods |
8433511, | Apr 15 2003 | GOLDMAN SACHS LENDING PARTNERS LLC, AS COLLATERAL AGENT; ALTER DOMUS US LLC, AS COLLATERAL AGENT | Rush hour modeling for routing and scheduling |
8433659, | Jun 09 2009 | FISERV, INC. | Systems and methods for determining estimated lead times |
8442871, | Jun 10 2002 | Ebay Inc. | Publishing user submissions |
8443010, | Aug 19 2004 | The United States Postal Service | Delivery operations information system with route and unit maintenance feature and methods of use |
8571705, | Mar 31 2005 | CANTALOUPE, INC | Vending machine service scheduling |
8600821, | May 11 1999 | June Ray Limited | Webstore supporting multiple merchants |
8601365, | Nov 10 2000 | June Ray Limited | Data transmission and rendering techniques implemented over a client-server system |
8626333, | May 11 1999 | June Ray Limited | Method and system for order fulfillment in a distribution center |
8635113, | May 11 1999 | June Ray Limited | Integrated online store |
8639829, | Oct 11 2001 | Ebay Inc. | System and method to facilitate translation of communications between entities over a network |
8655487, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
8655749, | Sep 30 2004 | SAP SE | Methods and systems for distributing stock in a distribution network |
8719041, | Jun 10 2002 | Ebay Inc.; EBAY, INC | Method and system for customizing a network-based transaction facility seller application |
8725407, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
8732037, | Oct 16 2000 | Ebay Inc. | Method and system for providing a record |
8751153, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
8751334, | Dec 27 2000 | June Ray Limited | Item substitution for unavailable items relating to a customer order |
8762291, | Jun 14 2010 | L AIR LIQUIDE SOCIETE ANONYME POUR L ETUDE ET L EXPLOITATION DES PROCEDES GEORGES CLAUDE | Robust optimization of bulk gas distribution |
8799046, | Dec 27 2006 | Verizon Patent and Licensing Inc | Dispatching prioritized jobs at multiple locations to workers |
8799218, | Dec 01 2006 | eBay Inc | Business channel synchronization |
8849563, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
8880428, | Mar 19 2001 | June Ray Limited | Restricted purchase of regulated items over a network |
8903852, | Jan 31 2012 | GOOGLE LLC | Experience sharing system and method |
8972165, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
9082100, | Nov 09 2009 | United Parcel Service of America, Inc. | Enhanced location information for points of interest |
9092792, | Jun 10 2002 | Ebay Inc. | Customizing an application |
9135575, | May 09 2005 | GOLDMAN SACHS LENDING PARTNERS LLC, AS COLLATERAL AGENT; ALTER DOMUS US LLC, AS COLLATERAL AGENT | Systems and methods for routing and scheduling visits to delivery locations |
9189568, | Apr 23 2004 | Ebay Inc.; eBay Inc | Method and system to display and search in a language independent manner |
9275403, | Jan 31 2012 | GOOGLE LLC | Experience sharing system and method |
9286588, | Mar 31 2005 | CANTALOUPE, INC | Vending machine service scheduling |
9342808, | May 11 1999 | June Ray Limited | Load balancing technique implemented in a data network device utilizing a data cache |
9378511, | Jul 15 2009 | International Business Machines Corporation | Real-time appointment of enterprise mobile agents in response to customer requests |
9396451, | May 11 1999 | June Ray Limited | Method and system for order fulfillment in a distribution center |
9413808, | Nov 10 2000 | June Ray Limited | Data transmission and rendering techniques by a device via a network |
9514128, | Oct 11 2001 | eBay Inc | System and method to facilitate translation of communications between entities over a network |
9626441, | May 13 2011 | INOLEX GROUP, INC | Calendar-based search engine |
9697547, | May 11 1999 | June Ray Limited | Integrated online store |
9841757, | Dec 03 2015 | AT&T Intellectual Property I, L.P.; AT&T MOBILITY II LLC; AT&T Intellectual Property I, L P | Drone piggybacking on vehicles |
9865010, | May 11 1999 | June Ray Limited | Online store product availability |
9911087, | Sep 18 2014 | ServiceNow, Inc. | System and method for efficient travel time and route computation |
9921066, | Feb 11 2009 | Verizon Patent and Licensing Inc | Systems and methods for analyzing the use of mobile resources |
9928749, | Apr 29 2016 | United Parcel Service of America, Inc | Methods for delivering a parcel to a restricted access area |
9957048, | Apr 29 2016 | United Parcel Service of America, Inc | Unmanned aerial vehicle including a removable power source |
9969495, | Apr 29 2016 | United Parcel Service of America, Inc | Unmanned aerial vehicle pick-up and delivery systems |
9981745, | Apr 29 2016 | United Parcel Service of America, Inc | Unmanned aerial vehicle including a removable parcel carrier |
Patent | Priority | Assignee | Title |
2781643, | |||
3406532, | |||
3670867, | |||
4213310, | Apr 03 1979 | IGLOO PRODUCTS CORP | Thermal container with quick-release lid-mounted flask |
4455453, | Jan 26 1979 | Metretek, Incorporated | Apparatus and method for remote sensor monitoring, metering and control |
4656591, | Feb 03 1983 | Goody Products, Inc. | Order processing method and apparatus (II) |
4799156, | Oct 01 1986 | Strategic Processing Corporation | Interactive market management system |
4887208, | Dec 18 1987 | Sales and inventory control system | |
4936738, | Apr 26 1988 | Food Plant Engineering, Inc. | Alternating push back selective rack storage system |
5038283, | Apr 13 1989 | Panduit Corp. | Shipping method |
5093794, | Aug 22 1989 | United Technologies Corporation | Job scheduling system |
5105627, | Apr 20 1990 | NIHON FREEZER CO , LTD | Cryopreservation container of animal cell |
5122959, | Oct 28 1988 | LOGISTICARE SOLUTIONS, LLC | Transportation dispatch and delivery tracking system |
5235819, | Mar 02 1988 | Pallet-Cooler KB | Method and apparatus for storing and distributing materials |
5237158, | Oct 10 1989 | Unisys Corporation | Image-based document processing system providing for priority document shipment |
5246332, | May 13 1985 | Computer Aided Systems, Inc. | System for delivery |
5265006, | Dec 14 1990 | Accenture Global Services Limited | Demand scheduled partial carrier load planning system for the transportation industry |
5272638, | May 31 1991 | Texas Instruments Incorporated; TEXAS INSTRUMENTS INCORPORATED A CORPORATION OF DE | Systems and methods for planning the scheduling travel routes |
5273392, | Jan 02 1986 | Computer Aided Systems, Inc. | Automated work center and method |
5322406, | Aug 13 1990 | SIEMENS DEMATIC POSTAL AUTOMATION, L P | Order filling system with cartridge dispenser |
5363310, | Apr 09 1992 | International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION A CORPORATION OF NY | System and method for partial order filling |
5395206, | Mar 17 1992 | Method and apparatus for filling orders in a warehouse | |
5428546, | Oct 16 1992 | TELEMATICS CORPORATION | Method and apparatus for tracking vehicle location |
5533361, | Dec 22 1994 | Insulated grocery cart cooler | |
5548518, | May 31 1994 | International Business Machines Corporation; IBM Corporation | Allocation method for generating a production schedule |
5593269, | Jan 02 1986 | Computer Aided Systems, Inc. | Automated work center |
5615121, | Jan 31 1995 | Qwest Communications International Inc | System and method for scheduling service providers to perform customer service requests |
5666493, | Aug 24 1993 | LYKES BROS , INC | System for managing customer orders and method of implementation |
5694551, | May 20 1993 | Moore Business Forms, Inc. | Computer integration network for channeling customer orders through a centralized computer to various suppliers |
5712989, | Apr 02 1993 | DEUTSCHE BANK AG, NEW YORK BRANCH | Just-in-time requisition and inventory management system |
5758313, | Oct 16 1992 | TELEMATICS CORPORATION | Method and apparatus for tracking vehicle location |
5758328, | Feb 22 1996 | SOURCE SEARCH TECHNOLOGIES, LLC | Computerized quotation system and method |
5761673, | Jan 31 1996 | Oracle International Corporation | Method and apparatus for generating dynamic web pages by invoking a predefined procedural package stored in a database |
5768139, | Aug 13 1990 | SIEMENS DEMATIC POSTAL AUTOMATION, L P | Automated method for filling orders with cartridge dispensers |
5809479, | Jul 21 1994 | Round Rock Research, LLC | On-time delivery, tracking and reporting |
5826242, | Oct 06 1995 | Meta Platforms, Inc | Method of on-line shopping utilizing persistent client state in a hypertext transfer protocol based client-server system |
5826825, | Apr 12 1994 | Automatically actuated cargo and personnel snatching apparatus with distance sensos, magnets and pivot pins for assistance | |
5831860, | Apr 28 1995 | Ball Horticultural Company | Package special delivery service |
5832457, | May 06 1991 | Catalina Marketing Corporation | Method and apparatus for selective distribution of discount coupons based on prior customer behavior |
5834753, | Aug 08 1986 | Intermec IP CORP | Laser scanner module having integral interface with hand-held data capture terminal proximity and label sensing, and enhanced sensitivity and power efficiency |
5835914, | Feb 18 1997 | JPMORGAN CHASE BANK, N A , AS SUCCESSOR AGENT | Method for preserving and reusing software objects associated with web pages |
5839117, | Aug 19 1994 | Accenture Global Services Limited | Computerized event-driven routing system and method for use in an order entry system |
5848395, | Mar 23 1996 | International Computers Limited | Appointment booking and scheduling system |
5878401, | Feb 09 1996 | Sales and inventory method and apparatus | |
5880443, | Jan 24 1990 | MCKESSON AUTOMATION INC | Automated system for selecting packages from a cylindrical storage area |
5893076, | Jan 16 1996 | International Business Machines Corporation | Supplier driven commerce transaction processing system and methodology |
5894554, | Apr 23 1996 | Microsoft Corporation | System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests |
5897622, | Oct 16 1996 | Microsoft Technology Licensing, LLC | Electronic shopping and merchandising system |
5897629, | May 29 1996 | Fujitsu Limited | Apparatus for solving optimization problems and delivery planning system |
5899088, | May 14 1998 | THROWLEIGH TECHNOLLGIES, LLC | Phase change system for temperature control |
5910896, | Nov 12 1996 | Syncada LLC | Shipment transaction system and an arrangement thereof |
5918213, | Dec 22 1995 | Verizon Patent and Licensing Inc | System and method for automated remote previewing and purchasing of music, video, software, and other multimedia products |
5943652, | Feb 25 1994 | 3M Innovative Properties Company | Resource assignment and scheduling system |
5943841, | Jul 18 1995 | Knapp Holding GmbH | Commissioning system |
5956709, | Jul 28 1997 | Dynamic data assembling on internet client side | |
5963919, | Dec 23 1996 | Nortel Networks Limited | Inventory management strategy evaluation system and method |
5979757, | Sep 05 1996 | Symbol Technologies, LLC | Method and system for presenting item information using a portable data terminal |
6023683, | Aug 10 1994 | EPLUS INC | Electronic sourcing system and method |
6061607, | Jul 18 1997 | St. Onge Company | Order pick system |
6070147, | Jul 02 1996 | IDLOYALTY, LLC | Customer identification and marketing analysis systems |
6073108, | Jun 21 1996 | Paul, Hastings, Janofsky & Walker | Task-based classification and analysis system |
6081789, | May 24 1996 | CXT SYSTEMS, INC | Automated and independently accessible inventory information exchange system |
6083279, | Oct 10 1996 | International Business Machines Corporation; IBM Corporation | Platform independent technique for transferring software programs over a network |
6085170, | Nov 28 1996 | Hitachi, Ltd. | Delivery managing system |
6101481, | Jan 25 1996 | TASKEY PTY LTD | Task management system |
6140922, | Oct 30 1996 | Fujitsu Limited | System for indicating locations of sales items, method thereof, and apparatus thereof |
6178510, | Sep 04 1997 | Spielo International Canada, ULC | Technique for secure network transactions |
6185625, | Dec 20 1996 | Intel Corporation | Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object |
6215952, | Apr 04 1996 | Pioneer Electronic Corporation | Information record medium, apparatus for recording the same and apparatus for reproducing the same |
6233543, | Apr 29 1998 | OpenConnect Systems Incorporated | Server and terminal emulator for persistent connection to a legacy host system with printer emulation |
6249801, | Jul 15 1998 | RADWARE LTD | Load balancing |
6260024, | Dec 02 1998 | Red Hat, Inc | Method and apparatus for facilitating buyer-driven purchase orders on a commercial network system |
6275812, | Dec 08 1998 | Lucent Technologies, Inc.; Lucent Technologies, INC | Intelligent system for dynamic resource management |
6289260, | Feb 05 1998 | ST ONGE COMPANY | Automated order pick process |
6292784, | Jul 21 1994 | Round Rock Research, LLC | On-time delivery, tracking, and reporting |
6324520, | Jan 22 1998 | PayPal, Inc | Method and apparatus for collecting and applying vending machine demand information |
6332334, | May 10 1999 | June Ray Limited | Method and apparatus for handling and transporting temperature-sensitive items |
6341269, | Jan 26 1999 | Mercani Technologies, Inc. | System, method and article of manufacture to optimize inventory and merchandising shelf space utilization |
6343275, | Dec 22 1997 | BIG BABOON, INC | Integrated business-to-business web commerce and business automation system |
6397246, | Nov 13 1998 | GLOBALFOUNDRIES Inc | Method and system for processing document requests in a network system |
6405173, | Mar 05 1998 | CGI TECHNOLOGIES AND SOLUTIONS INC | Decision management system providing qualitative account/customer assessment via point in time simulation |
6424947, | Sep 29 1997 | SYNAMEDIA LIMITED | Distributed IRD system |
6445976, | Jul 27 2000 | JOURNEY GROUP PLC | Method for delivering products for human consumption from a manufacturing center to passenger carrying vehicles |
6453306, | Jan 26 1998 | ICT SOFTWARE S A | Internet commerce method and apparatus |
6463345, | Jan 04 1999 | International Business Machines Corporation | Regenerative available to promise |
6463420, | Dec 30 1999 | General Electric Company | Online tracking of delivery status information over a computer network |
6490567, | Jan 15 1997 | RPX Corporation | System and method for distributed content electronic commerce |
6496205, | Jun 03 1996 | Rovi Technologies Corporation | User interface for controlling audio functions in a web browser |
6505093, | May 03 2000 | SI HANDLING SYSTEMS, INC | Automated order filling method and system |
6505171, | Feb 04 2000 | System and method for handling purchasing transactions over a computer network | |
6526392, | Aug 26 1998 | International Business Machines Corporation; IBM Corporation | Method and system for yield managed service contract pricing |
6530518, | May 19 2000 | SABIC INNOVATIVE PLASTICS IP B V | Method, system and storage medium for viewing product delivery information |
6567786, | Sep 16 1999 | International Business Machines Corporation | System and method for increasing the effectiveness of customer contact strategies |
6571213, | Dec 30 1999 | Pitney Bowes Inc; PINEY BOWES INC | Router utility for a parcel shipping system |
6578005, | Nov 22 1996 | TRIMBLE MRM LTD | Method and apparatus for resource allocation when schedule changes are incorporated in real time |
6598027, | Nov 16 1999 | XS, INC | Systems, methods and computer program products for conducting regulation-compliant commercial transactions of regulated goods via a computer network |
6622127, | May 11 1999 | June Ray Limited | Order allocation to select from inventory locations stocking few units of inventory |
6654726, | Nov 05 1999 | Ford Motor Company | Communication schema of online system and method of status inquiry and tracking related to orders for consumer product having specific configurations |
6697964, | Mar 23 2000 | Cisco Technology, Inc | HTTP-based load generator for testing an application server configured for dynamically generating web pages for voice enabled web applications |
6741995, | Mar 23 1999 | HON HAI PRECISION INDUSTRY, LTD | Method for dynamically creating a profile |
6748418, | Jun 18 1999 | International Business Machines Corporation | Technique for permitting collaboration between web browsers and adding content to HTTP messages bound for web browsers |
6763496, | Mar 31 1999 | Microsoft Technology Licensing, LLC | Method for promoting contextual information to display pages containing hyperlinks |
6862572, | Apr 21 2000 | System and method for facilitating interaction between businesses, delivery agents, and customers | |
6970837, | Sep 04 1996 | GROUPON, INC | Methods and apparatus wherein a buyer arranges to purchase a first product using a communication network and subsequently takes possession of a substitute product at a retailer |
6990460, | Oct 19 2000 | Peapod, Inc.; PEAPOD, INC , A DELAWARE CORPORATION | Dynamic demand management |
20010037229, | |||
20010042021, | |||
20010047285, | |||
20010047310, | |||
20010049619, | |||
20010049672, | |||
20020004766, | |||
20020013950, | |||
20020038224, | |||
20020049853, | |||
20020065700, | |||
20020188530, | |||
20020194087, | |||
20030045340, | |||
20030079227, | |||
20030233190, | |||
20040236635, | |||
20050027580, | |||
20050144641, | |||
FR2696722, | |||
GB2265032, | |||
H1743, | |||
WO9907121, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jul 11 2000 | SMITH, MICHAEL L | HOMEGROCER COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011647 | /0880 | |
Mar 13 2001 | PARKER, JOHN E | HOMEGROCER COM, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011647 | /0880 | |
Mar 11 2002 | HOMEGROCER COM, INC | Kaiser Foundation Hospitals | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012774 | /0430 | |
May 20 2009 | Kaiser Foundation Hospitals | IpVenture, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 022708 | /0812 | |
May 20 2009 | IpVenture, Inc | Kaiser Foundation Hospitals | MEMORANDUM OF SECURITY INTEREST AND LIEN | 022714 | /0085 | |
Sep 30 2014 | Kaiser Foundation Hospitals | IpVenture, Inc | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 033862 | /0278 | |
Oct 02 2014 | IpVenture, Inc | June Ray Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 034037 | /0672 |
Date | Maintenance Fee Events |
Jan 05 2011 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Jan 07 2015 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Jan 17 2019 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Jul 31 2010 | 4 years fee payment window open |
Jan 31 2011 | 6 months grace period start (w surcharge) |
Jul 31 2011 | patent expiry (for year 4) |
Jul 31 2013 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jul 31 2014 | 8 years fee payment window open |
Jan 31 2015 | 6 months grace period start (w surcharge) |
Jul 31 2015 | patent expiry (for year 8) |
Jul 31 2017 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jul 31 2018 | 12 years fee payment window open |
Jan 31 2019 | 6 months grace period start (w surcharge) |
Jul 31 2019 | patent expiry (for year 12) |
Jul 31 2021 | 2 years to revive unintentionally abandoned end. (for year 12) |