Information processing device and information processing program
Patent Information
- Application Number
- JP2023138011
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-08-28
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2043-08-28
AI Technical Summary
【0089】 (効果) 実施形態に係るサーバ1は、複数の注文に含まれる商品の商品情報を取得し、商品毎のピッキング負荷を算出し、ピッキング負荷に基づいて、複数の注文のそれぞれについての業務負荷を算出し、業務負荷に基づいて、複数の作業担当者に対して複数の注文を割り当てることができる。 例えば、サーバ1は、複数の注文について、各注文に含まれる商品のピッキング負荷に基づいて、各注文の業務負荷を算出し、算出した業務負荷に基づいて、複数の注文を複数のピッキング担当者に割り当てることができる。これにより、サーバ1は、業務負荷に基づいてピッキング作業の割り当てをすることができる。
Smart Images

Figure 0007914066000006 
Figure 0007914066000007 
Figure 0007914066000008
Abstract
Description
[Technical Field]
[0001] Embodiments of the present invention relate to an information processing device and an information processing program. [Background technology]
[0002] In recent years, online grocery shopping services, where customers order goods via the internet and receive them at their homes at their preferred time, have become increasingly popular. In these services, pickers are responsible for picking items ordered by customers from stores or warehouses, and delivery personnel then deliver the picked items to the customers' homes.
[0003] However, with conventional services, when multiple orders are assigned to multiple pickers, an imbalance can occur in the workload, such as the number of items each picker has to pick or the number of picking deliveries they handle.
[0004] Therefore, there is a need for a picking support system that can equalize the workload of picking tasks among multiple picking personnel. [Prior art documents] [Patent Documents]
[0005] [Patent Document 1] Patent No. 6530851 [Overview of the project] [Problems that the invention aims to solve]
[0006] The problem that the embodiments of the present invention aim to solve is to provide an information processing device and an information processing program that can assign picking tasks based on workload. [Means for solving the problem]
[0007] In one embodiment, an information processing apparatus comprises an acquisition unit and an allocation processing unit. The acquisition unit acquires product information of products included in a plurality of orders. The allocation processing unit calculates a picking load for each product, calculates a work load for each of the plurality of orders based on the picking load, and allocates the plurality of orders to a plurality of workers based on the work load. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] [Figure 1] FIG. 1 is a block diagram illustrating an example picking work support system according to an embodiment. [Figure 2] FIG. 2 is a conceptual diagram for explaining picking work according to an embodiment. [Figure 3] FIG. 3 is a diagram illustrating an example data structure of product information according to an embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example data structure of order information according to an embodiment. [Figure 5] FIG. 5 is a diagram illustrating an example data structure of a picking list according to an embodiment. [Figure 6] FIG. 6 is a diagram illustrating an example data structure of a basic setting table according to an embodiment. [Figure 7] FIG. 7 is a flowchart showing an example procedure of information processing by a server according to an embodiment. [Figure 8] FIG. 8 is a flowchart showing an example procedure of information processing related to order allocation by a server according to an embodiment. [Figure 9] FIG. 9 is a flowchart showing an example procedure of information processing related to order allocation by a server according to an embodiment. [Figure 10] FIG. 10 is a flowchart showing another example procedure of information processing related to order allocation by a server according to an embodiment. MODE FOR CARRYING OUT THE INVENTION
[0009] (Embodiment) Embodiments will be described below with reference to the drawings. In each drawing, the same reference numerals are assigned to the same components as much as possible, and duplicate explanations are omitted.
[0010] (Configuration Example) FIG. 1 is a block diagram illustrating an example of a picking work support system 100 according to an embodiment. The picking work support system 100 includes a server 1, an order terminal 2, and a picking terminal 3. The server 1, the order terminal 2, and the picking terminal 3 are communicatively connected to each other via a network. For example, the network is composed of one or more networks among various networks such as the Internet, a mobile communication network, and a LAN (Local Area Network). The one or more networks may include a wireless network or a wired network. Note that the picking work support system 100 may also refer to a system including at least two devices among the server 1, the order terminal 2, and the picking terminal 3.
[0011] The server 1 is a device that collects data and processes the collected data. The server 1 is communicatively connected to the order terminal 2 and the picking terminal 3 via a network. The server 1 receives various data from the order terminal 2 and the picking terminal 3, and outputs various data to the order terminal 2 and the picking terminal 3. The server 1 is an example of an information processing device. A configuration example of the server 1 will be described later.
[0012] The server 1 provides a shopping proxy service. In the shopping proxy service, for example, a product order is received from a customer via the order terminal 2, and picking of products conforming to the order is assigned to a picker. Picking is also referred to as product picking. The picker performs picking work for products included in a plurality of orders within a delivery time frame. The picker performs picking work for at least one order. The plurality of orders refer to a plurality of orders for which picking work needs to be completed within a predetermined delivery time frame. Each of the plurality of orders includes at least one product. The delivery time frame is, for example, a time frame obtained by dividing delivery time into predetermined time intervals. The delivery time frame is, for example, a time frame in units of 1 hour or 2 hours. Examples of the delivery time frame include "11:00 to 13:00", "13:00 to 15:00", "15:00 to 17:00", and the like. In one delivery time frame, a plurality of pickers perform picking for products included in a plurality of orders. For example, when one order includes a plurality of products, the same picker performs picking for the plurality of products. Note that different pickers may perform picking for some of the plurality of products included in one order. In the shopping proxy service, a plurality of orders included in one delivery time frame are assigned to a plurality of pickers. The picker uses a shopping cart to pick products in a store, and puts the picked products into baskets loaded on the shopping cart. The shopping cart is also simply referred to as a cart. The predetermined delivery time frame is an example of a predetermined time. The picker may also be read as a worker, a person in charge, or an operator.
[0013] For one order, the number of baskets required for picking differs depending on the number of products and the volume of products. The picker may pick two or more orders simultaneously in one picking operation (one trip), while sorting the products order by order. The total number of baskets of orders picked simultaneously (in one trip) by the same picker does not exceed the number of baskets that can be loaded on the cart. The picker cannot split one order into a plurality of trips for picking. One order refers to a single order placed by a customer.
[0014] One order includes at least one product. One order includes one product list. One picking trip indicates that a picker travels around the store using one cart. One cart carries a predetermined number of baskets. The predetermined number is, for example, three. For example, one picker performs one trip of picking in a store within a certain delivery time slot by putting products into three baskets using one cart. Picking for one trip includes picking of products included in at least one order. One picker may perform two or more picking trips in a store within a certain delivery time slot.
[0015] The picking operation will be described. Figure 2 is a conceptual diagram for explaining the picking operation according to the embodiment. Figure 2 includes, for example, a list in which a plurality of orders received from a plurality of customers are arranged for each delivery time slot. The list includes delivery time slots, order IDs, delivery addresses, product lists, and the like. A delivery time slot indicates a time slot desired by a customer for delivery for each order. An order ID is unique identification information assigned to each order for individually identifying the order. An order ID is identification information assigned to each one order. A delivery address is information indicating the location where the customer desires delivery. The delivery address is, for example, the customer's address based on the customer's user information. The delivery address may be an address registered by the customer when placing an order. In the following description, "registered" may be read as "input". The product list indicates a list of products included in one order. One order can be read as one order placed by a customer. One order includes a series of processes from when a customer places an order for a product using a shopping proxy service until the customer settles payment for the product or completes the order. One order includes processes from the start of order placement to the completion of order registration. Order registration completion indicates that the customer performs a payment operation for the product or a completion operation for the order. For example, in response to an order registration completion operation being performed by the customer via the order terminal 2, the server 1 acquires an order registration completion instruction from the order terminal 2.
[0016] In the example of FIG. 2, there are nine orders from order ID "O0001" to "O0009" within the delivery time slot "11:00 to 13:00". For example, the server 1 allocates the nine orders from order ID "O0001" to "O0009" within the delivery time slot "11:00 to 13:00" to three picking workers 01 to 03. In the example of FIG. 2, the picking work for products of order IDs "O0001", "O0003", and "O0004" is allocated to picking worker 01. The picking work for products of order IDs "O0002", "O0006", and "O0007" is allocated to picking worker 02. The picking work for products of order IDs "O0005", "O0008", and "O0009" is allocated to picking worker 03. In the following description, it is assumed that picking work is performed at one store.
[0017] Returning to the description of FIG. 1 The order terminal 2 is a device capable of communicating with other devices. The order terminal 2 is, for example, a device used by a customer who uses a shopping proxy service. The customer, for example, operates the order terminal 2 to place an order for a product. For example, the customer logs in to the shopping proxy service provided by the server 1, and places an order for a product in accordance with the order image displayed on the display device of the order terminal 2. The customer places an order for a product by inputting information such as the product, delivery location, and delivery date and time. The order terminal 2 is a PC (Personal Computer), a smartphone, a tablet terminal, or the like. The customer may be read as a user or a person. The order terminal 2 is an example of an information processing terminal. A configuration example of the order terminal 2 will be described later. The customer is an example of a user of the order terminal 2. The picking work support system 100 includes at least one order terminal 2.
[0018] The picking terminal 3 is a device capable of communicating with other devices. The picking terminal 3 is, for example, a device used by a picking worker who performs picking work, such as picking up goods in a store according to a customer's order. For example, the picking worker performs picking work based on an assigned image displayed on the display device of the picking terminal 3. For example, the picking terminal 3 is a PC, smartphone, or tablet device. The term "picking worker" may be read as "worker," "worker," "store clerk," "staff member," "user," or "person." The picking worker is an example of a user of the picking terminal 3. The picking support system 100 includes at least one picking terminal 3.
[0019] This section describes an example configuration for Server 1. Server 1 is a device that includes a processor 11, main memory 12, auxiliary storage device 13, and communication interface 14. Each component of Server 1 is connected to each other so that signals can be input and output. In Figure 1, the interface is labeled "I / F".
[0020] The processor 11 is the central part of the server 1. The processor 11 is an element that makes up the computer of the server 1. For example, the processor 11 is a CPU (Central Processing Unit), but is not limited to this. The processor 11 may be composed of various circuits. The processor 11 loads a program that is pre-stored in the main memory 12 or auxiliary storage device 13 into the main memory 12. The program is a program that causes the processor 11 of the server 1 to implement the various parts described later. The processor 11 performs various operations by executing the program loaded into the main memory 12.
[0021] Main memory 12 corresponds to the main memory portion of server 1. Main memory 12 is an element that constitutes the computer of server 1. Main memory 12 includes non-volatile memory areas and volatile memory areas. In the non-volatile memory area of main memory 12, the operating system or programs are stored. Main memory 12 uses the volatile memory area as a work area where data is rewritten as needed by the processor 11. For example, main memory 12 includes ROM (Read Only Memory) as a non-volatile memory area. For example, main memory 12 includes RAM (Random Access Memory) as a volatile memory area. Main memory 12 stores programs.
[0022] The auxiliary storage device 13 corresponds to the auxiliary storage portion of server 1. The auxiliary storage device 13 is an element that constitutes the computer of server 1. The auxiliary storage device 13 is an EEPROM (registered trademark) (Electric Erasable Programmable Read-Only Memory), HDD (Hard Disk Drive), or SSD (Solid State Drive), etc. The auxiliary storage device 13 stores the above-mentioned program, data used by the processor 11 in performing various processes, and data generated by the processing of the processor 11. The auxiliary storage device 13 stores the above-mentioned program.
[0023] The auxiliary storage device 13 includes a program storage area 130 and a data storage area 131. The program storage area 130 stores an assignment program 1300 and an optimization program 1301. The assignment program 1300 is a program for determining which assignment pattern to apply from all patterns for assigning orders to pickers. The assignment pattern indicates candidate assignment methods for assigning multiple orders within a predetermined delivery time frame among multiple pickers. For example, it indicates a pattern such as assigning the same number of orders from picker 01 to picker 03 in descending order of order ID. The types of assignment patterns can be set by known techniques. The assignment processing unit 111, described later, performs processing based on the assignment program 1300. The optimization program 1301 is, for example, a mathematical optimization program. The optimization program 1301 includes a mathematical programming solver. The mathematical programming solver is software equipped with an algorithm for solving mathematical programming problems. The optimization program 1301 can be implemented by known mathematical optimization techniques.
[0024] The data storage area 131 stores product information 1310, order information 1311, picking list 1312, and basic settings table 1313. Product information 1310 will be explained with reference to Figure 3.
[0025] Figure 3 is a diagram illustrating the data structure of product information 1310 according to the embodiment. Product information 1310 includes information such as product identification information, product name, picking location, volume, and picking load. Product information 1310 may also include information on the weight of the product. Product identification information is unique identification information assigned to each product to identify each product individually. Product name indicates the product name set for each product. Picking location indicates the picking location of the product. Picking location is information about the display location of the product in the store or other place where the product is picked. Picking location indicates, for example, a location in the aisle facing the shelf where the product is displayed, where the picker can easily find and pick up the product. Picking location may also be information indicating the shelf on which the product is displayed. Picking location may also be information indicating the area of the shelf on which the product is displayed. Picking location may be registered in correspondence with the location ID of the map information of the store or other place. Picking location may be registered in advance by the administrator or other person. Picking location may be updated as appropriate by the administrator or other person. Volume is information that represents an estimate of the size of the product. The volume can be calculated, for example, for each product by multiplying (the reciprocal of the number that fits in the shopping basket) by 100. For example, if the volume of the shopping basket is 100, then 10 items with a volume of 10 can fit in the basket. Note that the shopping basket is a container used by pickers and is not limited to a basket.
[0026] Picking load is information that indicates the workload of a worker to pick one item. Picking load is information that indicates the workload based on product information, for example. For example, the picking load of a standard product may be set to "1". Standard products include, for example, products located near the middle of the display shelf. Standard products include products that are below a certain weight. Standard products include products that are below a certain volume. A value greater than 1 may be set for products whose picking load is higher than the standard, such as products that are displayed in distant locations, products that are difficult to find, or products that are heavy and burdensome. Picking load may be set based on the distance from the standard product's location to the product's display location, the difference from a certain weight, the difference from a certain volume, etc. Picking load may be registered in advance by an administrator, etc. Picking load may be updated as needed by an administrator, etc. Note that picking load may be variable depending on the attributes of the picker, etc. For example, weights may be set for the picker based on the picker's gender, age, physique, years of experience, etc. The picking load may be variable depending on the work capacity of the picking personnel, etc.
[0027] In the example in Figure 3, product ID "P0001" "XX Milk" indicates that the picking location is "L0011", the volume is "6", and the picking load is "1". Figure 3 also shows that product ID "P0003" "XX Rice" has a larger volume and a higher picking load than "XX Milk".
[0028] Product information may include information indicating the product category. Categories may include, for example, fruits and vegetables, meat, dairy products, etc. Categories may also relate to the product's display location or sales area within the store.
[0029] Order information 1311 will be explained with reference to Figure 4.
[0030] Figure 4 is a diagram illustrating the data structure of order information 1311 according to the embodiment. Order information 1311 includes information such as order ID, delivery time slot, total volume, total picking load, number of baskets, and handler ID. Total volume indicates the total volume of goods calculated based on the volume of at least one item included in each order. Total volume indicates the volume of all items included in the order. Total picking load indicates the total picking load of goods calculated based on the picking load of at least one item included in each order. Total picking load indicates the picking load of all items included in the order. Number of baskets indicates the number of baskets required to accommodate at least one item included in each order. Number of baskets indicates the number of baskets required to accommodate all items included in the order. Handler ID is unique identification information assigned to each picker to individually identify them. Handler ID indicates the handler responsible for picking the items included in each order. Order information may be saved or updated each time server 1 receives an order registration completion instruction from order terminal 2. Order information may be saved or updated based on the calculation of total volume, total picking load, or number of baskets. Order information may be saved or updated each time a picking officer is assigned.
[0031] In the example in Figure 4, for order ID "O0001", the delivery time slot is "11:00 to 13:00", the total volume is "80", the total picking load is "20", the number of baskets is "1", and the person in charge is "W0001". Figure 4 shows that the person in charge of picking items for order IDs "O0001" to "O0003" is "W0001".
[0032] Picking list 1312 will be explained with reference to Figure 5.
[0033] Figure 5 is a diagram illustrating the data structure of the picking list 1312 according to the embodiment. The picking list 1312 includes information such as order ID, product ID, and quantity. The picking list 1312 can be registered or updated each time an order registration completion instruction is received from the order terminal 2.
[0034] Figure 5 shows that order ID "O0001" contains one item with product ID "P0005" and one item with product ID "P0054".
[0035] The basic settings table 1313 will be explained with reference to Figure 6.
[0036] Figure 6 is a diagram illustrating the data structure of the basic settings table 1313 according to the embodiment. The basic settings table 1313 contains information on the setting values for each item. For example, the basic settings table 1313 includes the capacity of the baskets used for picking and the maximum number of baskets that can be loaded onto a cart. The capacity of the baskets used for picking and the maximum number of baskets that can be loaded onto a cart can be set in advance by an administrator or the like. The basic settings table 1313 contains the weight "w" for the sum of the picking load of products when calculating the workload. item This includes the weight "w" for the number of baskets when calculating workload. Basic settings table 1313 is the weight "w" basket Includes "w item " and "w basket This can be set in advance by the administrator or other relevant personnel.
[0037] Figure 6 shows a basket capacity setting of "100", a maximum number of baskets that can be loaded onto the cart setting of "3", and a weight of "w". item The setting value for " is "1.0", and the weight "w basket This indicates that the setting value for "[ ]" is "5.0". The setting values for each item in the basic settings table 1313 may be updated as needed.
[0038] Returning to the explanation of Figure 1. The communication interface 14 includes various interfaces that enable the server 1 to communicate with other devices via a network, in accordance with a predetermined communication protocol.
[0039] Note that the hardware configuration of Server 1 is not limited to the configuration described above. Server 1 may, as appropriate, omit or change the above-mentioned components and add new components.
[0040] The various components implemented in the aforementioned processor 11 will now be described. The processor 11 implements the acquisition unit 110, the allocation processing unit 111, the output unit 112, the registration processing unit 113, the settlement processing unit 114, and the delivery processing unit 115. Each part implemented in the processor 11 can also be called a function. Each part implemented in the processor 11 can also be said to be implemented in the control unit which includes the processor 11 and the main memory 12. The processor 11 is an example of a processing circuit.
[0041] The acquisition unit 110 acquires an order registration completion instruction from the order terminal 2 via the communication interface 14. The order registration completion instruction may include information about the order. The acquisition unit 110 may acquire the order registration completion instruction and the order information separately. The order information includes product information for the items included in the order. The acquisition unit 110 may acquire a payment completion notification from the order terminal 2. The acquisition unit 110 may also acquire order information in response to receiving the payment completion notification. Based on the order information, the acquisition unit 110 updates the picking list and order information. After the delivery process, the acquisition unit 110 may acquire a report of product receipt from the order terminal 2. The acquisition unit 110 may acquire information such as service evaluation from the order terminal 2. In the following description, "acquisition" may be read as "reception".
[0042] The assignment processing unit 111 assigns multiple orders to multiple pickers. The assignment processing unit 111 calculates the picking workload for each product. Based on the picking workload information, the assignment processing unit 111 calculates the workload for each of the multiple orders. The workload is information that indicates the workload related to the work of picking the products included in each order. The workload is a value calculated, for example, based on the product information of the products included in the order. The workload can be calculated, for example, based on the picking workload of each product included in the order. The workload for each order may be the sum of the picking workloads of each product included in each order. The workload for each order may be a value calculated by weighting the picking workload of each product included in each order. The workload for each order may be a value calculated by weighting the picking workload of each product included in each order and predetermined parameters related to the product. The workload for each order may be a value calculated by weighting each item of the product information included in each order. The workload for each picker is information that indicates the workload related to the work of picking the products included in the order assigned to each picker. Workload is a value calculated based on, for example, information about an order. Workload may also be calculated based on, for example, the picking route of the items included in the order. Workload may also be calculated based on, for example, the number of items included in the order. Workload may also be calculated based on, for example, the categories of items included in the order.
[0043] The assignment processing unit 111 assigns multiple orders to multiple pickers based on information about workload. The assignment processing unit 111 assigns multiple orders in a way that minimizes variations in the workload of multiple pickers. Variations in workload may include, for example, variations in the number of orders assigned. Variations in workload may include, for example, variations in the number of items to be picked. Variations in workload may include variations in the time spent picking items. Variations in workload may include variations in the number of picking runs. Variations in workload may include variations in the time spent picking items. Assigning multiple orders in a way that minimizes variations in workload indicates assigning multiple orders in a way that equalizes the workload among multiple pickers. Assigning multiple orders in a way that minimizes variations in workload indicates assigning multiple orders in a way that optimizes the workload among multiple pickers. The assignment processing unit 111 may assign multiple orders to multiple pickers based on the workload and the number of orders. The assignment processing unit 111 may assign multiple orders to reduce variations in workload and the number of orders among pickers. The assignment processing unit 111 assigns multiple orders to multiple delivery personnel.
[0044] The output unit 112 outputs picking list information and order information to the picking terminal 3 via the communication interface 14. In the following description, "output" may be read as "transmission".
[0045] The registration processing unit 113 receives a picking completion notification from the picking terminal 3 via the communication interface 14. The work completion notification indicates that the picking of goods has been completed. Based on the work completion notification, the registration processing unit 113 updates the work status of the picking operation. The registration processing unit 113 may also save the work status of the picking operation to the auxiliary storage device 13.
[0046] The payment processing unit 114 performs payment processing of the product price for the store that received the order. The payment processing can be implemented by a known payment processing technique. The payment processing unit 114 may perform payment processing of commissions to pickers and delivery persons in charge.
[0047] The delivery processing unit 115 outputs delivery task information to a delivery terminal (not shown) via the communication interface 14. The delivery terminal is a terminal used by a person in charge of delivery who is in charge of delivering the product included in the order. The delivery task information includes, for example, information related to an order assigned to the person in charge of delivery.
[0048] (Operation Example) A processing procedure performed by the picking work support system 100 will be described. Note that in the following description focusing on the server 1, the server 1 may be read as the processor 11. The processing procedure described below is merely an example, and each process may be modified as much as possible. In addition, with respect to the processing procedure described below, steps may be omitted, replaced, or added as appropriate according to the embodiment. In the following processing, it is assumed that in the shopping proxy service provided by the server 1, a user of the ordering terminal 2 performs order registration. The server 1 accepts order registration from the user of the ordering terminal 2 at any time. In response to completion of order registration by the user of the ordering terminal 2, the ordering terminal 2 outputs an order registration completion instruction to the server 1. In response to acquiring the order registration completion instruction, the server 1 stores information related to the order in the auxiliary storage device 13. Note that the server 1 may store information related to the order in the auxiliary storage device 13 in response to completion of a payment operation by the user of the ordering terminal 2. In this case, the server 1 may acquire a payment completion notification and information related to the order from the ordering terminal 2.
[0049] FIG. 7 is a flowchart illustrating an example of an information processing procedure performed by the server 1 according to the embodiment.
[0050] The acquisition unit 110 acquires order information from the order terminal 2 (ACT1). In ACT1, for example, the acquisition unit 110 acquires an order registration completion instruction from the order terminal 2. The acquisition unit 110 acquires the order registration completion instruction and order information. Based on the order information, the acquisition unit 110 updates the order information 1311 and the picking list 1312.
[0051] Processor 11 determines whether a predetermined work timing has been reached (ACT2). The predetermined work timing can be set by an administrator or the like. The predetermined work timing may be, for example, a predetermined time interval. The predetermined work timing may be, for example, a timing based on the start time of a predetermined delivery time slot. If Processor 11 determines that the predetermined work timing has been reached (ACT2: YES), the process transitions from ACT2 to ACT3. If Processor 11 determines that the predetermined work timing has not been reached (ACT2: NO), the process transitions from ACT2 to ACT1.
[0052] The assignment processing unit 111 assigns multiple orders to multiple pickers and delivery personnel (ACT3).
[0053] The output unit 112 outputs picking list information and order information to the picking terminal 3 (ACT4). In ACT4, for example, the output unit 112 outputs picking list information and order information to the picking terminal 3 of multiple pickers who are in charge of orders within a predetermined delivery time frame. The output unit 112 may also output picking list information and order information for the orders assigned to each picker.
[0054] The registration processing unit 113 receives a notification of completion of the picking operation from the picking terminal 3 (ACT 5). In response to receiving the completion notification, the registration processing unit 113 may update the status of the picking operation.
[0055] The payment processing unit 114 processes the payment for the goods to the store that received the order (ACT6). The payment processing unit 114 may perform the payment processing using known technology.
[0056] The delivery processing unit 115 outputs delivery task information to the delivery terminal (ACT7). In ACT7, for example, information regarding the delivery task assigned by the assignment processing unit 111 is output to the delivery terminal. The user of the delivery terminal performs the delivery work according to the delivery task information. The assignment processing unit 111 may assign multiple orders to multiple delivery personnel, similar to how orders are assigned to picking personnel. The assignment processing unit 111 may assign multiple orders to multiple delivery personnel using known techniques.
[0057] The acquisition unit 110 may acquire a report of product receipt from the order terminal 2 after the delivery process is complete. The acquisition unit 110 may also acquire information such as service evaluations from the order terminal 2. The payment processing unit 114 may process the payment of fees to the picking staff and delivery staff after the delivery process is complete.
[0058] Figure 8 is a flowchart showing an example of the procedure for processing information related to order allocation by Server 1 according to this embodiment. The following process is an example of specific information processing for assigning multiple orders in ACT3, as shown in Figure 7, to multiple pickers. In this example, the workload for each order is determined by multiplying the total picking load and the number of baskets by weights.
[0059] The allocation processing unit 111 calculates the sum of the volumes of all products (total volume) for all orders (ACT 11). In ACT 11, for example, the allocation processing unit 111 obtains the volume of at least one product included in each order by referring to the product information 1310. The allocation processing unit 111 calculates the total volume of at least one product included in each order. The allocation processing unit 111 stores the total volume information in the order information 1311.
[0060] The allocation processing unit 111 calculates the sum of the picking loads of all items included in each order (total picking load) for all orders (ACT 12). In ACT 12, for example, the allocation processing unit 111 obtains picking load information for at least one item included in each order by referring to the item information 1310. The allocation processing unit 111 calculates the total picking load for at least one item included in each order. The allocation processing unit 111 stores the total picking load information in the order information 1311.
[0061] The allocation processing unit 111 calculates the number of baskets for each order (ACT 13). In ACT 13, for example, the allocation processing unit 111 divides the total volume of goods in each order by the capacity of the baskets, rounds up, and calculates the number of baskets required to accommodate all the goods in each order. The allocation processing unit 111 stores the information on the number of baskets in the order information 1311.
[0062] The assignment processing unit 111 determines an assignment pattern that minimizes the variation in workload among multiple pickers (ACT 14). In ACT 14, for example, the assignment processing unit 111 determines the assignment pattern that minimizes the variation in workload among pickers from all possible patterns of assigning orders to pickers, based on the assignment program 1300.
[0063] The assignment processing unit 111 registers the information of the picking personnel based on the determined assignment pattern (ACT 15). In ACT 15, for example, the assignment processing unit 111 stores the identification information of the picking personnel assigned to each order in the order information 1311.
[0064] Figure 9 is a flowchart showing an example of the procedure for processing information related to order allocation by Server 1 according to this embodiment. The following processing is an example of specific information processing for determining an allocation pattern with small variation in workload in ACT14 shown in FIG. 8. In this example, the processor 11 formulates an optimization problem and stores it in the optimization program 1301. The processor 11 is configured to obtain a solution to the formulated problem through processing based on the optimization program 1301.
[0065] In the following processing, the workload is calculated based on the picking load. In the following processing, a method for formulating the picking staff allocation processing as a mixed integer programming problem is described as an example.
[0066] The allocation processing unit 111 acquires information on the total picking load and the number of baskets for all orders (ACT21). In ACT21, for example, the allocation processing unit 111 refers to the order information 1311 for each order to acquire information on the total picking load and the number of baskets.
[0067] The allocation processing unit 111 registers decision variables in the optimization program 1301 (ACT22). In ACT22, for example, the allocation processing unit 111 sets the decision variable x in accordance with the number of orders and the number of picking staff ij , y j are defined. The decision variable x ij is a binary variable that takes 1 when order i (i=1,2,...,m) is allocated to picking staff j (j=1,2,...,n) and 0 when it is not allocated. The decision variable y j is an integer variable representing the number of trips for picking by picking staff j. The allocation processing unit 111 defines the decision variable z min , z max are defined. The decision variable z min is a continuous variable representing the minimum value of the workload of each picking staff. The decision variable z max is a continuous variable representing the maximum value of the workload of each picking staff.
[0068] The allocation processing unit 111 registers constants in the optimization program 1301 (ACT23). In ACT23, for example, the allocation processing unit 111 registers the number of baskets for each order as a constant "b i The total picking load for each order is set to a constant "c i The allocation processing unit 111 refers to the basic settings table and sets the maximum number of baskets that can be placed in the cart to the constant "D". The allocation processing unit 111 refers to the basic settings table and sets the constant "w item ", and the constant "w num_work Set the constant "b". i " is a constant that represents the number of baskets in order i. i " is a constant representing the picking load for order i. The constant "D" represents the maximum number of baskets that can be loaded onto the cart. The constant "w" item " is a constant that represents the weight of the product picking workload in the calculation of workload. num_work This constant represents the weight of the number of flights in the calculation of workload.
[0069] The allocation processing unit 111 registers the objective function and constraints in the optimization program 1301 (ACT24). The objective function is expressed, for example, in Equation 1.
[0070]
number
[0071]
number
[0072]
number
[0073]
number
[0074] The assignment processing unit 111 determines the assignment of multiple orders to multiple pickers (ACT25). In ACT25, for example, the assignment processing unit 111 solves an optimization problem formulated as a mixed integer programming problem, such as equations 1, 2, 3, and 4, using the optimization program 1301. The assignment processing unit 111 then sets an order assignment "x" to equalize the workload of each worker. ij The order allocation to be leveled out "x" is determined. ij " is the optimized variable "x ij This is an example of the above. The allocation processing unit 111 assigns the optimized variable "x ij Refer to the instructions to determine the assignment of multiple orders to multiple pickers.
[0075] The assignment processing unit 111 stores assignment information in the order information 1311, indicating the assignment of multiple orders to multiple pickers (ACT26).
[0076] The assignment process described above was formulated as a mixed-integer programming problem and solved using a mathematical optimization program. However, the method of formulation and solution is not limited to this. For example, the assignment process could involve a brute-force search of all potential picker assignments, formulating it as an Ising problem and solving it with an Ising machine, or using a heuristic algorithm.
[0077] In this example, Server 1 can calculate the workload for each of several orders that need to be picked within a predetermined delivery time frame, and then assign the orders to multiple pickers based on the calculated workload. This allows Server 1 to assign the picking work for multiple orders within a predetermined delivery time frame to multiple pickers based on their workload. For example, Server 1 can determine an assignment pattern that minimizes the variation in workload among multiple pickers based on an optimization program. In this case, Server 1 can equalize the workload of the pickers for multiple orders within a predetermined delivery time frame.
[0078] Furthermore, according to this example, Server 1 can calculate the workload based on the total number of picking tasks and the number of baskets that can be loaded onto the cart used by each picker. This allows Server 1 to prevent imbalances in the number of items picked and the number of picking deliveries per picker, and to equalize the workload for each picker. In addition, by equalizing the workload for each picker, Server 1 can assign multiple orders so that all pickers complete their work within a predetermined delivery time frame. This allows Server 1 to increase the number of orders that can be processed within a predetermined delivery time frame.
[0079] Figure 10 is a flowchart showing another example of the procedure for processing information related to order allocation by Server 1 according to this embodiment. The following process is an example of specific information processing for assigning multiple orders to multiple pickers in ACT3, as shown in Figure 7. In this example, the workload for each order is determined using information such as the length of the picking route, the number of items included in the order, and the variation in product categories.
[0080] The allocation processing unit 111 calculates the sum of the volumes of all products (total volume) for all orders (ACT31). In ACT31, for example, similar to ACT11, the allocation processing unit 111 obtains the volume of at least one product included in each order by referring to the product information 1310. The allocation processing unit 111 calculates the total volume of at least one product included in each order. The allocation processing unit 111 stores the total volume information in the order information 1311.
[0081] The assignment processing unit 111 calculates the work time for all orders from the route length (ACT32). In ACT32, for example, the assignment processing unit 111 determines the route for picking at least one item included in each order. The picking route can be determined by known techniques. The assignment processing unit 111 calculates the route length for each order. The assignment processing unit 111 calculates the work time based on the route length for each order. The assignment processing unit 111 stores the work time information in the order information 1311.
[0082] The allocation processing unit 111 obtains the number of product categories included in each order (ACT33). In ACT33, for example, the allocation processing unit 111 refers to the product information 1310 to obtain information on at least one product category included in each order and calculates the number of categories. The allocation processing unit 111 stores the number of categories information in the order information 1311.
[0083] The allocation processing unit 111 calculates the number of baskets for each order (ACT34). In ACT34, for example, similar to ACT13, the allocation processing unit 111 divides the total volume of goods in each order by the capacity of the baskets, rounds up, and calculates the number of baskets required to accommodate all the goods in each order. The allocation processing unit 111 stores the basket count information in the order information 1311.
[0084] The assignment processing unit 111 determines an assignment pattern that minimizes the variation in workload among multiple pickers (ACT35). In ACT35, for example, the assignment processing unit 111 determines the assignment pattern that minimizes the variation in workload among pickers from all possible patterns of assigning orders to pickers based on the assignment program. The process for determining the assignment pattern is the same as the process in Figure 9. In this example, in ACT34 of Figure 9, Equation 5 is used instead of Equation 4 of the constraint condition.
[0085]
number
[0086] The assignment processing unit 111 registers the information of the picking personnel based on the determined assignment pattern (ACT36). In ACT36, for example, the assignment processing unit 111 stores the identification information of the picking personnel assigned to each order in the order information 1311.
[0087] In this example, Server 1 can calculate the workload based on factors such as the length of the picking route, the number of items, and the variation in product categories. This allows Server 1 to prevent imbalances in the working time of each picker and equalize the workload for each picker. Furthermore, by equalizing the workload for each picker, Server 1 can assign multiple orders so that all pickers complete their work within a predetermined delivery time frame. This allows Server 1 to increase the number of orders it can process within a predetermined delivery time frame.
[0088] (modified version) Multiple orders may be orders for multiple stores. In this case, the assignment processing unit 111 may assign multiple orders within a predetermined delivery time frame to multiple pickers for each store.
[0089] (effect) The server 1 according to this embodiment can acquire product information for items included in multiple orders, calculate the picking load for each item, calculate the workload for each of the multiple orders based on the picking load, and assign multiple orders to multiple workers based on the workload. For example, Server 1 can calculate the workload for multiple orders based on the picking load of the items included in each order, and then assign multiple orders to multiple pickers based on the calculated workload. This allows Server 1 to assign picking tasks based on the workload.
[0090] The server 1 according to this embodiment can calculate the workload for multiple orders that require picking to be completed within a predetermined time, based on the picking workload of the items included in each order, and assign multiple orders to multiple pickers based on the calculated workload. As a result, the server 1 can assign the picking work for multiple orders within a predetermined delivery time frame to multiple pickers based on the workload.
[0091] The server 1 according to this embodiment can assign multiple orders in a way that minimizes variations in the workload of multiple workers. For example, the server 1 can determine an assignment pattern that minimizes variations in the workload of multiple pickers based on an optimization program. This allows the server 1 to equalize the workload of pickers for multiple orders within a predetermined delivery time frame.
[0092] The server 1 according to this embodiment can calculate the workload for each of multiple orders based on different picking loads depending on the worker, and can assign multiple orders to multiple workers based on the workload. For example, the server 1 can calculate the workload for each order based on the worker's work capacity, and assign multiple orders to multiple pickers based on the calculated workload. This allows the server 1 to assign picking tasks in a way that equalizes the workload for each worker.
[0093] The server 1 according to this embodiment can assign multiple orders to multiple workers based on the workload and the number of orders. For example, the server 1 can assign multiple orders in such a way that the variation in workload and the number of orders among each worker is minimized. This allows the server 1 to assign picking tasks in a way that equalizes the workload of multiple workers.
[0094] (Other embodiments) An information processing device may be implemented as a single device, such as Server 1, or as multiple devices with distributed functions. In the latter case, the term "information processing device" includes the meaning of an information processing system composed of multiple devices.
[0095] The embodiments described above may apply not only to the apparatus but also to the methods performed by the apparatus. The embodiments described above may apply to a program that can cause the computer of the apparatus to perform each function. The embodiments described above may apply to a recording medium that stores the program. The embodiments described above may apply not only to the system but also to the methods performed by multiple elements included in the system.
[0096] A processing circuit includes one or more circuits that perform multiple processes through multiple functions. For example, the circuit may be, but is not limited to, a processor, an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array).
[0097] Each of the one or more circuits that make up a processing circuit performs one or more of the multiple processes. If the processing circuit consists of a single circuit, the single circuit performs all of the multiple processes. If the processing circuit consists of multiple circuits, each of the multiple circuits performs some of the multiple processes. Some of the multiple processes may be one of the multiple processes, or two or more of the multiple processes. If the processing circuit consists of multiple circuits, the multiple circuits may be contained in a single device, or they may be distributed across multiple devices.
[0098] The program may be transferred while stored in the device, or it may be transferred without being stored in the device. In the latter case, the program may be transferred via a network, or it may be transferred while recorded on a recording medium. The recording medium is a non-temporary tangible medium. The recording medium is a computer-readable medium. The recording medium can be any medium that is capable of storing a program and is readable by a computer, such as a CD-ROM or memory card, and its form is not limited.
[0099] Although embodiments of the present invention have been described in detail above, the above description is merely illustrative in all respects of the present invention. Needless to say, various improvements and modifications can be made without departing from the scope of the present invention. In other words, when implementing the present invention, specific configurations may be adopted as appropriate depending on the embodiment.
[0100] In short, this invention is not limited to the embodiments described above, and in the implementation stage, the components can be modified and implemented without departing from the gist of the invention. Furthermore, various inventions can be formed by appropriately combining the multiple components disclosed in the embodiments. For example, some components may be deleted from all the components shown in the embodiments. Moreover, components from different embodiments may be appropriately combined.
[0101] (Note) The above-described embodiments may be represented as follows: (1) An acquisition unit that acquires product information for products included in multiple orders, An assignment processing unit calculates the picking load for each of the aforementioned products, calculates the workload for each of the aforementioned orders based on the picking load, and assigns the aforementioned orders to multiple workers based on the workload; An information processing device equipped with the following features. (2) The aforementioned multiple orders are multiple orders for which picking work must be completed within a specified time. (1) The information processing device described above. (3) The assignment processing unit assigns the multiple orders in such a way that the variation in the workload of the multiple workers is reduced. The information processing device described in (1) or (2). (4) The picking load varies depending on the worker, An information processing device as described in any of (1) to (3). (5) The assignment processing unit assigns the multiple orders to multiple workers based on the workload and the number of orders. An information processing device as described in any of (1) to (4). (6) To the computer, A function to retrieve product information for items included in multiple orders, A function that calculates the picking load for each of the aforementioned products, calculates the workload for each of the aforementioned orders based on the picking load, and assigns the aforementioned orders to multiple workers based on the aforementioned workload, An information processing program capable of executing [the specified action]. [Explanation of Symbols]
[0102] 1...Server, 2...Ordering terminal, 3...Picking terminal, 11...Processor, 12...Main memory, 13...Auxiliary storage device, 14...Communication interface, 100...Picking operation support system, 110...Acquisition unit, 111...Assignment processing unit, 112...Output unit, 113...Registration processing unit, 114...Settlement processing unit, 115...Delivery processing unit, 130...Program storage area, 131...Data storage area, 1300...Assignment program, 1301...Optimization program, 1310...Product information, 1311...Order information, 1312...Picking list, 1313...Basic settings table.
Claims
1. A unit that retrieves product information for items included in multiple orders, An assignment processing unit calculates the picking load for each of the aforementioned products, calculates the workload for each of the aforementioned orders based on the picking load, and assigns the aforementioned orders to multiple workers based on the workload; Equipped with, The picking load is set based on one of the following: the distance from the reference product's location to its display location, the difference from a predetermined weight, or the difference from a predetermined volume. The allocation processing unit allocates the multiple orders in such a way that the variation in the workload of the multiple workers is reduced. Information processing device.
2. The aforementioned multiple orders are multiple orders that require the picking work to be completed within a predetermined time, The product that serves as the basis for the picking load is the product located on the middle shelf of the display shelf. The information processing apparatus according to claim 1.
3. The picking load varies depending on the worker. The information processing apparatus according to claim 1.
4. The allocation processing unit allocates the multiple orders to multiple workers based on the workload and the number of orders. The information processing apparatus according to claim 1.
5. On the computer, A function to retrieve product information for items included in multiple orders, A function that calculates the picking load for each of the aforementioned products, calculates the workload for each of the aforementioned orders based on the picking load, and assigns the aforementioned orders to multiple workers based on the aforementioned workload, An information processing program capable of executing, The picking load is set based on one of the following: the distance from the reference product's location to its display location, the difference from a predetermined weight, or the difference from a predetermined volume. The aforementioned assignment function assigns the multiple orders in such a way that the variation in the workload of the multiple workers is reduced. Information processing program.
6. The plurality of orders are a plurality of orders that require the picking work to be completed within a predetermined time, The product that serves as the basis for the picking load is the product located on the middle shelf of the display shelf. The information processing program according to claim 5.
Citation Information
Patent Citations
Picking commodity arranging method
JP2001019129A
Picking work management system and program
JP2018002484A
Work support program, work support method and information processing device
JP2019144632A
System, method, and program for providing a shopping agent service
JP6530851B1
Shipment order allocation device
WO2016117111A1