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

Figure 2025032622000001_ABST
Abstract
Description
[Technical field]
[0001] An embodiment of the present invention relates to an information processing device and an information processing program. [Background technology]
[0002] In recent years, shopping proxy services such as online supermarkets, where customers order products via the Internet and pick them up at their home or other location at the time of their choice, are becoming more and more popular. In such shopping proxy services, a picker picks up the products ordered by the customer from a store or warehouse, and a delivery person delivers the picked up products to the customer's home or other location.
[0003] However, with conventional services, when multiple orders are assigned to multiple pickers, there may be an imbalance in the workload of each picker, such as the number of products to be picked or the number of picking trips.
[0004] Therefore, there is a need for a picking operation support system that can equalize the picking work load among multiple pickers. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent No. 6530851 Summary of the Invention [Problem to be solved by the invention]
[0006] The problem to be solved by the embodiments of the present invention is to provide an information processing device and an information processing program capable of allocating picking work based on the workload. [Means for solving the problem]
[0007] In one embodiment, the information processing device includes 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 workload 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 workload. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram illustrating a picking operation support system according to an embodiment. [Diagram 2] FIG. 2 is a conceptual diagram for explaining a picking operation according to the embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of a data structure of product information according to the embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of a data structure of order information according to the embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of a data structure of a picking list according to the embodiment. [Figure 6] FIG. 6 is a diagram illustrating an example of the data structure of a basic setting table according to the embodiment. [Figure 7] FIG. 7 is a flowchart illustrating an example of a procedure of information processing by the server according to the embodiment. [Figure 8] FIG. 8 is a flowchart illustrating an example of a procedure for information processing regarding order allocation by the server according to the embodiment. [Figure 9] FIG. 9 is a flowchart illustrating an example of a procedure for information processing regarding order allocation by the server according to the embodiment. [Figure 10] FIG. 10 is a flowchart illustrating another example of a procedure for information processing regarding order allocation by the server according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] (Embodiment) Hereinafter, the embodiments will be described with reference to the drawings. In the drawings, the same components are denoted by the same reference numerals as much as possible, and duplicated explanations will be omitted.
[0010] (Configuration example) FIG. 1 is a block diagram illustrating a picking operation support system 100 according to an embodiment. The picking operation 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 connected to each other via a network so as to be able to communicate with each other freely. For example, the network is configured with one or more of 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. The picking operation support system 100 may also refer to a system including at least two of the devices of 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 connected to the ordering terminal 2 and the picking terminal 3 via a network so as to be able to communicate freely. The server 1 receives various data from the ordering terminal 2 and the picking terminal 3, and outputs various data to the ordering terminal 2 and the picking terminal 3. The server 1 is an example of an information processing device. An example of the configuration of the server 1 will be described later.
[0012] The server 1 provides a shopping agent service. For example, the shopping agent service accepts product orders from customers via the order terminal 2, and assigns pickers to pick up products according to the orders. Picking up is also called picking. The picker picks products included in multiple orders within a delivery time frame. The picker picks at least one order. The multiple orders indicate multiple orders that require picking to be completed within a predetermined delivery time frame. Each of the multiple orders includes at least one product. The delivery time frame is, for example, a time frame that divides the delivery time by a predetermined time interval. The delivery time frame is, for example, a time frame in increments of one hour or two hours. The delivery time frame is, for example, "11:00 to 13:00", "13:00 to 15:00", "15:00 to 17:00", etc. In one delivery time frame, multiple pickers pick products included in multiple orders. For example, when one order includes multiple items, the same picker picks the multiple items. Note that different pickers may pick some of the multiple items included in one order. The shopping agent service assigns multiple orders included in one delivery time frame to multiple pickers. The pickers use shopping carts to pick items in the store and place the picked items in baskets loaded into the shopping cart. The shopping cart is also simply called a cart. The specified delivery time frame is an example of a specified time. The picker may be interpreted as an operator, a person in charge, or a worker.
[0013] The number of baskets required to pick an order varies depending on the number of items and their volume. A picker may pick two or more orders simultaneously in one picking operation (one trip), sorting them by order. The total number of baskets for orders picked by the same picker at the same time (in one trip) must not exceed the number of baskets that can be loaded into a cart. A picker cannot split an order into multiple 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 trip indicates that a picker uses one cart to go around the store. One cart is loaded with a predetermined number of baskets. The predetermined number is, for example, three. For example, one picker performs one picking trip in a store during a certain delivery time frame by using one cart to put products into three baskets. Picking in one trip includes picking of products included in at least one order. One picker may perform two or more picking trips in a store during a certain delivery time frame.
[0015] The picking operation will be described. FIG. 2 is a conceptual diagram for explaining a picking operation according to the embodiment. FIG. 2 includes, for example, a list in which a plurality of orders received from a plurality of customers are arranged by delivery time frame. The list includes a delivery time frame, an order ID, a delivery address, a product list, and the like. The delivery time frame indicates a time frame in which a customer of each order desires delivery. The order ID is unique identification information assigned to each order in order to identify each order individually. The order ID is identification information attached to each order. The delivery address is information indicating a location where a customer desires delivery. The delivery address is, for example, the address of the customer based on the user information of the customer. The delivery address may be an address registered when the customer places an order. In the following description, "registration" 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 by a customer. One order includes a series of processes from when a customer uses a shopping agent service to order a product, to when the customer pays for the product, or when the order is completed. One order includes processes from when the order is started to when the order registration is completed. The completion of the order registration indicates that the customer has performed a payment operation for the product or a completion operation for the order. For example, in response to the customer performing an order registration completion operation via the ordering terminal 2, the server 1 acquires an order registration completion instruction from the ordering terminal 2.
[0016] In the example of FIG. 2, there are nine orders with order IDs "O0001" to "O0009" during the delivery time frame "11:00 to 13:00". For example, the server 1 assigns the nine orders with order IDs "O0001" to "O0009" during the delivery time frame "11:00 to 13:00" to three pickers 01 to 03. In the example of FIG. 2, the picking work of the products with order IDs "O0001", "O0003", and "O0004" is assigned to picker 01. The picking work of the products with order IDs "O0002", "O0006", and "O0007" is assigned to picker 02. The picking work of the products with order IDs "O0005", "O0008", and "O0009" is assigned to picker 03. In the following explanation, it is assumed that the picking work is performed in one store.
[0017] Returning to the explanation of Figure 1. The ordering terminal 2 is a device capable of communicating with other devices. The ordering terminal 2 is, for example, a device used by a customer who uses a shopping proxy service. The customer operates the ordering terminal 2 to place an order for a product, for example. For example, the customer logs into the shopping proxy service provided by the server 1 and places an order for a product according to an order image displayed on a display device of the ordering terminal 2. The customer places an order for a product by inputting information such as the product, the delivery location, and the delivery date and time. The ordering 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 ordering terminal 2 is an example of an information processing terminal. A configuration example of the ordering terminal 2 will be described later. The customer is an example of a user of the ordering terminal 2. The picking operation support system 100 includes at least one ordering 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 picker who performs picking work to pick up products in a store or the like in response to a customer's order. For example, the picker performs picking work based on an allocation image displayed on a display device of the picking terminal 3. For example, the picking terminal 3 is a PC, a smartphone, a tablet terminal, or the like. The picker may be interpreted as an operator, a worker, a store clerk, a staff member, a user, or a person. The picker is an example of a user of the picking terminal 3. The picking operation support system 100 includes at least one picking terminal 3.
[0019] An example of the configuration of the server 1 will be described. The server 1 is a device including a processor 11, a main memory 12, an auxiliary storage device 13, and a communication interface 14. Each component of the server 1 is connected to each other so as to be able to input and output signals. In FIG. 1, the interface is written as "I / F".
[0020] The processor 11 corresponds to the central part of the server 1. The processor 11 is an element that constitutes 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 the auxiliary storage device 13 into the main memory 12. The program is a program that causes the processor 11 of the server 1 to realize each part described below. The processor 11 executes various operations by executing the program loaded into the main memory 12.
[0021] The main memory 12 corresponds to the main storage portion of the server 1. The main memory 12 is an element that constitutes the computer of the server 1. The main memory 12 includes a nonvolatile memory area and a volatile memory area. The main memory 12 stores an operating system or a program in the nonvolatile memory area. The main memory 12 uses the volatile memory area as a work area where data is appropriately rewritten by the processor 11. For example, the main memory 12 includes a ROM (Read Only Memory) as a nonvolatile memory area. For example, the main memory 12 includes a RAM (Random Access Memory) as a volatile memory area. The main memory 12 stores a program.
[0022] The auxiliary storage device 13 corresponds to the auxiliary storage portion of the server 1. The auxiliary storage device 13 is an element that constitutes the computer of the server 1. The auxiliary storage device 13 is an EEPROM (registered trademark) (Electric Erasable Programmable Read-Only Memory), an HDD (Hard Disc Drive), an SSD (Solid State Drive), or the like. The auxiliary storage device 13 stores the above-mentioned programs, data used by the processor 11 in performing various processes, and data generated by the processes in the processor 11. The auxiliary storage device 13 stores the above-mentioned programs.
[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 allocation program 1300 and an optimization program 1301. The allocation program 1300 is a program for determining an allocation pattern to be applied from among all patterns for allocating orders to pickers. The allocation pattern indicates candidates for an allocation method for allocating multiple orders among multiple pickers within a predetermined delivery time frame. For example, the pattern indicates a pattern in which the same number of orders are allocated to pickers 01 to 03 in descending order of order ID. The type of allocation pattern can be set by a known technique. The allocation processing unit 111 described later performs processing based on the allocation program 1300. The optimization program 1301 indicates, for example, a mathematical optimization program. The optimization program 1301 includes a mathematical programming solver. The mathematical programming solver indicates software equipped with an algorithm for solving a mathematical programming problem. The optimization program 1301 can be realized by a known mathematical optimization technique.
[0024] The data storage area 131 stores product information 1310, order information 1311, a picking list 1312, and a basic setting table 1313. The product information 1310 will be described with reference to FIG.
[0025] FIG. 3 is a diagram illustrating an example of the data structure of product information 1310 according to the embodiment. The product information 1310 includes information such as product identification information, product name, picking position, volume, and picking load. The product information 1310 may include information on the weight of the product. The product identification information is unique identification information assigned to each product to identify the product individually. The product name indicates the product name set for each product. The picking position indicates the picking position of the product. The picking position is information on the display position of the product in a store or the like where the product is picked. The picking position indicates, for example, a position in an aisle facing the shelf on which the product is displayed where the picker can easily find and pick up the product. The picking position may be information indicating the shelf on which the product is displayed. The picking position may be information indicating the area of the shelf on which the product is displayed. The picking position may be registered in correspondence with a location ID of map information of the store or the like. The picking position may be registered in advance by an administrator or the like. The picking position may be updated as appropriate by an administrator or the like. The volume is information indicating an approximate size of the product. The volume is calculated for each product as (the reciprocal of the number that can fit in the shopping basket) x 100. For example, if the volume of a shopping basket is 100, then 10 items with a volume of 10 can fit in the basket. Note that a shopping basket is a container that is loaded onto a cart used by a picker, and is not limited to a basket.
[0026] The picking load is information indicating the load of a worker for picking one item. The picking load is, for example, information indicating the workload based on item information. For example, the picking load of a reference item is set to "1". The reference item includes, for example, an item located near the middle of a display shelf. The reference item includes an item that is equal to or less than a predetermined weight. The reference item includes an item that is equal to or less than a predetermined volume. A value greater than 1 may be set for an item that has a higher picking load than the reference item, such as an item that is displayed far away, an item that is difficult to find, or an item that is heavy and burdensome. The picking load may be set based on the distance from the position of the reference item to the display position of the item, the difference from a predetermined weight, the difference from a predetermined volume, or the like. The picking load may be registered in advance by a manager or the like. The picking load may be updated as appropriate by a manager or the like. The picking load may be variable depending on the attributes of the picker. For example, the picking load may be weighted depending on the gender, age, physique, years of experience, or the like of the picker. The picking load may vary depending on factors such as the work capacity of the picker.
[0027] In the example of Figure 3, "XX Milk" with product ID "P0001" indicates that the picking position is "L0011", the volume is "6", and the picking load is "1". Figure 3 also indicates that "XX Rice" with product ID "P0003" has a larger volume and a higher picking load than "XX Milk".
[0028] The product information may include information indicating a product category. Examples of the categories include fruits and vegetables, meat, dairy products, etc. The category may be a category related to the display position or sales area of the product in the store.
[0029] The order information 1311 will be described with reference to FIG.
[0030] FIG. 4 is a diagram illustrating an example of the data structure of the order information 1311 according to the embodiment. The order information 1311 includes information such as an order ID, a delivery time frame, a total volume, a total picking load, the number of baskets, and a person in charge ID. The total volume indicates the total volume of the products calculated based on the volume of at least one product included in each order. The total volume indicates the volume of all the products included in the order. The total picking load indicates the total picking load of the products calculated based on the picking load of at least one product included in each order. The total picking load indicates the picking load of all the products included in the order. The number of baskets indicates the number of baskets required to accommodate at least one product included in each order. The number of baskets indicates the number of baskets required to accommodate all the products included in the order. The person in charge ID is unique identification information assigned to each picker to individually identify the picker. The person in charge ID is information indicating the person in charge of picking the products included in each order. The order information may be saved or updated every time the server 1 obtains an order registration completion instruction from the order terminal 2. The order information may be saved or updated based on the calculation of the total volume, the total picking load, or the number of baskets. The order information may be saved or updated each time a picker is determined.
[0031] The example in Fig. 4 shows that for the order with order ID "O0001", the delivery time frame 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". Fig. 4 shows that the picking person for the items with order IDs "O0001" to "O0003" is "W0001".
[0032] The picking list 1312 will be described with reference to FIG.
[0033] FIG. 5 is a diagram illustrating an example of the data structure of the picking list 1312 according to the embodiment. The picking list 1312 includes information such as an order ID, a product ID, a quantity, etc. The picking list 1312 can be registered or updated every time an order registration completion instruction is obtained from the ordering terminal 2.
[0034] FIG. 5 shows that the order with the order ID "O0001" includes one product with the product ID "P0005" and one product with the product ID "P0054".
[0035] The basic setting table 1313 will be described with reference to FIG.
[0036] FIG. 6 is a diagram illustrating an example of the data structure of the basic setting table 1313 according to the embodiment. The basic setting table 1313 includes information on a setting value for each item. For example, the basic setting table 1313 includes the capacity of a basket used for picking and the maximum number of baskets that can be loaded in a cart. The capacity of a basket used for picking and the maximum number of baskets that can be loaded in a cart can be set in advance by an administrator or the like. The basic setting table 1313 includes a weight "w item The basic setting table 1313 includes a weight "w basket " Contains "w item " and "w basket " can be set in advance by an administrator or the like.
[0037] Figure 6 shows the set value of the basket capacity, the set value of the maximum number of baskets that can be loaded in the cart, and the weight, w item The setting value of "1.0" and the weight "w basket The setting value of each item set in the basic setting table 1313 may be updated as appropriate.
[0038] Returning to the explanation of Figure 1. The communication interface 14 includes various interfaces that communicatively connect the server 1 to other devices via a network in accordance with a predetermined communication protocol.
[0039] The hardware configuration of the server 1 is not limited to the above-mentioned configuration. The server 1 allows the above-mentioned components to be omitted or changed and new components to be added as appropriate.
[0040] Each unit realized by the above-mentioned processor 11 will be described. The processor 11 realizes an acquisition unit 110, an allocation processing unit 111, an output unit 112, a registration processing unit 113, a payment processing unit 114, and a delivery processing unit 115. Each unit realized in the processor 11 can also be referred to as each function. Each unit realized in the processor 11 can also be referred to as being realized in a control unit including 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 ordering terminal 2 via the communication interface 14. The order registration completion instruction may include information related to the order. The acquisition unit 110 may acquire the order registration completion instruction and the information related to the order separately. The information related to the order includes product information of the products included in the order. The acquisition unit 110 may acquire a payment completion notice from the ordering terminal 2. The acquisition unit 110 may acquire the information related to the order in response to acquiring the payment completion notice. The acquisition unit 110 updates the picking list and the order information based on the information related to the order. The acquisition unit 110 may acquire a report of product receipt from the ordering terminal 2 after the delivery process. The acquisition unit 110 may acquire information such as service evaluation from the ordering terminal 2. In the following description, "acquire" may be read as "receive".
[0042] The allocation processing unit 111 allocates a plurality of orders to a plurality of pickers. The allocation processing unit 111 calculates a picking load for each product. The allocation processing unit 111 calculates a workload for each of a plurality of orders based on information on the picking load. The workload is information indicating a workload related to the work of picking products included in each order. The workload is, for example, a value calculated based on product information of the products included in the order. The workload can be calculated based on the picking load of each product included in the order. The workload of each order may be the sum of the picking loads of each product included in each order. The workload of each order may be a value calculated by weighting the picking load of each product included in each order. The workload of each order may be a value calculated by weighting the picking load of each product included in each order and a predetermined parameter related to the product. The workload of each order may be a value calculated by weighting each item of product information included in each order. The workload of each picker is information indicating a load related to the work of picking products included in the order assigned to each picker. The workload is a value calculated based on, for example, information related to an order. The workload may be calculated based on, for example, a picking route for the products included in the order. The workload may be calculated based on, for example, the number of products included in the order. The workload may be calculated based on, for example, the category of the products included in the order.
[0043] The allocation processing unit 111 allocates the orders to the pickers based on the workload information. The allocation processing unit 111 allocates the orders so as to reduce the variation in the workload of the pickers. The variation in the workload may include, for example, the variation in the number of allocated orders. The variation in the workload may include, for example, the variation in the number of products to be picked. The variation in the workload may include the variation in the work time to pick the products. The variation in the workload may include the variation in the number of picking trips. The variation in the workload may include the variation in the work time to pick the products. Allocating the orders so as to reduce the variation in the workload indicates allocating the orders so as to equalize the workload among the pickers. Allocating the orders so as to reduce the variation in the workload indicates allocating the orders so as to optimize the workload among the pickers. The allocation processing unit 111 may allocate the orders to the pickers based on the workload and the number of orders. The allocation processing unit 111 may allocate multiple orders to multiple delivery persons so as to reduce the workload of each picker and the variation in the number of orders. The allocation processing unit 111 allocates multiple orders to multiple delivery persons.
[0044] The output unit 112 outputs the picking list information and the order information to the picking terminal 3 via the communication interface 14. In the following description, "output" may be read as "transmit".
[0045] The registration processing unit 113 acquires a work completion notification of the picking work from the picking terminal 3 via the communication interface 14. The work completion notification is a notification indicating that picking of the product has been completed. The registration processing unit 113 updates the work status of the picking work based on the work completion notification. The registration processing unit 113 may store the work status of the picking work in the auxiliary storage device 13.
[0046] The payment processing unit 114 performs a payment process for the product price to the store that received the order. The payment process can be realized by a known payment processing technology. The payment processing unit 114 may also perform a payment process for the fees paid to the picking staff and the delivery staff.
[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 delivery clerk who is in charge of delivering the products included in the order. The delivery task information includes, for example, information about the order to be assigned to the delivery clerk.
[0048] (Example of operation) The process performed by the picking operation support system 100 will now be described. In the following description, which focuses on the server 1, the server 1 may be read as the processor 11. Note that the process steps described below are merely examples, and each process may be modified as much as possible. In addition, steps may be omitted, replaced, or added as appropriate for the process steps described below depending on the embodiment. In the following process, it is assumed that the user of the ordering terminal 2 registers an order in the shopping agent service provided by the server 1. The server 1 accepts order registrations from the user of the ordering terminal 2 at any time. In response to the 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 receiving 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 the completion of a payment operation by the user of the ordering terminal 2. In this case, the server 1 may obtain a payment completion notification and information related to the order from the ordering terminal 2.
[0049] FIG. 7 is a flowchart showing an example of a procedure of information processing by the server 1 according to the embodiment.
[0050] The acquisition unit 110 acquires information related to the order from the ordering terminal 2 (ACT1). In ACT1, for example, the acquisition unit 110 acquires an order registration completion instruction from the ordering terminal 2. The acquisition unit 110 acquires the order registration completion instruction and information related to the order. The acquisition unit 110 updates the order information 1311 and the picking list 1312 based on the information related to the order.
[0051] The processor 11 determines whether or not a predetermined work timing has been reached (ACT2). The predetermined work timing may be set by an administrator, etc. 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 the processor 11 determines that the predetermined work timing has been reached (ACT2: YES), the process transitions from ACT2 to ACT3. If the processor 11 determines that the predetermined work timing has not been reached (ACT2: NO), the process transitions from ACT2 to ACT1.
[0052] The allocation processing unit 111 allocates a plurality of orders to a plurality of pickers and delivery personnel (ACT3).
[0053] The output unit 112 outputs the picking list information and the order information to the picking terminal 3 (ACT4). In ACT4, for example, the output unit 112 outputs the picking list information and the order information to the picking terminals 3 of multiple pickers who are in charge of orders in a specific delivery time frame. The output unit 112 may output the picking list information and the order information related to the assigned orders to each picker.
[0054] The registration processing unit 113 acquires a work completion notification of the picking work from the picking terminal 3 (ACT5). In response to acquiring the work completion notification, the registration processing unit 113 may update the work status of the picking work.
[0055] The payment processing unit 114 performs a payment process for the product price to the store that received the order (ACT 6). The payment processing unit 114 may perform the payment process using a known technique.
[0056] The delivery processing unit 115 outputs delivery task information to the delivery terminal (ACT7). In ACT7, for example, information related to the delivery task assigned by the assignment processing unit 111 is output to the delivery terminal. The user of the delivery terminal performs delivery work according to the delivery task information. The assignment processing unit 111 may assign multiple orders to multiple delivery staff in the same way as assignment to pickers. The assignment processing unit 111 may assign multiple orders to multiple delivery staff using known technology.
[0057] After the delivery process, the acquisition unit 110 may acquire a product receipt report from the order terminal 2. The acquisition unit 110 may acquire information such as a service evaluation from the order terminal 2. After the delivery process, the payment processing unit 114 may perform a payment process for fees paid to the picking staff and the delivery staff.
[0058] FIG. 8 is a flowchart showing an example of a procedure for information processing regarding order allocation by the server 1 according to the embodiment. The following process is an example of specific information processing for allocating multiple orders to multiple pickers in ACT3 shown in Fig. 7. In this example, the workload for each order is calculated by weighting the total picking load for each product and the number of baskets.
[0059] The allocation processing unit 111 calculates the sum of the volumes of all products (total volume) for all orders (ACT11). In ACT11, for example, the allocation processing unit 111 refers to the product information 1310 to obtain the volume for at least one product included in each order. The allocation processing unit 111 calculates the total volume of at least one product included in each order. The allocation processing unit 111 stores information on the total volume in the order information 1311.
[0060] The allocation processing unit 111 calculates the sum of the picking loads (total picking load) of all items included in each order for all orders (ACT12). In ACT12, for example, the allocation processing unit 111 refers to the item information 1310 to acquire picking load information for at least one item included in each order. 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 information on the total picking load in the order information 1311.
[0061] The allocation processing unit 111 calculates the number of baskets for each order (ACT13). In ACT13, for example, the allocation processing unit 111 divides the total volume of the products for each order by the capacity of the basket, and calculates the number of baskets required to accommodate all the products included in each order by rounding up. The allocation processing unit 111 stores information on the number of baskets in the order information 1311.
[0062] The allocation processing unit 111 determines an allocation pattern that minimizes the variation in workload among a plurality of pickers (ACT 14). In ACT 14, for example, the allocation processing unit 111 determines an allocation pattern that minimizes the variation in workload among pickers from among all patterns for allocating orders to pickers based on the allocation program 1300.
[0063] The allocation processing unit 111 registers information about the pickers based on the determined allocation pattern (ACT 15). In ACT 15, for example, the allocation processing unit 111 stores identification information of the pickers allocated to each order in the order information 1311.
[0064] FIG. 9 is a flowchart showing an example of a procedure for information processing regarding order allocation by the server 1 according to the embodiment. The following process is an example of specific information processing for determining an allocation pattern with small variations 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 seeks a solution to the formulated problem by processing based on the optimization program 1301.
[0065] In the following process, the work load is calculated based on the picking load. In the following process, a method for formulating the process of assigning pickers as a mixed integer programming problem will be 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 the decision variable in the optimization program 1301 (ACT22). In ACT22, for example, the allocation processing unit 111 adjusts the decision variable "x ij ", "y j Define the decision variable x ij y is a binary variable that is 1 if order i (i=1,2,...,m) is assigned to picker j (j=1,2,...,n) and 0 if it is not assigned. j " is an integer variable that indicates the number of trips for which picker j picks. The allocation processing unit 111 uses the decision variable "z min ","z max Define the decision variable z min ” is a continuous variable that represents the minimum workload of each picker. max " is a continuous variable that indicates the maximum workload of each picker.
[0068] The allocation processing unit 111 registers a constant in the optimization program 1301 (ACT23). In ACT23, for example, the allocation processing unit 111 sets the number of baskets of each order to a constant "b i ” and the total picking load for each order is a constant “c i The allocation processing unit 111 refers to the basic setting table and sets the maximum number of baskets that can be loaded into the cart to a constant "D". The allocation processing unit 111 refers to the basic setting 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 for order i. i " is a constant that represents the picking load for order i. The constant "D" is a constant that represents the maximum number of baskets that can be loaded into a cart. The constant "w item " is a constant that represents the weight of the product picking load in the calculation of the workload. num_work " is a constant that represents the weighting of the number of flights in calculating workload.
[0069] The allocation processing unit 111 registers the objective function and the constraint conditions in the optimization program 1301 (ACT24). The objective function is expressed by, for example, Equation 1.
[0070]
number
[0071]
number
[0072]
number
[0073]
number
[0074] The allocation processing unit 111 determines the allocation of a plurality of orders to a plurality of pickers (ACT25). In ACT25, for example, the allocation processing unit 111 solves an optimization problem formulated as a mixed integer programming problem such as Equation 1, Equation 2, Equation 3, and Equation 4 by the optimization program 1301. The allocation processing unit 111 determines an order allocation "x ij Determine the order allocation to be smoothed, x ij " is the optimized variable "x ij The allocation processing unit 111 allocates the optimized variable “x ij ” to determine the allocation of multiple orders to multiple pickers.
[0075] The allocation processing unit 111 stores allocation information indicating the allocation of the multiple orders to the multiple pickers in the order information 1311 (ACT26).
[0076] Although the above-mentioned allocation process has been described as a method of formulating a mixed integer programming problem and finding a solution using a mathematical optimization program, the formulation method and the solution finding method are not limited to this. For example, the allocation process may be a method of investigating all candidates for picker allocation in a brute-force manner, a method of formulating an Ising problem and finding a solution using an Ising machine, a method using a heuristic algorithm, or the like.
[0077] According to this example, the server 1 can calculate the workload of each of multiple orders to be picked during a specified delivery time slot, and assign the multiple orders to multiple pickers based on the calculated workload. This allows the server 1 to assign picking tasks for multiple orders during a specified delivery time slot to multiple pickers based on their workload. For example, the server 1 can determine an assignment pattern that reduces the variation in workload among multiple pickers based on an optimization program. In this case, the server 1 can equalize the workload of pickers for multiple orders during a specified delivery time slot.
[0078] Also, according to this example, the server 1 can calculate the workload based on the total number of picking loads and the number of baskets that can be loaded on the cart used by each picker. This allows the server 1 to prevent bias in the number of products picked by each picker and the number of picking trips, and to equalize the workload of each picker. Furthermore, by equalizing the workload of each picker, the server 1 can assign multiple orders so that all pickers can finish their work within a specified delivery time frame. This allows the server 1 to increase the number of orders that can be processed within a specified delivery time frame.
[0079] FIG. 10 is a flowchart showing another example of the procedure of information processing regarding order allocation by the server 1 according to the embodiment. The following process is an example of specific information processing for allocating multiple orders to multiple pickers in ACT3 shown in Fig. 7. In this example, the workload for each order is calculated using information such as the length of the picking route, the number of products 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 refers to the product information 1310 to obtain the volume for at least one product included in each order. The allocation processing unit 111 calculates the total volume of at least one product included in each order. The allocation processing unit 111 stores information on the total volume in the order information 1311.
[0081] The allocation processing unit 111 calculates the operation time from the route length for all orders (ACT32). In ACT32, for example, the allocation processing unit 111 determines a route for picking at least one product included in each order. The picking route can be determined by known technology. The allocation processing unit 111 calculates the route length for each order. The allocation processing unit 111 calculates the operation time based on the route length for each order. The allocation processing unit 111 stores information on the operation time in the order information 1311.
[0082] The allocation processing unit 111 acquires the number of categories of products included in each order for all orders (ACT33). In ACT33, for example, the allocation processing unit 111 refers to the product information 1310 to acquire category information of at least one product included in each order and calculates the number of categories. The allocation processing unit 111 stores the information on the number of categories 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 the products by the capacity of the basket for each order, and calculates the number of baskets required to accommodate all the products included in each order by rounding up. The allocation processing unit 111 stores information on the number of baskets in the order information 1311.
[0084] The allocation processing unit 111 determines an allocation pattern that minimizes the variation in workload among a plurality of pickers (ACT35). In ACT35, for example, the allocation processing unit 111 determines an allocation pattern that minimizes the variation in workload among pickers from among all patterns for allocating orders to pickers based on an allocation program. The process of determining the allocation pattern is similar to the process in Fig. 9. In this example, in ACT34 in Fig. 9, Equation 5 is used instead of Equation 4 as a constraint condition.
[0085]
number
[0086] The allocation processing unit 111 registers information about the pickers based on the determined allocation pattern (ACT 36). In ACT 36, for example, the allocation processing unit 111 stores, in the order information 1311, identification information of the pickers allocated to each order.
[0087] According to this example, the server 1 can calculate the workload based on the length of the picking route, the number of products, the variation in product categories, and the like. This allows the server 1 to prevent bias in the work time of each picker and equalize the workload of each picker. Furthermore, by equalizing the workload of each picker, the server 1 can assign multiple orders so that all pickers can finish their work within a specified delivery time frame. This allows the server 1 to increase the number of orders that can be processed within a specified delivery time frame.
[0088] (Modification) The multiple orders may be orders for multiple stores. In this case, the allocation processing unit 111 may allocate the multiple orders within a predetermined delivery time frame for each store to multiple pickers.
[0089] (effect) The server 1 according to the embodiment can acquire product information for products included in multiple orders, calculate the picking load for each product, calculate the workload for each of the multiple orders based on the picking load, and assign the multiple orders to multiple workers based on the workload. For example, the server 1 can calculate the workload for each of a plurality of orders based on the picking load of the products included in each order, and assign the plurality of orders to a plurality of pickers based on the calculated workload. This allows the server 1 to assign picking tasks based on the workload.
[0090] The server 1 according to the embodiment can calculate the workload of each order based on the picking load of the products included in each order for multiple orders that require picking work to be completed within a predetermined time, and assign the multiple orders to multiple pickers based on the calculated workload. This allows the server 1 to assign picking work for multiple orders in a predetermined delivery time frame to multiple pickers based on the workload.
[0091] The server 1 according to the embodiment can allocate multiple orders so as to reduce the variation in workload among multiple workers. For example, the server 1 can determine an allocation pattern that reduces the variation in workload among multiple pickers based on an optimization program. This allows the server 1 to equalize the workload among pickers for multiple orders in a given delivery time frame.
[0092] The server 1 according to the embodiment can calculate the workload for each of a plurality of orders based on the picking load that differs according to the worker, and can assign the plurality of orders to a plurality of workers based on the workload. For example, the server 1 can calculate the workload for each order based on the work capacity of the worker, and can assign the plurality of orders to a plurality of pickers based on the calculated workload. This allows the server 1 to assign picking work so as to equalize the workload according to the worker.
[0093] The server 1 according to the embodiment can allocate multiple orders to multiple workers based on the workload and the number of orders. For example, the server 1 can allocate multiple orders so as to reduce the variation in the workload and number of orders between each worker. This allows the server 1 to allocate picking work so as to equalize the workload of multiple workers.
[0094] (Other embodiments) The information processing device may be realized by one device such as the server 1, or may be realized by multiple devices with distributed functions. In the latter case, the information processing device includes the meaning of an information processing system composed of multiple devices.
[0095] The above-described embodiments may be applied not only to an apparatus but also to a method executed by the apparatus. The above-described embodiments may be applied to a program capable of causing a computer of the apparatus to execute each function. The above-described embodiments may be applied to a recording medium storing a program. The above-described embodiments may be applied not only to a system but also to a method executed by multiple elements included in the system.
[0096] The processing circuitry includes one or more circuits that realize multiple processes by multiple functions, for example, but 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 constituting the processing circuit executes one or more processes among the multiple processes. When the processing circuit is composed of a single circuit, the single circuit executes all of the multiple processes. When the processing circuit is composed of multiple circuits, each of the multiple circuits executes a part of the multiple processes. The part of the multiple processes may be one of the multiple processes, or two or more of the multiple processes. When the processing circuit is composed of multiple circuits, the multiple circuits may be included in one device, or may be distributed across multiple devices.
[0098] The program may be transferred in a state where it is stored in an apparatus, or in a state where it is not stored in an apparatus. In the latter case, the program may be transferred via a network, or in a state where it is recorded on a recording medium. The recording medium is a non-transitory tangible medium. The recording medium is a computer-readable medium. The recording medium may be in any form, such as a CD-ROM or a memory card, as long as it is capable of storing the program and is readable by a computer.
[0099] Although the embodiment of the present invention has been described in detail above, the above description is merely an example of the present invention in every respect. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. In other words, in implementing the present invention, a specific configuration according to the embodiment may be appropriately adopted.
[0100] In short, this invention is not limited to the above-mentioned embodiment as it is, and in the implementation stage, the components can be modified and embodied without departing from the gist of the invention. In addition, various inventions can be formed by appropriately combining multiple components disclosed in the above-mentioned embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, components from different embodiments may be appropriately combined.
[0101] (Additional Note) The above embodiment may be expressed as follows: (1) an acquisition unit for acquiring product information of products included in multiple orders; an allocation processing unit that calculates a picking load for each of the products, calculates a workload 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 workload; An information processing device comprising: (2) the plurality of orders are orders requiring picking operations to be completed within a predetermined time; An information processing device as described in (1). (3) the allocation processing unit allocates the plurality of orders so as to reduce variation in workload among the plurality of workers; An information processing device according to (1) or (2). (4) The picking load varies depending on the worker. An information processing device according to any one of (1) to (3). (5) The allocation processing unit allocates the plurality of orders to a plurality of workers based on the workload and the number of orders. An information processing device according to any one of (1) to (4). (6) To the computer: The function to obtain product information for products included in multiple orders, a function of calculating a picking load for each of the products, calculating a workload for each of the plurality of orders based on the picking load, and allocating the plurality of orders to a plurality of workers based on the workload; An information processing program capable of executing the above. [Explanation of symbols]
[0102] 1...server, 2...order 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...allocation processing unit, 112...output unit, 113...registration processing unit, 114...payment processing unit, 115...delivery processing unit, 130...program memory area, 131...data memory area, 1300...allocation program, 1301...optimization program, 1310...product information, 1311...order information, 1312...picking list, 1313...basic setting table.
Claims
1. An acquisition unit that acquires product information of products included in a plurality of orders; an allocation processing unit that calculates a picking load for each of the products, calculates a workload 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 workload; An information processing device comprising:
2. The plurality of orders are a plurality of orders that require picking work to be completed within a predetermined time. The information processing device according to claim 1 .
3. the allocation processing unit allocates the plurality of orders so as to reduce variation in workload among the plurality of workers. The information processing device according to claim 1 .
4. The picking load varies depending on the worker. The information processing device according to claim 1 .
5. the allocation processing unit allocates the plurality of orders to a plurality of workers based on the workload and the number of orders. The information processing device according to claim 1 .
6. On the computer, The function to obtain product information for products included in multiple orders, a function of calculating a picking load for each of the products, calculating a workload for each of the plurality of orders based on the picking load, and allocating the plurality of orders to a plurality of workers based on the workload; An information processing program capable of executing the above.
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
Shipment order allocation device
WO2016117111A1
System, method, and program for providing a shopping agent service
JP6530851B1