Distribution centers and other storage facilities store products until the products are ordered and then distribute the products for orders via trucks or other delivery modalities to retail stores or other destinations. This order satisfaction process, referred to “orderfilling”, requires that the specific products for the order be retrieved from their storage locations by facility workers and delivered to a loading area. Once at the loading area the products are frequently wrapped on pallets before being loaded into a truck, shipping container or other transport modality for delivery. To assist with the loading process, the orders frequently must be delivered to the loading area in a specified sequence and satisfy specified time constraints
In one embodiment, a system for orderfilling trip allocation includes one or more databases holding historical trip performance data, facility worker data and available trip data. The system further includes a computing device equipped with at least one processor and configured to execute an allocation module. When executed, the allocation module identifies a number of available trips to be allocated during a defined time period in a facility using the available trip data and ranks each available trip for difficulty based on characteristics of each available trip using the historical trip performance data. The allocation module when executed additionally identifies available facility workers in the facility during the defined time period using the facility worker data and assigns each available facility worker to a tenure category based on an amount of time the facility worker has worked at the facility. The allocation module maps each ranked available trip to a tenure category and allocates a mapped trip to an available facility worker that is assigned to the same tenure category.
In another embodiment, a computing-device implemented method for orderfilling trip allocation includes the step of identifying a number of available trips to be allocated during a defined time period in a facility using the available trip data. The method further includes ranking each available trip for difficulty based on characteristics of each available trip using the historical trip performance data and identifying available facility workers in the facility during the defined time period using the facility worker data. The method also includes assigning each available facility worker to a tenure category based on an amount of time the facility worker has worked at the facility and mapping each ranked available trip to a tenure category. The mapped trip is then allocated to an available facility worker that is assigned to the same tenure category.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the invention and, together with the description, help to explain the invention. In the drawings:
Distribution centers, and other facilities that perform orderfilling, typically include a large number of aisles in a warehouse-type setting. These aisles include multiple modular locations, referred to herein as “slots” or “slot locations”, that are frequently arranged as a series of shelving units. Product cases are often stored on these shelving units. The product cases have varying weights depending upon the type of product. Facility workers, who are also referred to herein as “orderfillers” are assigned to retrieve the product cases, frequently with the aid of pallet jacks pulled by the facility worker which typically come in one or two pallet configurations. To fill an order to load a truck or other delivery container, the order is broken up into multiple parts containing lists of products to retrieve. Each of these parts of the order is assigned to a different facility worker and requires a traversal of the facility by the orderfiller which is referred to herein as a “trip”. When the orderfiller arrives at a location in the facility of a product needed for the trip he or she moves one or more cases of the product to the pallet jack as required. It will be appreciated that the number of aisles traversed, the number of locations/slots visited in the aisles, the number of product cases retrieved and the weight of the product cases during a trip will vary based upon the particular requirements of the trip.
In one embodiment, a delivery order may be segmented into multiple orderfilling trips that need to be performed by multiple facility workers. The facility workers will vary in experience levels as some will have worked longer at the facility than others. The initial segmentation of the order that is done prior to allocation may be done subject to a number of constraints including, but not limited to, weight, volume, product type and location constraints. For example, different products in an order that are physically located in close proximity within the facility may be combined into a single trip. Likewise similar types of products (frozen goods, perishable produce or general merchandise) may also be grouped into a single trip. Regardless of the particular mechanism used for dividing the order, once the order has been divided into multiple trips (i.e. available trips); an allocation module is executed that examines the individual available trips for pre-specified characteristics. In one embodiment, the characteristics of the trip are the number of aisles required to be traversed, the number of locations/slots required to be visited in the aisles, the number of product cases retrieved and the weight of the product cases in the trip. Using historical performance data (i.e. data from past trips performed), it can be seen that trips with particular values for these characteristics are expected to take certain amounts of time to complete with some trips being more difficult than others. Accordingly, in one embodiment, each characteristic for a particular trip (e.g. the trip will require eight aisles to be traversed, one hundred and ten cases to be retrieved, at seven locations and the products will weigh three hundred pounds) is assigned a separate difficulty category and the combination provides an overall difficulty ranking for the trip.
As illustrated,
The individual scores for the separate characteristics are combined to form an overall difficulty category ranking for an available trip. With reference to
In one embodiment, the trip characteristics are equally weighted in determining an overall difficulty ranking for an available trip. For example, an AAAB trip difficulty ranking may be processed by the allocation module in an equally weighted numerical manner (with A=1, B=2, C=3, D=4 and E=5) as 1+1+1+2/4=1.25 trip difficulty ranking. In another embodiment, some characteristics may be weighted more than others to determine the overall trip difficulty ranking. For example, using the four characteristics discussed above, an alternate embodiment in which aisles traversed and product cases retrieved are given twice the weight of the other characteristics may be calculated for a BABA ranked trip as (2*2)+(1*2)+2+1/4=9/4=2.25 trip difficulty ranking.
In one embodiment a notification of the allocation of each available trip may be transmitted by the server or other computing device executing the allocation module to a client device associated with the facility manager so that the manager may inform the particular facility worker to whom the trip has been allocated. In another embodiment, the allocation of each available trip may be transmitted by the server or other computing device executing the allocation module to a client device associated with the facility worker to whom the trip is assigned. In a further embodiment, a facility manager may interact with the allocation module via a GUI on their client device to request a trip for a particular facility worker. The allocation module receives the request, verifies which tenure category the worker belongs to, and then allocates an available mapped trip from that tenure category to the worker and transmits a notification to that effect back to the requesting manager. In a further embodiment, the facility worker may interact with the allocation module via a GUI on their client device to request a trip for themselves when available and the allocation module may allocate a trip and respond directly to the worker.
Memory 408 can include a computer system memory or random access memory, such as DRAM, SRAM, EDO RAM, and the like. Memory 408 can include other types of memory as well, or combinations thereof. An individual can interact with the computing device 404 through a visual display device 402, such as a touch screen display or computer monitor, which can display one or more user interfaces for displaying data to a user (e.g., a display of a storage device in the distributed store connected to the computing device 404 via network interface 410 and software running on the storage device that is the cause of an error in imported data). The visual display device 402 can also display other aspects, elements and/or information or data associated with exemplary embodiments. The computing device 404 can include other I/O devices for receiving input from an individual, for example, a keyboard or another suitable multi-point touch interface, a pointing device (e.g., a pen, stylus, mouse, or trackpad). The keyboard and the pointing device can be coupled to the visual display device 402. The computing device 404 can include other suitable conventional I/O peripherals.
The computing device 404 can also include one or more storage devices 416, such as a hard-drive, CD-ROM, or other computer readable media, for storing data and computer-readable instructions and/or software, such as one or more modules of the allocation module that implements exemplary embodiments of the system as described herein, or portions thereof, and which can be executed to generate a graphical user interface (GUI), such as one or more of GUIs on visual display device 402. Exemplary storage devices 416 can also store one or more databases for storing suitable information required to implement exemplary embodiments. The databases can be updated by an individual or automatically at a suitable time to add, delete or update one or more items in the databases. Exemplary storage devices 416 can store one or more databases 418 for storing provisioned data, and other data/information used to implement exemplary embodiments of the systems and methods described herein.
The computing device 404 can include a network interface 410 configured to interface via one or more network devices 414 with one or more networks, for example, Local Area Network (LAN), Wide Area Network (WAN) or the Internet through a variety of connections including, but not limited to, standard telephone lines, LAN or WAN links (for example, 802.11, T1, T3, 56kb, X.25), broadband connections (for example, ISDN, Frame Relay, ATM), wireless connections, controller area network (CAN), or some combination of any or all of the above. The network interface 404 can include a built-in network adapter, network interface card, PCMCIA network card, card bus network adapter, wireless network adapter, USB network adapter, modem or another device suitable for interfacing the computing device 404 to a type of network capable of communication and performing the operations described herein. Moreover, the computing device 404 can be a computer system, such as a workstation, desktop computer, server, laptop, handheld computer, tablet computer (e.g., the iPad® tablet computer), mobile computing or communication device (e.g., the iPhone® communication device), or other form of computing or telecommunications device that is capable of communication and that has sufficient processor power and memory capacity to perform the operations described herein.
The computing device 404 can run an operating system 412, such as versions of the Microsoft® Windows® operating systems, the different releases of the Unix and Linux operating systems, a version of the MacOS® for Macintosh computers, an embedded operating system, a real-time operating system, an open source operating system, a proprietary operating system, an operating systems for mobile computing devices, or another operating system capable of running on the computing device and performing the operations described herein. In exemplary embodiments, the operating system 412 can be run in native mode or emulated mode. In an exemplary embodiment, the operating system 412 can be run on one or more cloud machine instances.
Allocation module 541 may execute on server 540 and use historical trip performance data 551, facility worker data 552, available trip data 553, facility data 554 and product data 555 retrieved from database 550 to allocate trips to facility workers in the manner described herein. Historical trip performance data 551 may include, but is not limited to, past time performances of orderfilling trips having specified numbers of aisles, product cases, slot locations and product weight. The performance data may be indexed by worker tenure. Facility worker data 552 may include, but is not limited to, data identifying workers available during specified time periods and the worker's work tenure at the facility. Available trip data 553 may include, but is not limited to, available trips that need to be filled that are part of a facility order. Facility data may include, but is not limited to, layout data indicating where aisles and slot locations are located in a facility and product location data indicating where products are stored. Product data 555 may include, but is not limited to, size and weight information for various products. It will be appreciated that a number of constraints may be utilized in dividing an order into multiple trips including, but not limited to, product type (e.g. perishable, frozen or general merchandise products), scheduled shipping modality arrival and departure times (e.g. refrigerated truck arriving at 7 am and departing by 9 am), number of available facility workers, the experience level of facility workers and/or the size of the available pallet jacks.
Embodiments of the present invention make use of historic trip performance data to rank trips by difficulty based on pre-defined criteria and then allocate those trips to facility workers based on tenure. In one embodiment, trips for an order are ranked based on four factors, the number of aisles the facility worker must traverse, the number of locations in those aisles that must be visited, the number of product cases to be retrieved and the weight of those product cases. It should be appreciated that other criteria or a subset of these four factors may also be used to rank the trips without departing from the scope of the present invention.
Portions or all of the embodiments of the present invention may be provided as one or more computer-readable programs or code embodied on or in one or more non-transitory mediums. The mediums may be, but are not limited to a hard disk, a compact disc, a digital versatile disc, ROM, PROM, EPROM, EEPROM, Flash memory, a RAM, or a magnetic tape. In general, the computer-readable programs or code may be implemented in any computing language.
Since certain changes may be made without departing from the scope of the present invention, it is intended that all matter contained in the above description or shown in the accompanying drawings be interpreted as illustrative and not in a literal sense. Practitioners of the art will realize that the sequence of steps and architectures depicted in the figures may be altered without departing from the scope of the present invention and that the illustrations contained herein are singular examples of a multitude of possible depictions of the present invention.
The foregoing description of example embodiments of the invention provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, while a series of acts has been described, the order of the acts may be modified in other implementations consistent with the principles of the invention. Further, non-dependent acts may be performed in parallel.
This application claims priority to, and the benefit of, U.S. Provisional Patent Application No. 62/932,640, entitled “Systems And Method For Orderfilling Trip Allocation”, filed on Nov. 8, 2019, the content of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62932640 | Nov 2019 | US |