system
The system addresses inefficiencies in shift scheduling and inventory management by inputting staff conditions and scanning barcodes to automate optimal shift creation and accurate product information retrieval, enhancing operational efficiency and reducing errors.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-10-01
- Publication Date
- 2026-04-13
AI Technical Summary
Existing systems face challenges in efficiently creating optimal staff shifts while considering roles, conditions, and preferences, and in accurately and quickly collating product barcodes with inventory databases, leading to errors and inefficiencies in inventory management.
A system that inputs staff conditions such as role, skills, and shift preferences, calculates optimal shifts, and scans product barcodes to retrieve and display corresponding information, using algorithms and databases for efficient shift and inventory management.
Improves the efficiency and accuracy of shift scheduling and inventory management by automating the process and reducing manual errors.
Smart Images

Figure 2026063773000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In the automation of shift creation and inventory taking operations, it is difficult to compile an efficient and optimal shift while considering various information such as the roles, conditions, and desired shifts of staff. Also, in inventory taking operations, although it is required to efficiently scan product barcodes, accurately and quickly collate them with a database to obtain product information, there are problems that manual operation is prone to errors and takes time.
Means for Solving the Problems
[0005] The present invention solves the aforementioned problem with a system that includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for transmitting the input condition data to a server; means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data; and means for generating the calculated shift arrangement result and transmitting it to a terminal. Furthermore, by including means for scanning product barcodes; means for transmitting the scanned barcode data to a server; means for comparing the received barcode data with a database and extracting the corresponding product information; and means for transmitting and displaying the extracted product information to a terminal, the system also contributes to improving the efficiency of inventory management.
[0006] A "user" is someone who operates the system and performs tasks such as creating work schedules and inventory management.
[0007] "Role" refers to the specific tasks or positions that staff members are responsible for in their work.
[0008] "Skills" refer to the specialized knowledge and abilities that staff members possess, and are one of the conditions considered when creating work schedules.
[0009] "Experience" refers to the tasks that staff members have performed in the past and the achievements they have accumulated.
[0010] "Shift preferences" refers to the working hours and dates that staff members would like to work.
[0011] "Conditional data" refers to data that includes information such as the user's role, skills, experience, and shift preferences.
[0012] A "device" refers to a device that a user operates and interacts with the system, and includes, for example, smartphones and tablets.
[0013] A "server" refers to a computer system that receives input data and executes a shift scheduling algorithm.
[0014] "Shift arrangement" refers to an arrangement plan in which the working hours and assigned tasks of staff are appropriately allocated.
[0015] "Algorithm" refers to a series of procedures and calculation methods for calculating the optimal shift arrangement based on conditional data.
[0016] "Barcode" refers to an encoded graphic for mechanically reading product information.
[0017] "Database" refers to a system that systematically manages data such as product information and staff information and enables retrieval and inquiry as needed.
[0018] "Product information" refers to detailed information such as the name, price, and inventory quantity of a product.
Brief Description of Drawings
[0019] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9]Shows an emotion map to which a plurality of emotions are mapped. [Figure 10] Shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Mode for Carrying Out the Invention
[0020] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings. <In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0024] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0025] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0026] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0027] [First Embodiment]
[0028] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0029] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0030] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0031] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0032] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0033] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0034] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0035] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0036] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0037] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0038] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0039] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0040] Shift scheduling automation system
[0041] This invention is an automated shift scheduling system that begins with the user inputting conditions such as each staff member's role, skills, experience, and shift preferences. The specific operation of this system is as follows:
[0042] Description of the Embodiment
[0043] First, the user accesses the shift creation screen and enters information for each staff member (e.g., name, role, skills, experience, shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes the shift creation algorithm. This algorithm calculates the optimal shift assignment based on each staff member's conditions, and the calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[0044] Specific example
[0045] For example, a user opens the shift creation screen and sets Person A as "cashier" and Person B as "inventory manager," and enters conditions such as "better at early shifts" and "better at late shifts" for each. The terminal sends this information to the server, and the server executes a shift creation algorithm based on the received data. As a result, a shift arrangement is calculated and displayed on the terminal, assigning Person A to the early shift as cashier and Person B to the late shift as inventory manager.
[0046] Inventory efficiency system
[0047] The present invention also includes, as an inventory efficiency system, a system that scans product barcodes and automatically retrieves and displays product information through matching with a database.
[0048] Description of the Embodiment
[0049] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted into JSON format and sent back to the terminal as an HTTP response. Finally, the terminal analyzes the product information and displays it to the user.
[0050] Specific example
[0051] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database and extracts detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[0052] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[0053] The following describes the processing flow.
[0054] Shift scheduling automation system
[0055] Program processing flow
[0056] Step 1:
[0057] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[0058] Step 2:
[0059] The terminal converts the user's input data into JSON format.
[0060] Step 3:
[0061] The terminal converts the JSON data and sends it to the server using an HTTP POST request.
[0062] Step 4:
[0063] The server receives an HTTP request and parses the JSON data.
[0064] Step 5:
[0065] The server executes a shift scheduling algorithm based on the analyzed data. The algorithm calculates the optimal shift arrangement, taking into account the conditions of each staff member.
[0066] Step 6:
[0067] The server converts the calculation results into JSON format.
[0068] Step 7:
[0069] The server converts the JSON data and sends it to the terminal as an HTTP response.
[0070] Step 8:
[0071] The terminal receives an HTTP response from the server and analyzes the shift data.
[0072] Step 9:
[0073] The terminal displays the analyzed shift data on the screen. Specifically, it shows that Person A's shift is the early shift cashier, and Person B's shift is the late shift inventory manager.
[0074] Inventory efficiency system
[0075] Program processing flow
[0076] Step 1:
[0077] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[0078] Step 2:
[0079] The device retrieves the barcode data scanned and converts it to JSON format.
[0080] Step 3:
[0081] The terminal converts the barcode data and sends it to the server using an HTTP POST request.
[0082] Step 4:
[0083] The server receives an HTTP request and parses the barcode data.
[0084] Step 5:
[0085] The server queries the database to retrieve the relevant product information.
[0086] Step 6:
[0087] The server retrieves product information from the database and converts it to JSON format.
[0088] Step 7:
[0089] The server sends the converted product information to the terminal as an HTTP response.
[0090] Step 8:
[0091] The terminal receives an HTTP response from the server and parses the product information.
[0092] Step 9:
[0093] The device displays the product information it has analyzed on the screen. Specifically, it will display something like, "Product A: Price 1000 yen, Stock Quantity 50 units."
[0094] (Example 1)
[0095] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0096] Many modern companies face the problem of significant effort and time spent on tasks such as creating staff schedules and conducting inventory. In particular, creating schedules that take into account each staff member's role, skills, and shift preferences, as well as conducting inventory to obtain accurate product information, are complex processes requiring efficient methods. Furthermore, since systems for automating and rapidly performing these tasks do not currently exist, the development of such systems is urgently needed.
[0097] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0098] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for converting the input condition data into JSON format on the terminal and sending it to the server via an HTTP POST request; means for analyzing the received condition data and executing a shift creation algorithm; means for converting the calculated shift assignment results into JSON format and sending them to the terminal as an HTTP response; means for analyzing the received shift assignment results and displaying them to the user; means for scanning product barcodes and converting the scanned data into JSON format; means for sending the converted barcode data to the server via an HTTP POST request; means for analyzing the received barcode data, comparing it with a database, and extracting the corresponding product information; means for converting the extracted product information into JSON format and sending it to the terminal as an HTTP response; and means for analyzing the received product information and displaying it to the user. This enables the streamlining of shift creation and inventory management operations.
[0099] "User" refers to a user who operates the system and inputs or retrieves information.
[0100] "Role" refers to the duties or functions that staff members or those in charge are expected to perform in their work.
[0101] "Skills" refers to the specialized knowledge and techniques possessed by staff and personnel.
[0102] "Experience" refers to the tasks that staff or employees have performed in the past and their length of service.
[0103] "Shift preferences" refers to the desired working hours and dates of staff or managers.
[0104] "Terminal" refers to devices such as computers, smartphones, and tablets used by users.
[0105] "JSON format" is a data exchange format and is an abbreviation for JavaScript® Object Notation.
[0106] An "HTTP POST request" is one method of sending data to a server using the HTTP protocol.
[0107] A "server" refers to a computer system used for receiving, processing, and transmitting data.
[0108] A "shift scheduling algorithm" refers to a calculation method used to determine the optimal shift arrangement based on the staff's qualifications.
[0109] A "database" refers to a system for efficiently managing large amounts of data.
[0110] A "barcode reader" refers to a device used to read barcodes.
[0111] "Response" refers to the response data sent from the server to the terminal.
[0112] Modes for carrying out the invention
[0113] Shift scheduling automation system
[0114] The automated shift scheduling system of the present invention automatically creates the optimal shift schedule by inputting conditions such as staff roles, skills, experience, and shift preferences. The specific operation of this system is described below.
[0115] First, the user accesses the shift creation screen and enters each staff member's information (name, role, skills, experience, and shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. This process utilizes a JavaScript library running on the terminal.
[0116] The server analyzes the received data using the Python requests library and executes a shift scheduling algorithm. This algorithm uses Python data processing libraries such as pandas and numpy to calculate the optimal shift arrangement based on each staff member's conditions.
[0117] The calculation results are converted to JSON format and sent to the terminal as an HTTP response. The Flask `jsonify` method is used for this. Finally, the terminal parses the received response data and displays the optimal shift placement result to the user. HTML and JavaScript are used for this.
[0118] Specific example
[0119] For example, a user opens the shift creation screen and assigns roles to person A ("cashier") and person B ("inventory manager"), entering conditions such as "better at early shifts" and "better at late shifts" for each. The terminal converts this information into JSON format and sends it to the server. The server executes a shift creation algorithm based on the received data and calculates a shift arrangement that assigns person A to the early shift as cashier and person B to the late shift as inventory manager. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the result data and displays the optimal shift arrangement to the user.
[0120] Example of a prompt
[0121] "Access the shift scheduling screen and assign roles to Person A (cashier) and Person B (inventory manager). Please also indicate which shift each person is best suited for: early or late shifts."
[0122] Inventory efficiency system
[0123] The inventory efficiency system of the present invention scans product barcodes and automatically retrieves and displays product information through matching with a database. The specific operation of this system is described below.
[0124] First, the user activates a dedicated inventory terminal and scans the product barcodes with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. This conversion is performed using JavaScript running on the terminal.
[0125] The server parses the received barcode data using the Python requests library, compares it with the database, and extracts the corresponding product information. An ORM library such as SQLAlchemy is used for database operations. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The Flask jsonify method is used for this purpose.
[0126] Finally, the terminal analyzes the received response data and displays product information to the user. HTML and JavaScript are used for this process.
[0127] Specific example
[0128] For example, when a user scans the barcode of product A, the terminal converts the scanned data into JSON format and sends it to the server. The server checks the database based on the received data and extracts detailed information about product A (name, price, stock quantity). This information is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the resulting data and displays to the user "Product A: Price 1000 yen, Stock quantity 50 units".
[0129] Example of a prompt
[0130] "Scan the barcode of product A using the inventory terminal, send the information to the server, and display the detailed information."
[0131] Thus, the present invention provides a specific system and method for improving the efficiency of shift scheduling and inventory management.
[0132] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0133] Shift scheduling automation system
[0134] Step 1: User accesses the shift creation screen.
[0135] Users access the shift creation screen using a browser and enter each staff member's information (name, role, skills, experience, and shift preferences).
[0136] Input: Staff information (name, role, skills, experience, shift preferences)
[0137] Output: Staff information is entered into the input form displayed in the browser.
[0138] Step 2: The device converts the data to JSON format.
[0139] The terminal converts the staff information entered by the user into JSON format using JavaScript.
[0140] Input: Staff information object
[0141] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[0142] Output: Staff information in JSON format
[0143] Step 3: The device sends an HTTP POST request to the server.
[0144] The terminal sends the converted JSON data to the server as an HTTP POST request using AJAX.
[0145] Input: Staff information in JSON format
[0146] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[0147] Output: HTTP POST request to the server
[0148] Step 4: The server receives the data.
[0149] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[0150] Input: JSON data sent in an HTTP POST request
[0151] Data processing: Receive and analyze data using the requests library.
[0152] Output: Object of analyzed staff information
[0153] Step 5: The server executes the shift scheduling algorithm.
[0154] The server executes a shift scheduling algorithm based on the analyzed staff information. It uses Python's pandas and numpy libraries.
[0155] Input: Staff information object
[0156] Data Calculation: Calculate the optimal shift placement using pandas and numpy.
[0157] Output: Object of the calculated shift placement result
[0158] Step 6: The server converts the results to JSON format.
[0159] The server converts the calculated shift assignment results into JSON format using Python's json module.
[0160] Input: Shifted object
[0161] Data processing: Convert to JSON format using the json module.
[0162] Output: Shifted JSON format result
[0163] Step 7: The server sends the result to the terminal as an HTTP response.
[0164] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[0165] Input: Shifted JSON format result
[0166] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[0167] Output: HTTP response to the terminal
[0168] Step 8: The device analyzes and displays the data.
[0169] The terminal parses the received response data using JavaScript and combines HTML and JavaScript to display the optimal shift layout result to the user.
[0170] Input: Shifted JSON format received in HTTP response
[0171] Data processing: Parse using JavaScript and update the HTML.
[0172] Output: Shift layout result displayed in the browser
[0173] Inventory efficiency system
[0174] Step 1: The user starts up a terminal dedicated to inventory management.
[0175] The user activates a terminal dedicated to inventory management and connects a barcode reader.
[0176] Input: Start the inventory terminal, connect the barcode reader.
[0177] Output: The inventory terminal starts up and the barcode reader is connected.
[0178] Step 2: The user scans the product's barcode.
[0179] The user scans the product's barcode using a barcode reader.
[0180] Input: Product barcode
[0181] Output: Scanned barcode data
[0182] Step 3: The device converts the scanned data to JSON format.
[0183] The terminal converts the scanned barcode data into JSON format using JavaScript.
[0184] Input: Scanned barcode data
[0185] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[0186] Output: Barcode data in JSON format
[0187] Step 4: The device sends an HTTP POST request to the server.
[0188] The terminal sends the converted JSON data to the server via an HTTP POST request using AJAX.
[0189] Input: Barcode data in JSON format
[0190] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[0191] Output: HTTP POST request to the server
[0192] Step 5: The server receives the data.
[0193] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[0194] Input: JSON data sent in an HTTP POST request
[0195] Data processing: Receive and analyze data using the requests library.
[0196] Output: Object of the analyzed barcode data
[0197] Step 6: The server verifies against the database.
[0198] The server compares the analyzed barcode data with the database and extracts the corresponding product information.
[0199] Input: Object of parsed barcode data
[0200] Data Calculation: Use ORM libraries such as SQLAlchemy to match databases and extract product information.
[0201] Output: Object containing extracted product information
[0202] Step 7: The server converts the results to JSON format.
[0203] The server converts the extracted product information into JSON format using Python's json module.
[0204] Input: Object containing extracted product information
[0205] Data processing: Convert to JSON format using the json module.
[0206] Output: Product information in JSON format
[0207] Step 8: The server sends the result to the terminal as an HTTP response.
[0208] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[0209] Input: Product information in JSON format
[0210] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[0211] Output: HTTP response to the terminal
[0212] Step 9: The device analyzes and displays the data.
[0213] The terminal parses the received response data using JavaScript and displays product information to the user by combining HTML and JavaScript.
[0214] Input: Product information in JSON format received via HTTP response.
[0215] Data processing: Parse using JavaScript and update the HTML.
[0216] Output: Product information displayed in the browser
[0217] (Application Example 1)
[0218] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0219] In traditional logistics centers, shift scheduling and inventory management are handled separately, making efficient operation difficult. Furthermore, the reliance on manual processes for staff shift scheduling and inventory management is time-consuming, labor-intensive, and prone to errors. This situation places a heavy burden on staff, highlighting the need for increased efficiency and accuracy.
[0220] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0221] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for transmitting the input condition data to the server; means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data; means for generating the calculated shift arrangement result and transmitting it to a terminal; means for scanning product identification codes with the camera of a smart device; means for transmitting the scanned product identification code data to the server; means for comparing the received product identification code data with a database and extracting the corresponding product information; and means for transmitting and displaying the extracted product information to a terminal. This makes it possible to improve the efficiency and accuracy of shift creation and inventory management operations in a logistics center.
[0222] A "user" is an individual or group that uses the system to create work schedules or manage inventory.
[0223] "Role" refers to information that indicates the specific duties or responsibilities each staff member has.
[0224] "Skills" are evaluation criteria that indicate the specific techniques and abilities that staff members possess.
[0225] "Experience" refers to information that shows the work history and achievements that staff members have accumulated in the past.
[0226] "Shift preferences" refers to information indicating the desired conditions for working hours and work arrangements.
[0227] "Conditional data" refers to information entered by the user, such as their role, skills, experience, and shift preferences.
[0228] A "server" is a central processing unit that receives conditional data and scan data, and performs analysis and calculations.
[0229] "Shift scheduling" refers to the process or result of assigning the most suitable work schedule to each staff member according to their role, skills, and preferences.
[0230] A "terminal" is a device that a user uses to access a system and input / receive information.
[0231] A "product identification code" refers to a barcode, QR code (registered trademark), or other identifier that carries unique information about a product.
[0232] "Scanning" refers to the operation of reading product identification code information using a camera or barcode reader.
[0233] A "database" is a centralized information system used to store and manage product information and staff qualification data.
[0234] "Product information" refers to data that shows details about a product, such as its name, price, and stock level.
[0235] "Shift management" refers to the task of planning and adjusting staff working hours and assigned duties.
[0236] "Product management" refers to the task of monitoring and managing the inventory status and receiving / shipping status of products.
[0237] The embodiment of this invention is primarily provided as a combination of a shift scheduling automation system and an inventory efficiency system. This system has the function of calculating the optimal shift arrangement by inputting information on each staff member using a smart device and transmitting it to a server, and further scanning product identification codes to obtain product information.
[0238] Shift scheduling automation system
[0239] First, the user accesses the shift creation screen and enters information such as each staff member's role, skills, experience, and shift preferences into the terminal. The terminal converts this input data into JSON format and sends it to the server via an HTTP POST request.
[0240] The server analyzes the received condition data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift assignments based on each staff member's role, skills, and preferences. The calculation results are converted to JSON format and sent to the terminal as an HTTP response.
[0241] The terminal analyzes response data and displays the optimal shift assignment results to the user. For example, if a user opens the shift creation screen and sets Staff A as "cashier" and Staff B as "inventory manager," and enters the conditions "good at early shifts" and "good at late shifts," the system calculates a shift assignment that assigns Staff A to the early shift cashier and Staff B to the late shift inventory manager, and displays it on the terminal.
[0242] Inventory efficiency system
[0243] Next, the user activates a dedicated inventory terminal and scans the product barcode with their smart device's camera. The terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request.
[0244] The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The terminal analyzes the product information and displays it to the user.
[0245] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database to extract detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[0246] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management operations in a logistics center.
[0247] Hardware and software to use
[0248] Hardware: Smart devices (smartphones, tablets, etc.), servers
[0249] Software: Python, Flask, JSON, Database Management Systems (MySQL®, PostgreSQL, etc.)
[0250] Specific example
[0251] I'm thinking about an automated shift scheduling system for a logistics center. The system would take staff roles, skills, and shift preferences as input and calculate the optimal placement. As an example, if staff member A is a "cashier" and "good at early shifts," and staff member B is a "inventory manager" and "good at late shifts," please show me the resulting shift placement.
[0252] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0253] Step 1:
[0254] Users access the shift creation screen and enter information such as each staff member's role, skills, experience, and shift preferences. The data entered by users includes the staff member's name, responsibilities, years of experience, and preferred shift times. This collects the necessary data.
[0255] Step 2:
[0256] The terminal converts the entered condition data into JSON format. The converted JSON data holds detailed information about each staff member. For example, the staff member's name, role, skills, and preferred shift times are represented in JSON format. The converted JSON data is then ready to be sent to the server as an API request.
[0257] Step 3:
[0258] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process includes error handling to ensure that the data transmission is completed successfully.
[0259] Step 4:
[0260] The server parses the received JSON data. The server parses the received data and extracts information about each staff member. The server analyzes the staff member's role, skills, experience, and shift preferences and passes this information to the shift scheduling algorithm.
[0261] Step 5:
[0262] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's role, skills, and preferences. This calculation process is performed to generate shift assignment results that take these conditions into account. For example, the algorithm ensures that staff members who prefer early shifts are assigned early shift roles, reflecting their preferences to the greatest extent possible.
[0263] Step 6:
[0264] The server converts the calculated shift assignment results into JSON format. The generated shift assignment results include each staff member's name and assigned shift time.
[0265] Step 7:
[0266] The server sends the shift assignment result, converted to JSON format, to the terminal as an HTTP response. Once the transmission process is complete, the server checks the status of the response.
[0267] Step 8:
[0268] The terminal analyzes the response data received from the server. This analysis includes reading the received JSON data and extracting the shift information for each staff member.
[0269] Step 9:
[0270] The terminal displays the optimal shift assignment results to the user. The user can check each staff member's shift schedule on the screen. For example, staff member A is shown as "early shift cashier," and staff member B is shown as "late shift inventory manager."
[0271] Step 10:
[0272] The user activates a dedicated inventory terminal and scans the product identification code with the camera on their smart device. The scanned data is entered into the terminal.
[0273] Step 11:
[0274] The terminal converts the scanned product identification code data into JSON format. This converted JSON data includes the barcode information of the scanned product.
[0275] Step 12:
[0276] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process serves to pass the product information to the server.
[0277] Step 13:
[0278] The server analyzes the received product identification code data and compares it with the database. A process is carried out to check whether the received data matches the information in the database.
[0279] Step 14:
[0280] The server extracts the corresponding product information. Detailed information such as product name, price, and inventory quantity is obtained from the database.
[0281] Step 15:
[0282] The server converts the extracted product information into JSON format. The converted data includes detailed information such as product name, price, and inventory quantity.
[0283] Step 16:
[0284] The server sends the product information to the terminal as an HTTP response in JSON format.
[0285] Step 17:
[0286] The terminal analyzes the received product information. The analysis includes reading the information of product name, price, and inventory quantity and preparing for display on the screen.
[0287] Step 18:
[0288] The terminal displays the product information to the user. For example, information such as "Product A: Price 1000 yen, Inventory quantity 50" is displayed on the screen. This allows the user to quickly check the product information.
[0289] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0290] Shift scheduling automation system (equipped with an emotion engine)
[0291] The present invention's automated shift scheduling system achieves more appropriate shift assignments by combining conditions such as each user's role, skills, experience, and shift preferences with an emotion engine that recognizes the user's emotions.
[0292] Description of the Embodiment
[0293] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, shift preferences, etc.). As the user enters the information, the emotion engine analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[0294] The terminal converts the user's input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift assignment considering each staff member's conditions and recognized sentiment data. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[0295] Specific example
[0296] For example, a user might input "Person A should be the cashier, and Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts" and "Person B is good at late shifts." As the user inputs the information, the emotion engine recognizes their emotions, such as "happy" or "anxious," and sends this information to the server. The server then uses an algorithm based on the received data to calculate a shift schedule, assigning Person A to the early shift as the cashier and Person B to the late shift as the inventory manager. The calculation also takes the user's emotions into account; for example, if the user is feeling anxious, the system prioritizes assigning more experienced staff. This results in a more reliable shift schedule that improves user satisfaction.
[0297] Inventory management efficiency system (equipped with an emotional engine)
[0298] The present invention's inventory efficiency system is a system that scans product barcodes and automatically acquires and displays product information through matching with a database, and further reduces the user's workload by combining it with an emotion engine.
[0299] Description of the Embodiment
[0300] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine recognizes the user's emotions from their voice and facial expressions and acquires this as data. The terminal converts the scanned barcode data and emotion data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received data, compares it with the database, and extracts the corresponding product information. The extracted product information and emotion data are converted into JSON format and sent back to the terminal as an HTTP response.
[0301] Finally, the device analyzes product information and emotional data and displays it to the user. Based on the emotional data, for example, if the user is tired, it can display additional information such as work progress updates or break suggestions.
[0302] Specific example
[0303] For example, when a user scans the barcode of Product A, the terminal sends the user's emotions such as "tired" and "feeling stressed" to the server together with the barcode data. The server collates with the database, extracts the detailed information of Product A (name, price, inventory quantity, etc.), and returns it to the terminal together with the emotion data. The terminal displays the product information as "Product A: Price 1000 yen, Inventory quantity 50 pieces", and further reduces the user's workload by additionally displaying a message such as "It seems you are tired, so we recommend taking a short break".
[0304] As described above, the present invention provides a system and method for realizing the creation of shifts considering the emotions of users and the improvement of the efficiency of inventory-taking operations. Although other embodiments are also conceivable, the basic configuration and operation of the present invention are as described above.
[0305] The processing flow will be described below.
[0306] Shift creation automation system (equipped with an emotion engine)
[0307] Program processing flow
[0308] Step 1:
[0309] The user accesses the shift creation screen and inputs the information of each staff member (name, role, skill, experience, shift preference, etc.).
[0310] Step 2:
[0311] When inputting, the terminal activates the emotion engine and recognizes the emotion from the user's voice and expression. For example, it analyzes the expression from the camera and the voice tone from the microphone.
[0312] Step 3:
[0313] The terminal converts the user input data and the recognized emotion data into JSON format.
[0314] Step 4:
[0315] The terminal sends the converted JSON data to the server using an HTTP POST request.
[0316] Step 5:
[0317] The server receives an HTTP request and parses the JSON data. The parsed data includes the shift conditions and sentiment data entered by the user.
[0318] Step 6:
[0319] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's characteristics (role, skills, experience, shift preferences) and recognized emotional data.
[0320] Step 7:
[0321] The server converts the calculation results into JSON format.
[0322] Step 8:
[0323] The server sends the converted JSON data to the terminal as an HTTP response.
[0324] Step 9:
[0325] The terminal receives an HTTP response from the server and analyzes shift data and sentiment data.
[0326] Step 10:
[0327] The terminal displays the analysis results to the user. The display includes the optimal shift assignment results and emotion-based advice for the user (e.g., "Your stress level is high, so we've adjusted your shifts").
[0328] Inventory management efficiency system (equipped with an emotional engine)
[0329] Program processing flow
[0330] Step 1:
[0331] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[0332] Step 2:
[0333] During scanning, the device activates its emotion engine and recognizes the user's emotions from their voice and facial expressions.
[0334] Step 3:
[0335] The device converts the scanned barcode data and recognized emotion data into JSON format.
[0336] Step 4:
[0337] The terminal sends the converted data to the server using an HTTP POST request.
[0338] Step 5:
[0339] The server receives an HTTP request and analyzes the barcode data and sentiment data.
[0340] Step 6:
[0341] The server queries the database to retrieve the relevant product information.
[0342] Step 7:
[0343] The server converts product information retrieved from the database into JSON format. It also adds sentiment data to generate a response.
[0344] Step 8:
[0345] The server sends the converted data to the terminal as an HTTP response.
[0346] Step 9:
[0347] The terminal receives a response from the server and analyzes product information and sentiment data.
[0348] Step 10:
[0349] The device displays the analysis results to the user. The displayed content includes product information (e.g., "Product A: Price 1000 yen, Stock Quantity 50") and emotion-based advice (e.g., "You appear fatigued, so we recommend you take a short break").
[0350] As described above, by combining the emotion engine, it becomes possible to achieve optimal shift scheduling and increased efficiency in inventory management based on the user's state.
[0351] (Example 2)
[0352] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0353] Traditional shift scheduling and inventory management systems consider each user's skills, experience, and shift preferences, but they fail to consider user emotions, resulting in lower satisfaction and reduced work efficiency. Furthermore, the lack of shift scheduling and product information tailored to user feelings prevents improved operational efficiency and reduced user stress.
[0354] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0355] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, shift preferences, and emotional data; means for converting the input conditional data and emotional data into JSON format and sending it to the server; means for analyzing the received conditional data and emotional data and executing a shift creation algorithm; means for generating the calculated shift assignment results and sending them to a terminal; and means for displaying them on the terminal. This enables optimal shift assignment and work management that takes into account the user's emotions.
[0356] A "user" refers to an individual or business person who operates the system and provides input data and sentiment data.
[0357] "Role" refers to the specific tasks and duties that each user is responsible for.
[0358] "Skills" refer to the abilities and techniques that each user possesses to perform specific tasks.
[0359] "Experience" refers to the history and track record of how much each user has performed on related tasks in the past.
[0360] "Shift preferences" refer to each user's preferences regarding the hours and type of work they wish to do.
[0361] "Emotional data" refers to data that indicates the user's emotional state at the time of input (for example, joy, anger, sadness, surprise, etc.).
[0362] "JSON format" refers to the JavaScript Object Notation format used to structure and represent data.
[0363] A "server" refers to a computer system that analyzes received data and executes shift scheduling algorithms and data matching.
[0364] An "algorithm" refers to a set of procedures or computational methods for solving a specific problem.
[0365] "Barcode data" refers to identification information obtained from the barcode of a product.
[0366] A "database" refers to a digital system used to manage and store product information, user information, and other data.
[0367] "Product information" refers to detailed information about the product, such as its name, price, and stock level.
[0368] A "terminal" refers to a device operated by a user, which has functions for input and display.
[0369] This invention is a system that streamlines shift scheduling and inventory management by considering each user's role, skills, experience, shift preferences, and emotional data. Specifically, it improves user satisfaction and work efficiency by combining an emotional engine. The following describes a specific form for implementing this system.
[0370] Shift scheduling automation system (equipped with an emotion engine)
[0371] The user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, shift preferences, etc.). As the user enters the information, an emotion engine (for example, IBM Watson® Tone Analyzer or Microsoft® Azure® Emotion API) analyzes the user's voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[0372] The terminal converts user input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and calculates the optimal shift assignments using a Python®-based algorithm (such as the Pandas or NumPy libraries). This algorithm calculates the optimal shift assignments considering each staff member's conditions and perceived sentiment data.
[0373] The server converts the calculation results into JSON format and sends them to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift placement result to the user.
[0374] Specific example
[0375] For example, a user might input "Tanaka should be the cashier, and Kimura should be in charge of inventory," and set conditions such as "good at early shifts" and "good at late shifts" for each. As the input is processed, the emotion engine recognizes emotions such as "Tanaka seems happy" and "Kimura seems anxious," and sends this information to the server. The server then executes an algorithm based on the received data to calculate a shift assignment, assigning Tanaka to the early shift cashier and Kimura to the late shift inventory. The calculation also takes the user's emotions into account; for example, if Kimura is feeling anxious, the system prioritizes assigning a more experienced staff member.
[0376] Inventory management efficiency system (equipped with an emotional engine)
[0377] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine (e.g., Affectiva or Google® Cloud Natural Language API) recognizes the user's emotions from their voice and facial expressions and retrieves this data.
[0378] The terminal converts scanned barcode data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The server parses the received data and compares it with a database such as MySQL or MongoDB to extract the corresponding product information. The extracted product information and sentiment data are converted back into JSON format and sent to the terminal as an HTTP response.
[0379] Finally, based on product information and emotional data, the device displays additional information, such as work progress updates and break suggestions, if the user is tired.
[0380] Specific example
[0381] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotional data, such as "tired" or "stressed," to the server. The server compares this data with a database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotional data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[0382] Thus, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[0383] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0384] Shift scheduling automation system (equipped with an emotion engine)
[0385] Program processing flow
[0386] Step 1:
[0387] The user accesses the shift creation screen.
[0388] Input data: None
[0389] Output data: Display of the shift creation screen
[0390] Specific actions:
[0391] The user launches a web browser or dedicated application and logs in to the shift creation screen. The shift creation screen is displayed.
[0392] Step 2:
[0393] The user enters the staff information.
[0394] Input data: Staff name, role, skills, experience, shift preferences
[0395] Output data: Entered staff information
[0396] Specific actions:
[0397] The user enters each staff member's name, role, skills, experience, and shift preferences into a form on the shift creation screen. For example, "Mr. Tanaka is in charge of the cash register and prefers the early shift."
[0398] Step 3:
[0399] The emotion engine recognizes the user's emotions.
[0400] Input data: User's voice or text input
[0401] Output data: Emotional data (joy, anger, sadness, surprise, etc.)
[0402] Specific actions:
[0403] An emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes the user's voice and text in real time and generates emotion data. For example, it might recognize that "Mr. Tanaka sounds happy when he's typing."
[0404] Step 4:
[0405] The device converts the data to JSON.
[0406] Input data: Staff information and emotional data
[0407] Output data: Data in JSON format
[0408] Specific actions:
[0409] The terminal combines the entered staff information and recognized emotion data and converts them into JSON format. The generated JSON data will be in the following format.
[0410] json
[0411] {
[0412] "staff_info": {
[0413] "tanaka": { "role": "register", "shift": "morning"},
[0414] "kimura": { "role": "inventory", "shift": "evening"}
[0415] },
[0416] "emotion_data": {
[0417] "tanaka": "happy",
[0418] "kimura": "nervous"
[0419] }
[0420] }
[0421] Step 5:
[0422] The device sends data to the server.
[0423] Input data: Staff information and sentiment data in JSON format.
[0424] Output data: Result of transmission to the server (success or failure status)
[0425] Specific actions:
[0426] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / shift".
[0427] Step 6:
[0428] The server analyzes the data and executes the shift scheduling algorithm.
[0429] Input data: Received JSON data
[0430] Output data: Shift assignment results
[0431] Specific actions:
[0432] The server parses the received JSON data and calculates the optimal shift assignments using Python-based algorithms (such as Pandas and NumPy libraries). The optimal assignments are determined by considering each staff member's role, skills, experience, shift preferences, and sentiment data.
[0433] Step 7:
[0434] The server converts the calculation result into JSON.
[0435] Input data: Shift assignment results
[0436] Output data: Shifted layout result in JSON format
[0437] Specific actions:
[0438] The server converts the calculated shift assignment results into JSON format. The generated JSON data will be in a format similar to the following:
[0439] json
[0440] {
[0441] "shift_assignment": {
[0442] "tanaka": { "role": "register", "shift": "morning"},
[0443] "kimura": { "role": "inventory", "shift": "evening"}
[0444] }
[0445] }
[0446] Step 8:
[0447] The server sends the data back to the terminal.
[0448] Input data: Shifted layout result in JSON format
[0449] Output data: Transmission result to the terminal (success or failure status)
[0450] Specific actions:
[0451] The server sends the generated JSON data to the terminal as an HTTP response.
[0452] Step 9:
[0453] The device displays the results to the user.
[0454] Input data: Shifted layout result in JSON format
[0455] Output data: Shift assignment results displayed on the user screen
[0456] Specific actions:
[0457] The terminal analyzes the returned JSON data and displays the shift assignment results on the user screen. For example, it might display, "Tanaka is on the early shift as the cashier, and Kimura is on the late shift as the inventory manager."
[0458] Inventory management efficiency system (equipped with an emotional engine)
[0459] Program processing flow
[0460] Step 1:
[0461] The user starts up the inventory terminal.
[0462] Input data: None
[0463] Output data: Startup of inventory terminal
[0464] Specific actions:
[0465] The user turns on the device and launches the dedicated application. The inventory management application is then launched.
[0466] Step 2:
[0467] The user scans the product barcode.
[0468] Input data: Product barcode
[0469] Output data: Scanned barcode data
[0470] Specific actions:
[0471] The user uses a barcode reader to scan the product's barcode. For example, the barcode for product A is scanned.
[0472] Step 3:
[0473] The emotion engine recognizes the user's emotions.
[0474] Input data: User's voice and facial expressions
[0475] Output data: Emotional data (e.g., fatigue, stress)
[0476] Specific actions:
[0477] An emotion engine (e.g., Affectiva or Google Cloud Natural Language API) analyzes the user's voice and facial expressions in real time and generates emotion data. For example, it might recognize that "the user is tired."
[0478] Step 4:
[0479] The device converts the data to JSON.
[0480] Input data: barcode data and emotion data
[0481] Output data: Data in JSON format
[0482] Specific actions:
[0483] The terminal combines scanned barcode data and sentiment data and converts them into JSON format. The generated JSON data will look like this:
[0484] json
[0485] {
[0486] "barcode_data": "1234567890123",
[0487] "emotion_data": "stressed"
[0488] }
[0489] Step 5:
[0490] The device sends data to the server.
[0491] Input data: Barcode data and sentiment data in JSON format.
[0492] Output data: Result of transmission to the server (success or failure status)
[0493] Specific actions:
[0494] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / inventory".
[0495] Step 6:
[0496] The server analyzes the data and extracts product information.
[0497] Input data: Received JSON data
[0498] Output data: Relevant product information
[0499] Specific actions:
[0500] The server parses the received JSON data and compares it with databases such as MySQL or MongoDB to extract the corresponding product information. Product names, prices, inventory information, etc., are retrieved from the database.
[0501] Step 7:
[0502] The server converts the extracted results into JSON.
[0503] Input data: Product information
[0504] Output data: Data in JSON format
[0505] Specific actions:
[0506] The server converts the extracted product information into JSON format. The generated JSON data will be in the following format:
[0507] json
[0508] {
[0509] "product_info": {
[0510] "name": "Product A",
[0511] "price": 1000,
[0512] "stock": 50
[0513] }
[0514] }
[0515] Step 8:
[0516] The server sends the data back to the terminal.
[0517] Input data: Product information in JSON format
[0518] Output data: Transmission result to the terminal (success or failure status)
[0519] Specific actions:
[0520] The server sends the generated JSON data to the terminal as an HTTP response.
[0521] Step 9:
[0522] The device displays the results to the user.
[0523] Input data: Product information in JSON format
[0524] Output data: Product information and emotion-based messages displayed on the user screen.
[0525] Specific actions:
[0526] The device analyzes the returned JSON data and displays product information and sentiment-based messages to the user. For example, it might display: "Product A: Price 1000 yen, Quantity in stock 50. You appear tired, so we recommend you take a short break."
[0527] (Application Example 2)
[0528] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0529] Conventional shift scheduling and inventory management systems fail to consider staff emotions and workload, making it difficult to improve operational efficiency and staff satisfaction. Furthermore, while considering staff emotions is necessary for more effective shift scheduling and inventory management, no technology existed to achieve this. There is a growing need for systems that can reduce stress and improve operational efficiency.
[0530] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for recognizing emotions at the time of input; means for transmitting the input condition data and emotion data to the server in JSON format; means for executing an algorithm that calculates the optimal shift assignment based on the received condition data and emotion data; means for generating the calculated shift assignment result and transmitting it to the terminal; means for scanning product barcodes; means for recognizing emotions at the time of scanning; means for transmitting the scanned barcode data and emotion data to the server in JSON format; means for comparing the received barcode data and emotion data with a database and extracting the corresponding product information; and means for generating additional information based on the extracted product information and emotion data, transmitting it to the terminal, and displaying it. This makes it possible to create more optimal shift assignments and improve the efficiency of inventory work by taking into account the conditions and emotion data of each staff member.
[0531] "Each user's role, skills, experience, shift preferences, and other conditions" refers to data that includes each staff member's job description, abilities, level, past performance, and desired working hours, which are considered when creating shifts and assigning tasks.
[0532] "Means of recognizing emotions" refers to technology that analyzes emotional states such as joy, anger, sadness, and surprise from the voice and text of staff members.
[0533] "Method of sending to the server in JSON format" refers to a method of converting each input data and the recognized sentiment data into JavaScript Object Notation (JSON) format and sending it to the server as an HTTP POST request.
[0534] An "algorithm for calculating the optimal shift arrangement" is a computational method for generating the most efficient and satisfying shift schedule based on staff condition data and emotional data.
[0535] "Means of scanning barcodes" refers to equipment or technology used to read the barcodes on products.
[0536] "Means for matching with a database and extracting relevant product information" refers to a method of matching scanned barcode data with the database of a central information system and obtaining corresponding product details.
[0537] "Means for generating, transmitting, and displaying additional information to a terminal" refers to a technology that creates new supplementary information, such as break suggestions, based on extracted product information and sentiment data, and transmits and displays it on the user's terminal.
[0538] "Taking into account each staff member's conditions and emotional data" means that when determining shift schedules and work assignments, the current emotional state of each staff member should be taken into account, in addition to their job skills and preferences.
[0539] Modes for carrying out the invention
[0540] The system of the present invention aims to improve the efficiency of staff shift scheduling and inventory management, and includes the following components.
[0541] Shift scheduling automation system
[0542] First, staff members access the shift creation screen and enter their information (role, skills, experience, shift preferences, etc.). During input, an emotion engine analyzes the voice and text to recognize emotions. This system uses emotion recognition software such as Google Cloud Natural Language and EmotionAPI.
[0543] The above data is converted to JSON format and sent to the server via an HTTP POST request. On the server side, this data is analyzed and the shift scheduling algorithm is executed. This algorithm calculates the optimal shift assignments based on staff conditions and emotional data. The result of this calculation is converted to JSON format and sent to the terminal as an HTTP response. The terminal displays the shift assignment results to the user. For example, if staff members input "Person A should be in charge of the cash register, Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts, Person B is good at late shifts," the system will also consider emotional data to determine the optimal assignments.
[0544] Inventory efficiency system
[0545] Next, a dedicated inventory terminal is used. When a user scans an item's barcode with a barcode reader, the emotion engine analyzes the user's voice and facial expressions to obtain emotion data. Here again, Google Cloud Natural Language or EmotionAPI can be used for the emotion engine.
[0546] The acquired barcode data and sentiment data are converted to JSON format and sent to the server via an HTTP POST request. The server parses the data, compares it with the database, and extracts the corresponding product information. The extracted product information and sentiment data are converted to JSON format and sent to the terminal as an HTTP response. The terminal receives this and displays it to the user. For example, if a user scans the barcode of product A and sentiment data such as "tired" and "stressed" is acquired, the system will display "Product A: Price 1000 yen, Stock Quantity 50" and a message such as "We recommend you take a break."
[0547] Examples of specific cases and prompt statements
[0548] As a concrete example, the shift scheduling system uses the following prompt:
[0549] "Create a shift schedule for the store staff and propose the optimal assignments, taking into account staff emotional data. For example, if staff member A enters 'I want an early shift,' assign him to the early shift when he's happy, and change him to the late shift when he's tired."
[0550] This enables more efficient shift scheduling and inventory management, taking into account the individual needs and emotional data of each staff member.
[0551] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0552] Step 1:
[0553] The user accesses the shift scheduling screen or the inventory terminal.
[0554] The user accesses the shift creation screen and enters information for each staff member (e.g., role, skills, experience, shift preferences, etc.). In the case of inventory work, the user activates a dedicated inventory terminal and scans the barcodes of the products. At this stage, an emotion recognition engine (e.g., Google Cloud Natural Language or EmotionAPI) recognizes emotions from the voice or text.
[0555] Input: Staff information, shift preferences, voice / text (for emotion recognition)
[0556] Output: Emotional data, staff information data
[0557] Step 2:
[0558] The terminal converts the entered conditional data and sentiment data into JSON format.
[0559] The terminal retrieves entered staff information, shift preferences, and recognized emotion data, and converts this data into JSON format.
[0560] Input: Staff information data, emotion data
[0561] Output: Data in JSON format
[0562] Step 3:
[0563] Send JSON data to the server via an HTTP POST request.
[0564] The terminal sends the converted JSON data to the server via an HTTP POST request.
[0565] Input: Data in JSON format
[0566] Output: Data sent to the server
[0567] Step 4:
[0568] The server analyzes the received data and executes either a shift scheduling algorithm or a product information matching algorithm.
[0569] For shift scheduling, the server calculates the optimal shift arrangement based on received conditional and sentiment data. For inventory management, the server compares received barcode and sentiment data with the database and extracts the relevant product information.
[0570] Input: Data sent to the server
[0571] Output: Shift assignment result data or product information data
[0572] Step 5:
[0573] The server converts the calculated and extracted data into JSON format and sends it to the terminal as an HTTP response.
[0574] The server converts the calculated shift assignment results or extracted product information into JSON format and sends it to the terminal as an HTTP response.
[0575] Input: Shift assignment result data or product information data
[0576] Output: Response data in JSON format
[0577] Step 6:
[0578] The terminal analyzes the response data and displays it to the user.
[0579] The terminal parses the received JSON response data and displays shift assignment results or product information to the user. Based on sentiment data, additional information such as break suggestions may also be displayed.
[0580] Input: Response data in JSON format
[0581] Output: Shift assignment results or product information displayed to the user
[0582] This process allows for optimal shift scheduling and more efficient inventory management, taking into account the individual conditions and emotional data of each staff member.
[0583] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0584] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0585] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0586] [Second Embodiment]
[0587] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0588] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0589] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0590] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0591] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0592] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0593] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0594] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0595] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0596] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0597] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0598] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0599] Shift scheduling automation system
[0600] This invention is an automated shift scheduling system that begins with the user inputting conditions such as each staff member's role, skills, experience, and shift preferences. The specific operation of this system is as follows:
[0601] Description of the Embodiment
[0602] First, the user accesses the shift creation screen and enters information for each staff member (e.g., name, role, skills, experience, shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes the shift creation algorithm. This algorithm calculates the optimal shift assignment based on each staff member's conditions, and the calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[0603] Specific example
[0604] For example, a user opens the shift creation screen and sets Person A as "cashier" and Person B as "inventory manager," and enters conditions such as "better at early shifts" and "better at late shifts" for each. The terminal sends this information to the server, and the server executes a shift creation algorithm based on the received data. As a result, a shift arrangement is calculated and displayed on the terminal, assigning Person A to the early shift as cashier and Person B to the late shift as inventory manager.
[0605] Inventory efficiency system
[0606] The present invention also includes, as an inventory efficiency system, a system that scans product barcodes and automatically retrieves and displays product information through matching with a database.
[0607] Description of the Embodiment
[0608] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted into JSON format and sent back to the terminal as an HTTP response. Finally, the terminal analyzes the product information and displays it to the user.
[0609] Specific example
[0610] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database and extracts detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[0611] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[0612] The following describes the processing flow.
[0613] Shift scheduling automation system
[0614] Program processing flow
[0615] Step 1:
[0616] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[0617] Step 2:
[0618] The terminal converts the user's input data into JSON format.
[0619] Step 3:
[0620] The terminal sends the converted JSON data to the server using an HTTP POST request.
[0621] Step 4:
[0622] The server receives an HTTP request and parses the JSON data.
[0623] Step 5:
[0624] The server executes a shift scheduling algorithm based on the analyzed data. The algorithm calculates the optimal shift arrangement, taking into account the conditions of each staff member.
[0625] Step 6:
[0626] The server converts the calculation results into JSON format.
[0627] Step 7:
[0628] The server converts the JSON data and sends it to the terminal as an HTTP response.
[0629] Step 8:
[0630] The terminal receives an HTTP response from the server and analyzes the shift data.
[0631] Step 9:
[0632] The terminal displays the analyzed shift data on the screen. Specifically, it shows that Person A's shift is the early shift cashier, and Person B's shift is the late shift inventory manager.
[0633] Inventory efficiency system
[0634] Program processing flow
[0635] Step 1:
[0636] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[0637] Step 2:
[0638] The device retrieves the barcode data scanned and converts it to JSON format.
[0639] Step 3:
[0640] The terminal converts the barcode data and sends it to the server using an HTTP POST request.
[0641] Step 4:
[0642] The server receives an HTTP request and parses the barcode data.
[0643] Step 5:
[0644] The server queries the database to retrieve the relevant product information.
[0645] Step 6:
[0646] The server retrieves product information from the database and converts it to JSON format.
[0647] Step 7:
[0648] The server sends the converted product information to the terminal as an HTTP response.
[0649] Step 8:
[0650] The terminal receives an HTTP response from the server and parses the product information.
[0651] Step 9:
[0652] The device displays the product information it has analyzed on the screen. Specifically, it will display something like, "Product A: Price 1000 yen, Stock Quantity 50 units."
[0653] (Example 1)
[0654] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0655] Many modern companies face the problem of significant effort and time spent on tasks such as creating staff schedules and conducting inventory. In particular, creating schedules that take into account each staff member's role, skills, and shift preferences, as well as conducting inventory to obtain accurate product information, are complex processes requiring efficient methods. Furthermore, since systems for automating and rapidly performing these tasks do not currently exist, the development of such systems is urgently needed.
[0656] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0657] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for converting the input condition data into JSON format on the terminal and sending it to the server via an HTTP POST request; means for analyzing the received condition data and executing a shift creation algorithm; means for converting the calculated shift assignment results into JSON format and sending them to the terminal as an HTTP response; means for analyzing the received shift assignment results and displaying them to the user; means for scanning product barcodes and converting the scanned data into JSON format; means for sending the converted barcode data to the server via an HTTP POST request; means for analyzing the received barcode data, comparing it with a database, and extracting the corresponding product information; means for converting the extracted product information into JSON format and sending it to the terminal as an HTTP response; and means for analyzing the received product information and displaying it to the user. This enables the streamlining of shift creation and inventory management operations.
[0658] "User" refers to a user who operates the system and inputs or retrieves information.
[0659] "Role" refers to the duties or functions that staff members or those in charge are expected to perform in their work.
[0660] "Skills" refers to the specialized knowledge and techniques possessed by staff and personnel.
[0661] "Experience" refers to the tasks that staff or employees have performed in the past and their length of service.
[0662] "Shift preferences" refers to the desired working hours and dates of staff or managers.
[0663] "Terminal" refers to devices such as computers, smartphones, and tablets used by users.
[0664] "JSON format" is a data exchange format, and is an abbreviation for JavaScript Object Notation.
[0665] An "HTTP POST request" is one method of sending data to a server using the HTTP protocol.
[0666] A "server" refers to a computer system used for receiving, processing, and transmitting data.
[0667] A "shift scheduling algorithm" refers to a calculation method used to determine the optimal shift arrangement based on the staff's qualifications.
[0668] A "database" refers to a system for efficiently managing large amounts of data.
[0669] A "barcode reader" refers to a device used to read barcodes.
[0670] "Response" refers to the response data sent from the server to the terminal.
[0671] Modes for carrying out the invention
[0672] Shift scheduling automation system
[0673] The automated shift scheduling system of the present invention automatically creates the optimal shift schedule by inputting conditions such as staff roles, skills, experience, and shift preferences. The specific operation of this system is described below.
[0674] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, and shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. This process utilizes a JavaScript library running on the terminal.
[0675] The server analyzes the received data using the Python requests library and executes a shift scheduling algorithm. This algorithm uses Python data processing libraries such as pandas and numpy to calculate the optimal shift arrangement based on each staff member's conditions.
[0676] The calculation results are converted to JSON format and sent to the terminal as an HTTP response. The Flask `jsonify` method is used for this. Finally, the terminal parses the received response data and displays the optimal shift placement result to the user. HTML and JavaScript are used for this.
[0677] Specific example
[0678] For example, a user opens the shift creation screen and assigns roles to person A ("cashier") and person B ("inventory manager"), entering conditions such as "better at early shifts" and "better at late shifts" for each. The terminal converts this information into JSON format and sends it to the server. The server executes a shift creation algorithm based on the received data and calculates a shift arrangement that assigns person A to the early shift as cashier and person B to the late shift as inventory manager. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the result data and displays the optimal shift arrangement to the user.
[0679] Example of a prompt
[0680] "Access the shift scheduling screen and assign roles to Person A (cashier) and Person B (inventory manager). Please also indicate which shift each person is best suited for: early or late shifts."
[0681] Inventory efficiency system
[0682] The inventory efficiency system of the present invention scans product barcodes and automatically retrieves and displays product information through matching with a database. The specific operation of this system is described below.
[0683] First, the user activates a dedicated inventory terminal and scans the product barcodes with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. This conversion is performed using JavaScript running on the terminal.
[0684] The server parses the received barcode data using the Python requests library, compares it with the database, and extracts the corresponding product information. An ORM library such as SQLAlchemy is used for database operations. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The Flask jsonify method is used for this purpose.
[0685] Finally, the terminal analyzes the received response data and displays product information to the user. HTML and JavaScript are used for this process.
[0686] Specific example
[0687] For example, when a user scans the barcode of product A, the terminal converts the scanned data into JSON format and sends it to the server. The server checks the database based on the received data and extracts detailed information about product A (name, price, stock quantity). This information is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the resulting data and displays to the user "Product A: Price 1000 yen, Stock quantity 50 units".
[0688] Example of a prompt
[0689] "Scan the barcode of product A using the inventory terminal, send the information to the server, and display the detailed information."
[0690] Thus, the present invention provides a specific system and method for improving the efficiency of shift scheduling and inventory management.
[0691] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0692] Shift scheduling automation system
[0693] Step 1: User accesses the shift creation screen.
[0694] Users access the shift creation screen using a browser and enter each staff member's information (name, role, skills, experience, and shift preferences).
[0695] Input: Staff information (name, role, skills, experience, shift preferences)
[0696] Output: Staff information is entered into the input form displayed in the browser.
[0697] Step 2: The device converts the data to JSON format.
[0698] The terminal converts the staff information entered by the user into JSON format using JavaScript.
[0699] Input: Staff information object
[0700] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[0701] Output: Staff information in JSON format
[0702] Step 3: The device sends an HTTP POST request to the server.
[0703] The terminal sends the converted JSON data to the server as an HTTP POST request using AJAX.
[0704] Input: Staff information in JSON format
[0705] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[0706] Output: HTTP POST request to the server
[0707] Step 4: The server receives the data.
[0708] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[0709] Input: JSON data sent in an HTTP POST request
[0710] Data processing: Receive and analyze data using the requests library.
[0711] Output: Object of analyzed staff information
[0712] Step 5: The server executes the shift scheduling algorithm.
[0713] The server executes a shift scheduling algorithm based on the analyzed staff information. It uses Python's pandas and numpy libraries.
[0714] Input: Staff information object
[0715] Data Calculation: Calculate the optimal shift placement using pandas and numpy.
[0716] Output: Object of the calculated shift placement result
[0717] Step 6: The server converts the results to JSON format.
[0718] The server converts the calculated shift assignment results into JSON format using Python's json module.
[0719] Input: Shifted object
[0720] Data processing: Convert to JSON format using the json module.
[0721] Output: Shifted JSON format result
[0722] Step 7: The server sends the result to the terminal as an HTTP response.
[0723] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[0724] Input: Shifted JSON format result
[0725] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[0726] Output: HTTP response to the terminal
[0727] Step 8: The device analyzes and displays the data.
[0728] The terminal parses the received response data using JavaScript and combines HTML and JavaScript to display the optimal shift layout result to the user.
[0729] Input: Shifted JSON format received in HTTP response
[0730] Data processing: Parse using JavaScript and update the HTML.
[0731] Output: Shift layout result displayed in the browser
[0732] Inventory efficiency system
[0733] Step 1: The user starts up a terminal dedicated to inventory management.
[0734] The user activates a terminal dedicated to inventory management and connects a barcode reader.
[0735] Input: Start the inventory terminal, connect the barcode reader.
[0736] Output: The inventory terminal starts up and the barcode reader is connected.
[0737] Step 2: The user scans the product's barcode.
[0738] The user scans the product's barcode using a barcode reader.
[0739] Input: Product barcode
[0740] Output: Scanned barcode data
[0741] Step 3: The device converts the scanned data to JSON format.
[0742] The terminal converts the scanned barcode data into JSON format using JavaScript.
[0743] Input: Scanned barcode data
[0744] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[0745] Output: Barcode data in JSON format
[0746] Step 4: The device sends an HTTP POST request to the server.
[0747] The terminal sends the converted JSON data to the server via an HTTP POST request using AJAX.
[0748] Input: Barcode data in JSON format
[0749] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[0750] Output: HTTP POST request to the server
[0751] Step 5: The server receives the data.
[0752] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[0753] Input: JSON data sent in an HTTP POST request
[0754] Data processing: Receive and analyze data using the requests library.
[0755] Output: Object of the analyzed barcode data
[0756] Step 6: The server verifies against the database.
[0757] The server compares the analyzed barcode data with the database and extracts the corresponding product information.
[0758] Input: Object of parsed barcode data
[0759] Data Calculation: Use ORM libraries such as SQLAlchemy to match databases and extract product information.
[0760] Output: Object containing extracted product information
[0761] Step 7: The server converts the results to JSON format.
[0762] The server converts the extracted product information into JSON format using Python's json module.
[0763] Input: Object containing extracted product information
[0764] Data processing: Convert to JSON format using the json module.
[0765] Output: Product information in JSON format
[0766] Step 8: The server sends the result to the terminal as an HTTP response.
[0767] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[0768] Input: Product information in JSON format
[0769] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[0770] Output: HTTP response to the terminal
[0771] Step 9: The device analyzes and displays the data.
[0772] The terminal parses the received response data using JavaScript and displays product information to the user by combining HTML and JavaScript.
[0773] Input: Product information in JSON format received via HTTP response.
[0774] Data processing: Parse using JavaScript and update the HTML.
[0775] Output: Product information displayed in the browser
[0776] (Application Example 1)
[0777] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0778] In traditional logistics centers, shift scheduling and inventory management are handled separately, making efficient operation difficult. Furthermore, the reliance on manual processes for staff shift scheduling and inventory management is time-consuming, labor-intensive, and prone to errors. This situation places a heavy burden on staff, highlighting the need for increased efficiency and accuracy.
[0779] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0780] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for transmitting the input condition data to the server; means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data; means for generating the calculated shift arrangement result and transmitting it to a terminal; means for scanning product identification codes with the camera of a smart device; means for transmitting the scanned product identification code data to the server; means for comparing the received product identification code data with a database and extracting the corresponding product information; and means for transmitting and displaying the extracted product information to a terminal. This makes it possible to improve the efficiency and accuracy of shift creation and inventory management operations in a logistics center.
[0781] A "user" is an individual or group that uses the system to create work schedules or manage inventory.
[0782] "Role" refers to information that indicates the specific duties or responsibilities each staff member has.
[0783] "Skills" are evaluation criteria that indicate the specific techniques and abilities that staff members possess.
[0784] "Experience" refers to information that shows the work history and achievements that staff members have accumulated in the past.
[0785] "Shift preferences" refers to information indicating the desired conditions for working hours and work arrangements.
[0786] "Conditional data" refers to information entered by the user, such as their role, skills, experience, and shift preferences.
[0787] A "server" is a central processing unit that receives conditional data and scan data, and performs analysis and calculations.
[0788] "Shift scheduling" refers to the process or result of assigning the most suitable work schedule to each staff member according to their role, skills, and preferences.
[0789] A "terminal" is a device that a user uses to access a system and input / receive information.
[0790] A "product identification code" refers to a barcode, QR code, or other code that contains unique identification information for a product.
[0791] "Scanning" refers to the operation of reading product identification code information using a camera or barcode reader.
[0792] A "database" is a centralized information system used to store and manage product information and staff qualification data.
[0793] "Product information" refers to data that shows details about a product, such as its name, price, and stock level.
[0794] "Shift management" refers to the task of planning and adjusting staff working hours and assigned duties.
[0795] "Product management" refers to the task of monitoring and managing the inventory status and receiving / shipping status of products.
[0796] The embodiment of this invention is primarily provided as a combination of a shift scheduling automation system and an inventory efficiency system. This system has the function of calculating the optimal shift arrangement by inputting information on each staff member using a smart device and transmitting it to a server, and further scanning product identification codes to obtain product information.
[0797] Shift scheduling automation system
[0798] First, the user accesses the shift creation screen and enters information such as each staff member's role, skills, experience, and shift preferences into the terminal. The terminal converts this input data into JSON format and sends it to the server via an HTTP POST request.
[0799] The server analyzes the received condition data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift arrangement based on each staff member's role, skills, and preferences. The calculation results are converted to JSON format and sent to the terminal as an HTTP response.
[0800] The terminal analyzes response data and displays the optimal shift assignment results to the user. For example, if a user opens the shift creation screen and sets Staff A as "cashier" and Staff B as "inventory manager," and enters the conditions "good at early shifts" and "good at late shifts," the system calculates a shift assignment that assigns Staff A to the early shift cashier and Staff B to the late shift inventory manager, and displays it on the terminal.
[0801] Inventory efficiency system
[0802] Next, the user activates a dedicated inventory terminal and scans the product barcode with the camera on their smart device. The terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request.
[0803] The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The terminal analyzes the product information and displays it to the user.
[0804] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database to extract detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[0805] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management operations in a logistics center.
[0806] Hardware and software to use
[0807] Hardware: Smart devices (smartphones, tablets, etc.), servers
[0808] Software: Python, Flask, JSON, Database management systems (MySQL, PostgreSQL, etc.)
[0809] Specific example
[0810] I'm thinking about an automated shift scheduling system for a logistics center. The system would take staff roles, skills, and shift preferences as input and calculate the optimal placement. As an example, if staff member A is a "cashier" and "good at early shifts," and staff member B is a "inventory manager" and "good at late shifts," please show me the resulting shift placement.
[0811] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0812] Step 1:
[0813] Users access the shift creation screen and enter information such as each staff member's role, skills, experience, and shift preferences. The data entered by users includes the staff member's name, responsibilities, years of experience, and preferred shift times. This collects the necessary data.
[0814] Step 2:
[0815] The terminal converts the entered condition data into JSON format. The converted JSON data holds detailed information about each staff member. For example, the staff member's name, role, skills, and preferred shift times are represented in JSON format. The converted JSON data is then ready to be sent to the server as an API request.
[0816] Step 3:
[0817] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process includes error handling to ensure that the data transmission is completed successfully.
[0818] Step 4:
[0819] The server parses the received JSON data. The server parses the received data and extracts information about each staff member. The server analyzes the staff member's role, skills, experience, and shift preferences and passes this information to the shift scheduling algorithm.
[0820] Step 5:
[0821] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's role, skills, and preferences. This calculation process is performed to generate shift assignment results that take these conditions into account. For example, the algorithm ensures that staff members who prefer early shifts are assigned early shift roles, reflecting their preferences to the greatest extent possible.
[0822] Step 6:
[0823] The server converts the calculated shift assignment results into JSON format. The generated shift assignment results include each staff member's name and assigned shift time.
[0824] Step 7:
[0825] The server sends the shift assignment result, converted to JSON format, to the terminal as an HTTP response. Once the transmission process is complete, the server checks the status of the response.
[0826] Step 8:
[0827] The terminal analyzes the response data received from the server. This analysis includes reading the received JSON data and extracting the shift information for each staff member.
[0828] Step 9:
[0829] The terminal displays the optimal shift assignment results to the user. The user can check each staff member's shift schedule on the screen. For example, staff member A is shown as "early shift cashier," and staff member B is shown as "late shift inventory manager."
[0830] Step 10:
[0831] The user activates a dedicated inventory terminal and scans the product identification code with the camera on their smart device. The scanned data is entered into the terminal.
[0832] Step 11:
[0833] The terminal converts the scanned product identification code data into JSON format. This converted JSON data includes the barcode information of the scanned product.
[0834] Step 12:
[0835] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process serves to pass product information to the server.
[0836] Step 13:
[0837] The server analyzes the received product identification code data and compares it with the database. A process is performed to verify that the received data matches the information in the database.
[0838] Step 14:
[0839] The server extracts the relevant product information. Detailed information such as product name, price, and stock quantity is retrieved from the database.
[0840] Step 15:
[0841] The server converts the extracted product information into JSON format. The converted data includes detailed information such as product name, price, and stock quantity.
[0842] Step 16:
[0843] The server sends product information to the terminal as an HTTP response in JSON format.
[0844] Step 17:
[0845] The terminal analyzes the received product information. This analysis includes reading product name, price, and inventory quantity, and preparing them for display on the screen.
[0846] Step 18:
[0847] The device displays product information to the user. For example, information such as "Product A: Price 1000 yen, Stock Quantity 50" is displayed on the screen. This allows the user to quickly check product information.
[0848] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0849] Shift scheduling automation system (equipped with an emotion engine)
[0850] The present invention's automated shift scheduling system achieves more appropriate shift assignments by combining conditions such as each user's role, skills, experience, and shift preferences with an emotion engine that recognizes the user's emotions.
[0851] Description of the Embodiment
[0852] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, shift preferences, etc.). As the user enters the information, the emotion engine analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[0853] The terminal converts the user's input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift assignment considering each staff member's conditions and recognized sentiment data. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[0854] Specific example
[0855] For example, a user might input "Person A should be the cashier, and Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts" and "Person B is good at late shifts." As the user inputs the information, the emotion engine recognizes their emotions, such as "happy" or "anxious," and sends this information to the server. The server then uses an algorithm based on the received data to calculate a shift schedule, assigning Person A to the early shift as the cashier and Person B to the late shift as the inventory manager. The calculation also takes the user's emotions into account; for example, if the user is feeling anxious, the system prioritizes assigning more experienced staff. This results in a more reliable shift schedule that improves user satisfaction.
[0856] Inventory management efficiency system (equipped with an emotional engine)
[0857] The inventory efficiency system of the present invention is a system that scans product barcodes and automatically acquires and displays product information through matching with a database, and further reduces the workload of the user by combining it with an emotion engine.
[0858] Description of the Embodiment
[0859] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine recognizes the user's emotions from their voice and facial expressions and acquires this as data. The terminal converts the scanned barcode data and emotion data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received data, compares it with the database, and extracts the corresponding product information. The extracted product information and emotion data are converted into JSON format and sent back to the terminal as an HTTP response.
[0860] Finally, the device analyzes product information and emotional data and displays it to the user. Based on the emotional data, if the user is tired, for example, it can display additional information such as work progress updates or break suggestions.
[0861] Specific example
[0862] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotions, such as "tired" or "stressed," to the server. The server compares this with the database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotion data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[0863] Based on the above, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[0864] The following describes the processing flow.
[0865] Shift scheduling automation system (equipped with an emotion engine)
[0866] Program processing flow
[0867] Step 1:
[0868] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[0869] Step 2:
[0870] When input is received, the device activates an emotion engine to recognize emotions from the user's voice and facial expressions. For example, it analyzes facial expressions from the camera and voice tone from the microphone.
[0871] Step 3:
[0872] The device converts user input data and recognized sentiment data into JSON format.
[0873] Step 4:
[0874] The terminal sends the converted JSON data to the server using an HTTP POST request.
[0875] Step 5:
[0876] The server receives an HTTP request and parses the JSON data. The parsed data includes the shift conditions and sentiment data entered by the user.
[0877] Step 6:
[0878] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's characteristics (role, skills, experience, shift preferences) and recognized emotional data.
[0879] Step 7:
[0880] The server converts the calculation results into JSON format.
[0881] Step 8:
[0882] The server sends the converted JSON data to the terminal as an HTTP response.
[0883] Step 9:
[0884] The terminal receives an HTTP response from the server and analyzes shift data and sentiment data.
[0885] Step 10:
[0886] The terminal displays the analysis results to the user. The display includes the optimal shift assignment results and emotion-based advice for the user (e.g., "Your stress level is high, so we've adjusted your shifts").
[0887] Inventory management efficiency system (equipped with an emotional engine)
[0888] Program processing flow
[0889] Step 1:
[0890] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[0891] Step 2:
[0892] During scanning, the device activates its emotion engine and recognizes the user's emotions from their voice and facial expressions.
[0893] Step 3:
[0894] The device converts the scanned barcode data and recognized emotion data into JSON format.
[0895] Step 4:
[0896] The terminal sends the converted data to the server using an HTTP POST request.
[0897] Step 5:
[0898] The server receives an HTTP request and analyzes the barcode data and sentiment data.
[0899] Step 6:
[0900] The server queries the database to retrieve the relevant product information.
[0901] Step 7:
[0902] The server converts product information retrieved from the database into JSON format. It also adds sentiment data to generate a response.
[0903] Step 8:
[0904] The server sends the converted data to the terminal as an HTTP response.
[0905] Step 9:
[0906] The terminal receives a response from the server and analyzes product information and sentiment data.
[0907] Step 10:
[0908] The device displays the analysis results to the user. The displayed content includes product information (e.g., "Product A: Price 1000 yen, Stock Quantity 50") and emotion-based advice (e.g., "You appear fatigued, so we recommend you take a short break").
[0909] As described above, by combining the emotion engine, it becomes possible to achieve optimal shift scheduling and increased efficiency in inventory management based on the user's state.
[0910] (Example 2)
[0911] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0912] Traditional shift scheduling and inventory systems consider each user's skills, experience, and shift preferences, but they fail to consider user emotions, resulting in lower satisfaction and reduced work efficiency. Furthermore, the lack of shift scheduling and product information tailored to user feelings prevents improved operational efficiency and reduced user stress.
[0913] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0914] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, shift preferences, and emotional data; means for converting the input condition data and emotional data into JSON format and sending it to the server; means for analyzing the received condition data and emotional data and executing a shift creation algorithm; means for generating the calculated shift assignment results and sending them to a terminal; and means for displaying them on the terminal. This enables optimal shift assignment and work management that takes into account the user's emotions.
[0915] A "user" refers to an individual or business person who operates the system and provides input data and sentiment data.
[0916] "Role" refers to the specific tasks and duties that each user is responsible for.
[0917] "Skills" refer to the abilities and techniques that each user possesses to perform specific tasks.
[0918] "Experience" refers to the history and track record of how much each user has performed on related tasks in the past.
[0919] "Shift preferences" refer to each user's preferences regarding the hours and type of work they wish to do.
[0920] "Emotional data" refers to data that indicates the user's emotional state at the time of input (for example, joy, anger, sadness, surprise, etc.).
[0921] "JSON format" refers to the JavaScript Object Notation format used to structure and represent data.
[0922] A "server" refers to a computer system that analyzes received data and executes shift scheduling algorithms and data matching.
[0923] An "algorithm" refers to a set of procedures or computational methods for solving a specific problem.
[0924] "Barcode data" refers to identification information obtained from the barcode of a product.
[0925] A "database" refers to a digital system used to manage and store product information, user information, and other data.
[0926] "Product information" refers to detailed information about the product, such as its name, price, and stock level.
[0927] A "terminal" refers to a device operated by a user, which has functions for input and display.
[0928] This invention is a system that streamlines shift scheduling and inventory management by considering each user's role, skills, experience, shift preferences, and emotional data. Specifically, it improves user satisfaction and work efficiency by combining an emotional engine. The following describes a specific form for implementing this system.
[0929] Shift scheduling automation system (equipped with an emotion engine)
[0930] Users access the shift creation screen and enter information for each staff member (name, role, skills, experience, shift preferences, etc.). As users input this information, an emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[0931] The terminal converts user input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and calculates the optimal shift assignments using a Python-based algorithm (such as Pandas or NumPy libraries). This algorithm calculates the optimal shift assignments considering each staff member's conditions and perceived sentiment data.
[0932] The server converts the calculation results into JSON format and sends them to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift placement result to the user.
[0933] Specific example
[0934] For example, a user might input "Tanaka should be the cashier, and Kimura should be in charge of inventory," and set conditions such as "good at early shifts" and "good at late shifts" for each. As the input is processed, the emotion engine recognizes emotions such as "Tanaka seems happy" and "Kimura seems anxious," and sends this information to the server. The server then executes an algorithm based on the received data to calculate a shift assignment, assigning Tanaka to the early shift cashier and Kimura to the late shift inventory. The calculation also takes the user's emotions into account; for example, if Kimura is feeling anxious, the system prioritizes assigning a more experienced staff member.
[0935] Inventory management efficiency system (equipped with an emotional engine)
[0936] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine (e.g., Affectiva or Google Cloud Natural Language API) recognizes the user's emotions from their voice and facial expressions and retrieves this data.
[0937] The terminal converts scanned barcode data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The server parses the received data and compares it with a database such as MySQL or MongoDB to extract the corresponding product information. The extracted product information and sentiment data are converted back into JSON format and sent to the terminal as an HTTP response.
[0938] Finally, based on product information and emotional data, the device displays additional information, such as work progress updates and break suggestions, if the user is tired.
[0939] Specific example
[0940] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotional data, such as "tired" or "stressed," to the server. The server compares this data with a database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotional data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[0941] Thus, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[0942] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0943] Shift scheduling automation system (equipped with an emotion engine)
[0944] Program processing flow
[0945] Step 1:
[0946] The user accesses the shift creation screen.
[0947] Input data: None
[0948] Output data: Display of the shift creation screen
[0949] Specific actions:
[0950] The user launches a web browser or dedicated application and logs in to the shift creation screen. The shift creation screen is displayed.
[0951] Step 2:
[0952] The user enters the staff information.
[0953] Input data: Staff name, role, skills, experience, shift preferences
[0954] Output data: Entered staff information
[0955] Specific actions:
[0956] The user enters each staff member's name, role, skills, experience, and shift preferences into a form on the shift creation screen. For example, "Mr. Tanaka is in charge of the cash register and prefers the early shift."
[0957] Step 3:
[0958] The emotion engine recognizes the user's emotions.
[0959] Input data: User's voice or text input
[0960] Output data: Emotional data (joy, anger, sadness, surprise, etc.)
[0961] Specific actions:
[0962] An emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes the user's voice and text in real time and generates emotion data. For example, it might recognize that "Mr. Tanaka sounds happy when he's typing."
[0963] Step 4:
[0964] The device converts the data to JSON.
[0965] Input data: Staff information and emotional data
[0966] Output data: Data in JSON format
[0967] Specific actions:
[0968] The terminal combines the entered staff information and recognized emotion data and converts them into JSON format. The generated JSON data will be in the following format.
[0969] json
[0970] {
[0971] "staff_info": {
[0972] "tanaka": { "role": "register", "shift": "morning"},
[0973] "kimura": { "role": "inventory", "shift": "evening"}
[0974] },
[0975] "emotion_data": {
[0976] "tanaka": "happy",
[0977] "kimura": "nervous"
[0978] }
[0979] }
[0980] Step 5:
[0981] The device sends data to the server.
[0982] Input data: Staff information and sentiment data in JSON format.
[0983] Output data: Result of transmission to the server (success or failure status)
[0984] Specific actions:
[0985] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / shift".
[0986] Step 6:
[0987] The server analyzes the data and executes the shift scheduling algorithm.
[0988] Input data: Received JSON data
[0989] Output data: Shift assignment results
[0990] Specific actions:
[0991] The server parses the received JSON data and calculates the optimal shift assignments using Python-based algorithms (such as Pandas and NumPy libraries). The optimal assignments are determined by considering each staff member's role, skills, experience, shift preferences, and sentiment data.
[0992] Step 7:
[0993] The server converts the calculation result into JSON.
[0994] Input data: Shift assignment results
[0995] Output data: Shifted layout result in JSON format
[0996] Specific actions:
[0997] The server converts the calculated shift assignment results into JSON format. The generated JSON data will be in a format similar to the following:
[0998] json
[0999] {
[1000] "shift_assignment": {
[1001] "tanaka": { "role": "register", "shift": "morning"},
[1002] "kimura": { "role": "inventory", "shift": "evening"}
[1003] }
[1004] }
[1005] Step 8:
[1006] The server sends the data back to the terminal.
[1007] Input data: Shifted layout result in JSON format
[1008] Output data: Transmission result to the terminal (success or failure status)
[1009] Specific actions:
[1010] The server sends the generated JSON data to the terminal as an HTTP response.
[1011] Step 9:
[1012] The device displays the results to the user.
[1013] Input data: Shifted layout result in JSON format
[1014] Output data: Shift assignment results displayed on the user screen
[1015] Specific actions:
[1016] The terminal analyzes the returned JSON data and displays the shift assignment results on the user screen. For example, it might display, "Tanaka is on the early shift as the cashier, and Kimura is on the late shift as the inventory manager."
[1017] Inventory management efficiency system (equipped with an emotional engine)
[1018] Program processing flow
[1019] Step 1:
[1020] The user starts up the inventory terminal.
[1021] Input data: None
[1022] Output data: Startup of inventory terminal
[1023] Specific actions:
[1024] The user turns on the device and launches the dedicated application. The inventory management application is then launched.
[1025] Step 2:
[1026] The user scans the product barcode.
[1027] Input data: Product barcode
[1028] Output data: Scanned barcode data
[1029] Specific actions:
[1030] The user uses a barcode reader to scan the product's barcode. For example, the barcode for product A is scanned.
[1031] Step 3:
[1032] The emotion engine recognizes the user's emotions.
[1033] Input data: User's voice and facial expressions
[1034] Output data: Emotional data (e.g., fatigue, stress)
[1035] Specific actions:
[1036] An emotion engine (e.g., Affectiva or Google Cloud Natural Language API) analyzes the user's voice and facial expressions in real time and generates emotion data. For example, it might recognize that "the user is tired."
[1037] Step 4:
[1038] The device converts the data to JSON.
[1039] Input data: barcode data and emotion data
[1040] Output data: Data in JSON format
[1041] Specific actions:
[1042] The terminal combines scanned barcode data and sentiment data and converts them into JSON format. The generated JSON data will look like this:
[1043] json
[1044] {
[1045] "barcode_data": "1234567890123",
[1046] "emotion_data": "stressed"
[1047] }
[1048] Step 5:
[1049] The device sends data to the server.
[1050] Input data: Barcode data and sentiment data in JSON format.
[1051] Output data: Result of transmission to the server (success or failure status)
[1052] Specific actions:
[1053] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / inventory".
[1054] Step 6:
[1055] The server analyzes the data and extracts product information.
[1056] Input data: Received JSON data
[1057] Output data: Relevant product information
[1058] Specific actions:
[1059] The server parses the received JSON data and compares it with databases such as MySQL or MongoDB to extract the corresponding product information. Product names, prices, inventory information, etc., are retrieved from the database.
[1060] Step 7:
[1061] The server converts the extracted results into JSON.
[1062] Input data: Product information
[1063] Output data: Data in JSON format
[1064] Specific actions:
[1065] The server converts the extracted product information into JSON format. The generated JSON data will be in the following format:
[1066] json
[1067] {
[1068] "product_info": {
[1069] "name": "Product A",
[1070] "price": 1000,
[1071] "stock": 50
[1072] }
[1073] }
[1074] Step 8:
[1075] The server sends the data back to the terminal.
[1076] Input data: Product information in JSON format
[1077] Output data: Transmission result to the terminal (success or failure status)
[1078] Specific actions:
[1079] The server sends the generated JSON data to the terminal as an HTTP response.
[1080] Step 9:
[1081] The device displays the results to the user.
[1082] Input data: Product information in JSON format
[1083] Output data: Product information and emotion-based messages displayed on the user screen.
[1084] Specific actions:
[1085] The device analyzes the returned JSON data and displays product information and sentiment-based messages to the user. For example, it might display: "Product A: Price 1000 yen, Quantity in stock 50. You appear tired, so we recommend you take a short break."
[1086] (Application Example 2)
[1087] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[1088] Conventional shift scheduling and inventory management systems fail to consider staff emotions and workload, making it difficult to improve operational efficiency and staff satisfaction. Furthermore, while considering staff emotions is necessary for more effective shift scheduling and inventory management, no technology existed to achieve this. There is a growing need for systems that can reduce stress and improve operational efficiency.
[1089] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for recognizing emotions at the time of input; means for transmitting the input condition data and emotion data to the server in JSON format; means for executing an algorithm that calculates the optimal shift assignment based on the received condition data and emotion data; means for generating the calculated shift assignment result and transmitting it to the terminal; means for scanning product barcodes; means for recognizing emotions at the time of scanning; means for transmitting the scanned barcode data and emotion data to the server in JSON format; means for comparing the received barcode data and emotion data with a database and extracting the corresponding product information; and means for generating additional information based on the extracted product information and emotion data, transmitting it to the terminal, and displaying it. This makes it possible to create more optimal shift assignments and improve the efficiency of inventory work by taking into account the conditions and emotion data of each staff member.
[1090] "Each user's role, skills, experience, shift preferences, and other conditions" refers to data that includes each staff member's job description, abilities, level, past performance, and desired working hours, which are considered when creating shifts and assigning tasks.
[1091] "Means of recognizing emotions" refers to technology that analyzes emotional states such as joy, anger, sadness, and surprise from the voice and text of staff members.
[1092] "Method of sending to the server in JSON format" refers to a method of converting each input data and the recognized sentiment data into JavaScript Object Notation (JSON) format and sending it to the server as an HTTP POST request.
[1093] An "algorithm for calculating the optimal shift arrangement" is a computational method for generating the most efficient and satisfying shift schedule based on staff condition data and emotional data.
[1094] "Means of scanning barcodes" refers to equipment or technology used to read the barcodes on products.
[1095] "Means for matching with a database and extracting relevant product information" refers to a method of matching scanned barcode data with the database of a central information system and obtaining corresponding product details.
[1096] "Means for generating, transmitting, and displaying additional information to a terminal" refers to a technology that creates new supplementary information, such as break suggestions, based on extracted product information and sentiment data, and transmits and displays it on the user's terminal.
[1097] "Taking into account each staff member's conditions and emotional data" means that when determining shift schedules and work assignments, the current emotional state of each staff member should be taken into account, in addition to their job skills and preferences.
[1098] Modes for carrying out the invention
[1099] The system of the present invention aims to improve the efficiency of staff shift scheduling and inventory management, and includes the following components.
[1100] Shift scheduling automation system
[1101] First, staff members access the shift creation screen and enter their information (role, skills, experience, shift preferences, etc.). During input, an emotion engine analyzes the voice and text to recognize emotions. This system uses emotion recognition software such as Google Cloud Natural Language and EmotionAPI.
[1102] The above data is converted to JSON format and sent to the server via an HTTP POST request. On the server side, this data is analyzed and the shift scheduling algorithm is executed. This algorithm calculates the optimal shift assignments based on staff conditions and emotional data. The result of this calculation is converted to JSON format and sent to the terminal as an HTTP response. The terminal displays the shift assignment results to the user. For example, if staff members input "Person A should be in charge of the cash register, Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts, Person B is good at late shifts," the system will also consider emotional data to determine the optimal assignments.
[1103] Inventory efficiency system
[1104] Next, a dedicated inventory terminal is used. When a user scans an item's barcode with a barcode reader, the emotion engine analyzes the user's voice and facial expressions to obtain emotion data. Here again, Google Cloud Natural Language or EmotionAPI can be used for the emotion engine.
[1105] The acquired barcode data and sentiment data are converted to JSON format and sent to the server via an HTTP POST request. The server parses the data, compares it with the database, and extracts the corresponding product information. The extracted product information and sentiment data are converted to JSON format and sent to the terminal as an HTTP response. The terminal receives this and displays it to the user. For example, if a user scans the barcode of product A and sentiment data such as "tired" and "stressed" is acquired, the system will display "Product A: Price 1000 yen, Stock Quantity 50" and a message such as "We recommend you take a break."
[1106] Examples of specific cases and prompt statements
[1107] As a concrete example, the shift scheduling system uses the following prompt:
[1108] "Create a shift schedule for the store staff and propose the optimal assignments, taking into account staff emotional data. For example, if staff member A enters 'I want an early shift,' assign him to the early shift when he's happy, and change him to the late shift when he's tired."
[1109] This enables more efficient shift scheduling and inventory management, taking into account the individual needs and emotional data of each staff member.
[1110] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1111] Step 1:
[1112] The user accesses the shift scheduling screen or the inventory terminal.
[1113] The user accesses the shift creation screen and enters information for each staff member (e.g., role, skills, experience, shift preferences, etc.). In the case of inventory work, the user activates a dedicated inventory terminal and scans the barcodes of the products. At this stage, an emotion recognition engine (e.g., Google Cloud Natural Language or EmotionAPI) recognizes emotions from the voice or text.
[1114] Input: Staff information, shift preferences, voice / text (for emotion recognition)
[1115] Output: Emotional data, staff information data
[1116] Step 2:
[1117] The terminal converts the entered conditional data and sentiment data into JSON format.
[1118] The terminal retrieves entered staff information, shift preferences, and recognized emotion data, and converts this data into JSON format.
[1119] Input: Staff information data, emotion data
[1120] Output: Data in JSON format
[1121] Step 3:
[1122] Send JSON data to the server via an HTTP POST request.
[1123] The terminal sends the converted JSON data to the server via an HTTP POST request.
[1124] Input: Data in JSON format
[1125] Output: Data sent to the server
[1126] Step 4:
[1127] The server analyzes the received data and executes either a shift scheduling algorithm or a product information matching algorithm.
[1128] For shift scheduling, the server calculates the optimal shift arrangement based on received conditional and sentiment data. For inventory management, the server compares received barcode and sentiment data with the database and extracts the relevant product information.
[1129] Input: Data sent to the server
[1130] Output: Shift assignment result data or product information data
[1131] Step 5:
[1132] The server converts the calculated and extracted data into JSON format and sends it to the terminal as an HTTP response.
[1133] The server converts the calculated shift assignment results or extracted product information into JSON format and sends it to the terminal as an HTTP response.
[1134] Input: Shift assignment result data or product information data
[1135] Output: Response data in JSON format
[1136] Step 6:
[1137] The terminal analyzes the response data and displays it to the user.
[1138] The terminal parses the received JSON response data and displays shift assignment results or product information to the user. Based on sentiment data, additional information such as break suggestions may also be displayed.
[1139] Input: Response data in JSON format
[1140] Output: Shift assignment results or product information displayed to the user
[1141] This process allows for optimal shift scheduling and more efficient inventory management, taking into account the individual conditions and emotional data of each staff member.
[1142] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1143] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1144] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[1145] [Third Embodiment]
[1146] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[1147] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[1148] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1149] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[1150] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1151] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1152] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1153] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1154] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1155] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1156] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1157] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[1158] Shift scheduling automation system
[1159] This invention is an automated shift scheduling system that begins with the user inputting conditions such as each staff member's role, skills, experience, and shift preferences. The specific operation of this system is as follows:
[1160] Description of the Embodiment
[1161] First, the user accesses the shift creation screen and enters information for each staff member (e.g., name, role, skills, experience, shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes the shift creation algorithm. This algorithm calculates the optimal shift assignment based on each staff member's conditions, and the calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[1162] Specific example
[1163] For example, a user opens the shift creation screen and sets Person A as "cashier" and Person B as "inventory manager," and enters conditions such as "better at early shifts" and "better at late shifts" for each. The terminal sends this information to the server, and the server executes a shift creation algorithm based on the received data. As a result, a shift arrangement is calculated and displayed on the terminal, assigning Person A to the early shift as cashier and Person B to the late shift as inventory manager.
[1164] Inventory efficiency system
[1165] The present invention also includes, as an inventory efficiency system, a system that scans product barcodes and automatically retrieves and displays product information through matching with a database.
[1166] Description of the Embodiment
[1167] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted into JSON format and sent back to the terminal as an HTTP response. Finally, the terminal analyzes the product information and displays it to the user.
[1168] Specific example
[1169] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database and extracts detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[1170] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[1171] The following describes the processing flow.
[1172] Shift scheduling automation system
[1173] Program processing flow
[1174] Step 1:
[1175] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[1176] Step 2:
[1177] The terminal converts the user's input data into JSON format.
[1178] Step 3:
[1179] The terminal sends the converted JSON data to the server using an HTTP POST request.
[1180] Step 4:
[1181] The server receives an HTTP request and parses the JSON data.
[1182] Step 5:
[1183] The server executes a shift scheduling algorithm based on the analyzed data. The algorithm calculates the optimal shift arrangement, taking into account the conditions of each staff member.
[1184] Step 6:
[1185] The server converts the calculation results into JSON format.
[1186] Step 7:
[1187] The server converts the JSON data and sends it to the terminal as an HTTP response.
[1188] Step 8:
[1189] The terminal receives an HTTP response from the server and analyzes the shift data.
[1190] Step 9:
[1191] The terminal displays the analyzed shift data on the screen. Specifically, it shows that Person A's shift is the early shift cashier, and Person B's shift is the late shift inventory manager.
[1192] Inventory efficiency system
[1193] Program processing flow
[1194] Step 1:
[1195] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[1196] Step 2:
[1197] The device retrieves the barcode data scanned and converts it to JSON format.
[1198] Step 3:
[1199] The terminal converts the barcode data and sends it to the server using an HTTP POST request.
[1200] Step 4:
[1201] The server receives an HTTP request and parses the barcode data.
[1202] Step 5:
[1203] The server queries the database to retrieve the relevant product information.
[1204] Step 6:
[1205] The server retrieves product information from the database and converts it to JSON format.
[1206] Step 7:
[1207] The server sends the converted product information to the terminal as an HTTP response.
[1208] Step 8:
[1209] The terminal receives an HTTP response from the server and parses the product information.
[1210] Step 9:
[1211] The device displays the product information it has analyzed on the screen. Specifically, it will display something like, "Product A: Price 1000 yen, Stock Quantity 50 units."
[1212] (Example 1)
[1213] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1214] Many modern companies face the problem of significant effort and time spent on tasks such as creating staff schedules and conducting inventory. In particular, creating schedules that take into account each staff member's role, skills, and shift preferences, as well as conducting inventory to obtain accurate product information, are complex processes requiring efficient methods. Furthermore, since systems for automating and rapidly performing these tasks do not currently exist, the development of such systems is urgently needed.
[1215] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1216] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for converting the input condition data into JSON format on the terminal and sending it to the server via an HTTP POST request; means for analyzing the received condition data and executing a shift creation algorithm; means for converting the calculated shift assignment results into JSON format and sending them to the terminal as an HTTP response; means for analyzing the received shift assignment results and displaying them to the user; means for scanning product barcodes and converting the scanned data into JSON format; means for sending the converted barcode data to the server via an HTTP POST request; means for analyzing the received barcode data, comparing it with a database, and extracting the corresponding product information; means for converting the extracted product information into JSON format and sending it to the terminal as an HTTP response; and means for analyzing the received product information and displaying it to the user. This enables the streamlining of shift creation and inventory management operations.
[1217] "User" refers to a user who operates the system and inputs or retrieves information.
[1218] "Role" refers to the duties or functions that staff members or those in charge are expected to perform in their work.
[1219] "Skills" refers to the specialized knowledge and techniques possessed by staff and personnel.
[1220] "Experience" refers to the tasks that staff or employees have performed in the past and their length of service.
[1221] "Shift preferences" refers to the desired working hours and dates of staff or managers.
[1222] "Terminal" refers to devices such as computers, smartphones, and tablets used by users.
[1223] "JSON format" is a data exchange format, and is an abbreviation for JavaScript Object Notation.
[1224] An "HTTP POST request" is one method of sending data to a server using the HTTP protocol.
[1225] A "server" refers to a computer system used for receiving, processing, and transmitting data.
[1226] A "shift scheduling algorithm" refers to a calculation method used to determine the optimal shift arrangement based on the staff's qualifications.
[1227] A "database" refers to a system for efficiently managing large amounts of data.
[1228] A "barcode reader" refers to a device used to read barcodes.
[1229] "Response" refers to the response data sent from the server to the terminal.
[1230] Modes for carrying out the invention
[1231] Shift scheduling automation system
[1232] The automated shift scheduling system of the present invention automatically creates the optimal shift schedule by inputting conditions such as staff roles, skills, experience, and shift preferences. The specific operation of this system is described below.
[1233] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, and shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. This process utilizes a JavaScript library running on the terminal.
[1234] The server analyzes the received data using the Python requests library and executes a shift scheduling algorithm. This algorithm uses Python data processing libraries such as pandas and numpy to calculate the optimal shift arrangement based on each staff member's conditions.
[1235] The calculation results are converted to JSON format and sent to the terminal as an HTTP response. The Flask `jsonify` method is used for this. Finally, the terminal parses the received response data and displays the optimal shift placement result to the user. HTML and JavaScript are used for this.
[1236] Specific example
[1237] For example, a user opens the shift creation screen and assigns roles to person A ("cashier") and person B ("inventory manager"), entering conditions such as "better at early shifts" and "better at late shifts" for each. The terminal converts this information into JSON format and sends it to the server. The server executes a shift creation algorithm based on the received data and calculates a shift arrangement that assigns person A to the early shift as cashier and person B to the late shift as inventory manager. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the result data and displays the optimal shift arrangement to the user.
[1238] Example of a prompt
[1239] "Access the shift scheduling screen and assign roles to Person A (cashier) and Person B (inventory manager). Please also indicate which shift each person is best suited for: early or late shifts."
[1240] Inventory efficiency system
[1241] The inventory efficiency system of the present invention scans product barcodes and automatically retrieves and displays product information through matching with a database. The specific operation of this system is described below.
[1242] First, the user activates a dedicated inventory terminal and scans the product barcodes with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. This conversion is performed using JavaScript running on the terminal.
[1243] The server parses the received barcode data using the Python requests library, compares it with the database, and extracts the corresponding product information. An ORM library such as SQLAlchemy is used for database operations. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The Flask jsonify method is used for this purpose.
[1244] Finally, the terminal analyzes the received response data and displays product information to the user. HTML and JavaScript are used for this process.
[1245] Specific example
[1246] For example, when a user scans the barcode of product A, the terminal converts the scanned data into JSON format and sends it to the server. The server checks the database based on the received data and extracts detailed information about product A (name, price, stock quantity). This information is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the resulting data and displays to the user "Product A: Price 1000 yen, Stock quantity 50 units".
[1247] Example of a prompt
[1248] "Scan the barcode of product A using the inventory terminal, send the information to the server, and display the detailed information."
[1249] Thus, the present invention provides a specific system and method for improving the efficiency of shift scheduling and inventory management.
[1250] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1251] Shift scheduling automation system
[1252] Step 1: User accesses the shift creation screen.
[1253] Users access the shift creation screen using a browser and enter each staff member's information (name, role, skills, experience, and shift preferences).
[1254] Input: Staff information (name, role, skills, experience, shift preferences)
[1255] Output: Staff information is entered into the input form displayed in the browser.
[1256] Step 2: The device converts the data to JSON format.
[1257] The terminal converts the staff information entered by the user into JSON format using JavaScript.
[1258] Input: Staff information object
[1259] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[1260] Output: Staff information in JSON format
[1261] Step 3: The device sends an HTTP POST request to the server.
[1262] The terminal sends the converted JSON data to the server as an HTTP POST request using AJAX.
[1263] Input: Staff information in JSON format
[1264] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[1265] Output: HTTP POST request to the server
[1266] Step 4: The server receives the data.
[1267] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[1268] Input: JSON data sent in an HTTP POST request
[1269] Data processing: Receive and analyze data using the requests library.
[1270] Output: Object of analyzed staff information
[1271] Step 5: The server executes the shift scheduling algorithm.
[1272] The server executes a shift scheduling algorithm based on the analyzed staff information. It uses Python's pandas and numpy libraries.
[1273] Input: Staff information object
[1274] Data Calculation: Calculate the optimal shift placement using pandas and numpy.
[1275] Output: Object of the calculated shift placement result
[1276] Step 6: The server converts the results to JSON format.
[1277] The server converts the calculated shift assignment results into JSON format using Python's json module.
[1278] Input: Shifted object
[1279] Data processing: Convert to JSON format using the json module.
[1280] Output: Shifted JSON format result
[1281] Step 7: The server sends the result to the terminal as an HTTP response.
[1282] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[1283] Input: Shifted JSON format result
[1284] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[1285] Output: HTTP response to the terminal
[1286] Step 8: The device analyzes and displays the data.
[1287] The terminal parses the received response data using JavaScript and combines HTML and JavaScript to display the optimal shift layout result to the user.
[1288] Input: Shifted JSON format received in HTTP response
[1289] Data processing: Parse using JavaScript and update the HTML.
[1290] Output: Shift layout result displayed in the browser
[1291] Inventory efficiency system
[1292] Step 1: The user starts up a terminal dedicated to inventory management.
[1293] The user activates a terminal dedicated to inventory management and connects a barcode reader.
[1294] Input: Start the inventory terminal, connect the barcode reader.
[1295] Output: The inventory terminal starts up and the barcode reader is connected.
[1296] Step 2: The user scans the product's barcode.
[1297] The user scans the product's barcode using a barcode reader.
[1298] Input: Product barcode
[1299] Output: Scanned barcode data
[1300] Step 3: The device converts the scanned data to JSON format.
[1301] The terminal converts the scanned barcode data into JSON format using JavaScript.
[1302] Input: Scanned barcode data
[1303] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[1304] Output: Barcode data in JSON format
[1305] Step 4: The device sends an HTTP POST request to the server.
[1306] The terminal sends the converted JSON data to the server via an HTTP POST request using AJAX.
[1307] Input: Barcode data in JSON format
[1308] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[1309] Output: HTTP POST request to the server
[1310] Step 5: The server receives the data.
[1311] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[1312] Input: JSON data sent in an HTTP POST request
[1313] Data processing: Receive and analyze data using the requests library.
[1314] Output: Object of the analyzed barcode data
[1315] Step 6: The server verifies against the database.
[1316] The server compares the analyzed barcode data with the database and extracts the corresponding product information.
[1317] Input: Object of parsed barcode data
[1318] Data Calculation: Use ORM libraries such as SQLAlchemy to match databases and extract product information.
[1319] Output: Object containing extracted product information
[1320] Step 7: The server converts the results to JSON format.
[1321] The server converts the extracted product information into JSON format using Python's json module.
[1322] Input: Object containing extracted product information
[1323] Data processing: Convert to JSON format using the json module.
[1324] Output: Product information in JSON format
[1325] Step 8: The server sends the result to the terminal as an HTTP response.
[1326] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[1327] Input: Product information in JSON format
[1328] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[1329] Output: HTTP response to the terminal
[1330] Step 9: The device analyzes and displays the data.
[1331] The terminal parses the received response data using JavaScript and displays product information to the user by combining HTML and JavaScript.
[1332] Input: Product information in JSON format received via HTTP response.
[1333] Data processing: Parse using JavaScript and update the HTML.
[1334] Output: Product information displayed in the browser
[1335] (Application Example 1)
[1336] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1337] In traditional logistics centers, shift scheduling and inventory management are handled separately, making efficient operation difficult. Furthermore, the reliance on manual processes for staff shift scheduling and inventory management is time-consuming, labor-intensive, and prone to errors. This situation places a heavy burden on staff, highlighting the need for increased efficiency and accuracy.
[1338] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1339] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for transmitting the input condition data to the server; means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data; means for generating the calculated shift arrangement result and transmitting it to a terminal; means for scanning product identification codes with the camera of a smart device; means for transmitting the scanned product identification code data to the server; means for comparing the received product identification code data with a database and extracting the corresponding product information; and means for transmitting and displaying the extracted product information to a terminal. This makes it possible to improve the efficiency and accuracy of shift creation and inventory management operations in a logistics center.
[1340] A "user" is an individual or group that uses the system to create work schedules or manage inventory.
[1341] "Role" refers to information that indicates the specific duties or responsibilities each staff member has.
[1342] "Skills" are evaluation criteria that indicate the specific techniques and abilities that staff members possess.
[1343] "Experience" refers to information that shows the work history and achievements that staff members have accumulated in the past.
[1344] "Shift preferences" refers to information indicating the desired conditions for working hours and work arrangements.
[1345] "Conditional data" refers to information entered by the user, such as their role, skills, experience, and shift preferences.
[1346] A "server" is a central processing unit that receives conditional data and scan data, and performs analysis and calculations.
[1347] "Shift scheduling" refers to the process or result of assigning the most suitable work schedule to each staff member according to their role, skills, and preferences.
[1348] A "terminal" is a device that a user uses to access a system and input / receive information.
[1349] A "product identification code" refers to a barcode, QR code, or other code that contains unique identification information for a product.
[1350] "Scanning" refers to the operation of reading product identification code information using a camera or barcode reader.
[1351] A "database" is a centralized information system used to store and manage product information and staff qualification data.
[1352] "Product information" refers to data that shows details about a product, such as its name, price, and stock level.
[1353] "Shift management" refers to the task of planning and adjusting staff working hours and assigned duties.
[1354] "Product management" refers to the task of monitoring and managing the inventory status and receiving / shipping status of products.
[1355] The embodiment of this invention is primarily provided as a combination of a shift scheduling automation system and an inventory efficiency system. This system has the function of calculating the optimal shift arrangement by inputting information on each staff member using a smart device and transmitting it to a server, and further scanning product identification codes to obtain product information.
[1356] Shift scheduling automation system
[1357] First, the user accesses the shift creation screen and enters information such as each staff member's role, skills, experience, and shift preferences into the terminal. The terminal converts this input data into JSON format and sends it to the server via an HTTP POST request.
[1358] The server analyzes the received condition data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift arrangement based on each staff member's role, skills, and preferences. The calculation results are converted to JSON format and sent to the terminal as an HTTP response.
[1359] The terminal analyzes response data and displays the optimal shift assignment results to the user. For example, if a user opens the shift creation screen and sets Staff A as "cashier" and Staff B as "inventory manager," and enters the conditions "good at early shifts" and "good at late shifts," the system calculates a shift assignment that assigns Staff A to the early shift cashier and Staff B to the late shift inventory manager, and displays it on the terminal.
[1360] Inventory efficiency system
[1361] Next, the user activates a dedicated inventory terminal and scans the product barcode with the camera on their smart device. The terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request.
[1362] The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The terminal analyzes the product information and displays it to the user.
[1363] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database to extract detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[1364] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management operations in a logistics center.
[1365] Hardware and software to use
[1366] Hardware: Smart devices (smartphones, tablets, etc.), servers
[1367] Software: Python, Flask, JSON, Database management systems (MySQL, PostgreSQL, etc.)
[1368] Specific example
[1369] I'm thinking about an automated shift scheduling system for a logistics center. The system would take staff roles, skills, and shift preferences as input and calculate the optimal placement. As an example, if staff member A is a "cashier" and "good at early shifts," and staff member B is a "inventory manager" and "good at late shifts," please show me the resulting shift placement.
[1370] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1371] Step 1:
[1372] Users access the shift creation screen and enter information such as each staff member's role, skills, experience, and shift preferences. The data entered by users includes the staff member's name, responsibilities, years of experience, and preferred shift times. This collects the necessary data.
[1373] Step 2:
[1374] The terminal converts the entered condition data into JSON format. The converted JSON data holds detailed information about each staff member. For example, the staff member's name, role, skills, and preferred shift times are represented in JSON format. The converted JSON data is then ready to be sent to the server as an API request.
[1375] Step 3:
[1376] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process includes error handling to ensure that the data transmission is completed successfully.
[1377] Step 4:
[1378] The server parses the received JSON data. The server parses the received data and extracts information about each staff member. The server analyzes the staff member's role, skills, experience, and shift preferences and passes this information to the shift scheduling algorithm.
[1379] Step 5:
[1380] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's role, skills, and preferences. This calculation process is performed to generate shift assignment results that take these conditions into account. For example, the algorithm ensures that staff members who prefer early shifts are assigned early shift roles, reflecting their preferences to the greatest extent possible.
[1381] Step 6:
[1382] The server converts the calculated shift assignment results into JSON format. The generated shift assignment results include each staff member's name and assigned shift time.
[1383] Step 7:
[1384] The server sends the shift assignment result, converted to JSON format, to the terminal as an HTTP response. Once the transmission process is complete, the server checks the status of the response.
[1385] Step 8:
[1386] The terminal analyzes the response data received from the server. This analysis includes reading the received JSON data and extracting the shift information for each staff member.
[1387] Step 9:
[1388] The terminal displays the optimal shift assignment results to the user. The user can check each staff member's shift schedule on the screen. For example, staff member A is shown as "early shift cashier," and staff member B is shown as "late shift inventory manager."
[1389] Step 10:
[1390] The user activates a dedicated inventory terminal and scans the product identification code with the camera on their smart device. The scanned data is entered into the terminal.
[1391] Step 11:
[1392] The terminal converts the scanned product identification code data into JSON format. This converted JSON data includes the barcode information of the scanned product.
[1393] Step 12:
[1394] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process serves to pass product information to the server.
[1395] Step 13:
[1396] The server analyzes the received product identification code data and compares it with the database. A process is performed to verify that the received data matches the information in the database.
[1397] Step 14:
[1398] The server extracts the relevant product information. Detailed information such as product name, price, and stock quantity is retrieved from the database.
[1399] Step 15:
[1400] The server converts the extracted product information into JSON format. The converted data includes detailed information such as product name, price, and stock quantity.
[1401] Step 16:
[1402] The server sends product information to the terminal as an HTTP response in JSON format.
[1403] Step 17:
[1404] The terminal analyzes the received product information. This analysis includes reading product name, price, and inventory quantity, and preparing them for display on the screen.
[1405] Step 18:
[1406] The device displays product information to the user. For example, information such as "Product A: Price 1000 yen, Stock Quantity 50" is displayed on the screen. This allows the user to quickly check product information.
[1407] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1408] Shift scheduling automation system (equipped with an emotion engine)
[1409] The present invention's automated shift scheduling system achieves more appropriate shift assignments by combining conditions such as each user's role, skills, experience, and shift preferences with an emotion engine that recognizes the user's emotions.
[1410] Description of the Embodiment
[1411] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, shift preferences, etc.). As the user enters the information, the emotion engine analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[1412] The terminal converts the user's input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift assignment considering each staff member's conditions and recognized sentiment data. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[1413] Specific example
[1414] For example, a user might input "Person A should be the cashier, and Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts" and "Person B is good at late shifts." As the user inputs the information, the emotion engine recognizes their emotions, such as "happy" or "anxious," and sends this information to the server. The server then uses an algorithm based on the received data to calculate a shift schedule, assigning Person A to the early shift as the cashier and Person B to the late shift as the inventory manager. The calculation also takes the user's emotions into account; for example, if the user is feeling anxious, the system prioritizes assigning more experienced staff. This results in a more reliable shift schedule that improves user satisfaction.
[1415] Inventory management efficiency system (equipped with an emotional engine)
[1416] The inventory efficiency system of the present invention is a system that scans product barcodes and automatically acquires and displays product information through matching with a database, and further reduces the workload of the user by combining it with an emotion engine.
[1417] Description of the Embodiment
[1418] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine recognizes the user's emotions from their voice and facial expressions and acquires this as data. The terminal converts the scanned barcode data and emotion data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received data, compares it with the database, and extracts the corresponding product information. The extracted product information and emotion data are converted into JSON format and sent back to the terminal as an HTTP response.
[1419] Finally, the device analyzes product information and emotional data and displays it to the user. Based on the emotional data, if the user is tired, for example, it can display additional information such as work progress updates or break suggestions.
[1420] Specific example
[1421] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotions, such as "tired" or "stressed," to the server. The server compares this with the database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotion data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[1422] Based on the above, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[1423] The following describes the processing flow.
[1424] Shift scheduling automation system (equipped with an emotion engine)
[1425] Program processing flow
[1426] Step 1:
[1427] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[1428] Step 2:
[1429] When input is received, the device activates an emotion engine to recognize emotions from the user's voice and facial expressions. For example, it analyzes facial expressions from the camera and voice tone from the microphone.
[1430] Step 3:
[1431] The device converts user input data and recognized sentiment data into JSON format.
[1432] Step 4:
[1433] The terminal sends the converted JSON data to the server using an HTTP POST request.
[1434] Step 5:
[1435] The server receives an HTTP request and parses the JSON data. The parsed data includes the shift conditions and sentiment data entered by the user.
[1436] Step 6:
[1437] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's characteristics (role, skills, experience, shift preferences) and recognized emotional data.
[1438] Step 7:
[1439] The server converts the calculation results into JSON format.
[1440] Step 8:
[1441] The server sends the converted JSON data to the terminal as an HTTP response.
[1442] Step 9:
[1443] The terminal receives an HTTP response from the server and analyzes shift data and sentiment data.
[1444] Step 10:
[1445] The terminal displays the analysis results to the user. The display includes the optimal shift assignment results and emotion-based advice for the user (e.g., "Your stress level is high, so we've adjusted your shifts").
[1446] Inventory management efficiency system (equipped with an emotional engine)
[1447] Program processing flow
[1448] Step 1:
[1449] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[1450] Step 2:
[1451] During scanning, the device activates its emotion engine and recognizes the user's emotions from their voice and facial expressions.
[1452] Step 3:
[1453] The device converts the scanned barcode data and recognized emotion data into JSON format.
[1454] Step 4:
[1455] The terminal sends the converted data to the server using an HTTP POST request.
[1456] Step 5:
[1457] The server receives an HTTP request and analyzes the barcode data and sentiment data.
[1458] Step 6:
[1459] The server queries the database to retrieve the relevant product information.
[1460] Step 7:
[1461] The server converts product information retrieved from the database into JSON format. It also adds sentiment data to generate a response.
[1462] Step 8:
[1463] The server sends the converted data to the terminal as an HTTP response.
[1464] Step 9:
[1465] The terminal receives a response from the server and analyzes product information and sentiment data.
[1466] Step 10:
[1467] The device displays the analysis results to the user. The displayed content includes product information (e.g., "Product A: Price 1000 yen, Stock Quantity 50") and emotion-based advice (e.g., "You appear fatigued, so we recommend you take a short break").
[1468] As described above, by combining the emotion engine, it becomes possible to achieve optimal shift scheduling and increased efficiency in inventory management based on the user's state.
[1469] (Example 2)
[1470] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1471] Traditional shift scheduling and inventory systems consider each user's skills, experience, and shift preferences, but they fail to consider user emotions, resulting in lower satisfaction and reduced work efficiency. Furthermore, the lack of shift scheduling and product information tailored to user feelings prevents improved operational efficiency and reduced user stress.
[1472] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1473] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, shift preferences, and emotional data; means for converting the input condition data and emotional data into JSON format and sending it to the server; means for analyzing the received condition data and emotional data and executing a shift creation algorithm; means for generating the calculated shift assignment results and sending them to a terminal; and means for displaying them on the terminal. This enables optimal shift assignment and work management that takes into account the user's emotions.
[1474] A "user" refers to an individual or business person who operates the system and provides input data and sentiment data.
[1475] "Role" refers to the specific tasks and duties that each user is responsible for.
[1476] "Skills" refer to the abilities and techniques that each user possesses to perform specific tasks.
[1477] "Experience" refers to the history and track record of how much each user has performed on related tasks in the past.
[1478] "Shift preferences" refer to each user's preferences regarding the hours and type of work they wish to do.
[1479] "Emotional data" refers to data that indicates the user's emotional state at the time of input (for example, joy, anger, sadness, surprise, etc.).
[1480] "JSON format" refers to the JavaScript Object Notation format used to structure and represent data.
[1481] A "server" refers to a computer system that analyzes received data and executes shift scheduling algorithms and data matching.
[1482] An "algorithm" refers to a set of procedures or computational methods for solving a specific problem.
[1483] "Barcode data" refers to identification information obtained from the barcode of a product.
[1484] A "database" refers to a digital system used to manage and store product information, user information, and other data.
[1485] "Product information" refers to detailed information about the product, such as its name, price, and stock level.
[1486] A "terminal" refers to a device operated by a user, which has functions for input and display.
[1487] This invention is a system that streamlines shift scheduling and inventory management by considering each user's role, skills, experience, shift preferences, and emotional data. Specifically, it improves user satisfaction and work efficiency by combining an emotional engine. The following describes a specific form for implementing this system.
[1488] Shift scheduling automation system (equipped with an emotion engine)
[1489] Users access the shift creation screen and enter information for each staff member (name, role, skills, experience, shift preferences, etc.). As users input this information, an emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[1490] The terminal converts user input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and calculates the optimal shift assignments using a Python-based algorithm (such as Pandas or NumPy libraries). This algorithm calculates the optimal shift assignments considering each staff member's conditions and perceived sentiment data.
[1491] The server converts the calculation results into JSON format and sends them to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift placement result to the user.
[1492] Specific example
[1493] For example, a user might input "Tanaka should be the cashier, and Kimura should be in charge of inventory," and set conditions such as "good at early shifts" and "good at late shifts" for each. As the input is processed, the emotion engine recognizes emotions such as "Tanaka seems happy" and "Kimura seems anxious," and sends this information to the server. The server then executes an algorithm based on the received data to calculate a shift assignment, assigning Tanaka to the early shift cashier and Kimura to the late shift inventory. The calculation also takes the user's emotions into account; for example, if Kimura is feeling anxious, the system prioritizes assigning a more experienced staff member.
[1494] Inventory management efficiency system (equipped with an emotional engine)
[1495] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine (e.g., Affectiva or Google Cloud Natural Language API) recognizes the user's emotions from their voice and facial expressions and retrieves this data.
[1496] The terminal converts scanned barcode data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The server parses the received data and compares it with a database such as MySQL or MongoDB to extract the corresponding product information. The extracted product information and sentiment data are converted back into JSON format and sent to the terminal as an HTTP response.
[1497] Finally, based on product information and emotional data, the device displays additional information, such as work progress updates and break suggestions, if the user is tired.
[1498] Specific example
[1499] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotional data, such as "tired" or "stressed," to the server. The server compares this data with a database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotional data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[1500] Thus, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[1501] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1502] Shift scheduling automation system (equipped with an emotion engine)
[1503] Program processing flow
[1504] Step 1:
[1505] The user accesses the shift creation screen.
[1506] Input data: None
[1507] Output data: Display of the shift creation screen
[1508] Specific actions:
[1509] The user launches a web browser or dedicated application and logs in to the shift creation screen. The shift creation screen is displayed.
[1510] Step 2:
[1511] The user enters the staff information.
[1512] Input data: Staff name, role, skills, experience, shift preferences
[1513] Output data: Entered staff information
[1514] Specific actions:
[1515] The user enters each staff member's name, role, skills, experience, and shift preferences into a form on the shift creation screen. For example, "Mr. Tanaka is in charge of the cash register and prefers the early shift."
[1516] Step 3:
[1517] The emotion engine recognizes the user's emotions.
[1518] Input data: User's voice or text input
[1519] Output data: Emotional data (joy, anger, sadness, surprise, etc.)
[1520] Specific actions:
[1521] An emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes the user's voice and text in real time and generates emotion data. For example, it might recognize that "Mr. Tanaka sounds happy when he's typing."
[1522] Step 4:
[1523] The device converts the data to JSON.
[1524] Input data: Staff information and emotional data
[1525] Output data: Data in JSON format
[1526] Specific actions:
[1527] The terminal combines the entered staff information and recognized emotion data and converts them into JSON format. The generated JSON data will be in the following format.
[1528] json
[1529] {
[1530] "staff_info": {
[1531] "tanaka": { "role": "register", "shift": "morning"},
[1532] "kimura": { "role": "inventory", "shift": "evening"}
[1533] },
[1534] "emotion_data": {
[1535] "tanaka": "happy",
[1536] "kimura": "nervous"
[1537] }
[1538] }
[1539] Step 5:
[1540] The device sends data to the server.
[1541] Input data: Staff information and sentiment data in JSON format.
[1542] Output data: Result of transmission to the server (success or failure status)
[1543] Specific actions:
[1544] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / shift".
[1545] Step 6:
[1546] The server analyzes the data and executes the shift scheduling algorithm.
[1547] Input data: Received JSON data
[1548] Output data: Shift assignment results
[1549] Specific actions:
[1550] The server parses the received JSON data and calculates the optimal shift assignments using Python-based algorithms (such as Pandas and NumPy libraries). The optimal assignments are determined by considering each staff member's role, skills, experience, shift preferences, and sentiment data.
[1551] Step 7:
[1552] The server converts the calculation result into JSON.
[1553] Input data: Shift assignment results
[1554] Output data: Shifted layout result in JSON format
[1555] Specific actions:
[1556] The server converts the calculated shift assignment results into JSON format. The generated JSON data will be in a format similar to the following:
[1557] json
[1558] {
[1559] "shift_assignment": {
[1560] "tanaka": { "role": "register", "shift": "morning"},
[1561] "kimura": { "role": "inventory", "shift": "evening"}
[1562] }
[1563] }
[1564] Step 8:
[1565] The server sends the data back to the terminal.
[1566] Input data: Shifted layout result in JSON format
[1567] Output data: Transmission result to the terminal (success or failure status)
[1568] Specific actions:
[1569] The server sends the generated JSON data to the terminal as an HTTP response.
[1570] Step 9:
[1571] The device displays the results to the user.
[1572] Input data: Shifted layout result in JSON format
[1573] Output data: Shift assignment results displayed on the user screen
[1574] Specific actions:
[1575] The terminal analyzes the returned JSON data and displays the shift assignment results on the user screen. For example, it might display, "Tanaka is on the early shift as the cashier, and Kimura is on the late shift as the inventory manager."
[1576] Inventory management efficiency system (equipped with an emotional engine)
[1577] Program processing flow
[1578] Step 1:
[1579] The user starts up the inventory terminal.
[1580] Input data: None
[1581] Output data: Startup of inventory terminal
[1582] Specific actions:
[1583] The user turns on the device and launches the dedicated application. The inventory management application is then launched.
[1584] Step 2:
[1585] The user scans the product barcode.
[1586] Input data: Product barcode
[1587] Output data: Scanned barcode data
[1588] Specific actions:
[1589] The user uses a barcode reader to scan the product's barcode. For example, the barcode for product A is scanned.
[1590] Step 3:
[1591] The emotion engine recognizes the user's emotions.
[1592] Input data: User's voice and facial expressions
[1593] Output data: Emotional data (e.g., fatigue, stress)
[1594] Specific actions:
[1595] An emotion engine (e.g., Affectiva or Google Cloud Natural Language API) analyzes the user's voice and facial expressions in real time and generates emotion data. For example, it might recognize that "the user is tired."
[1596] Step 4:
[1597] The device converts the data to JSON.
[1598] Input data: barcode data and emotion data
[1599] Output data: Data in JSON format
[1600] Specific actions:
[1601] The terminal combines scanned barcode data and sentiment data and converts them into JSON format. The generated JSON data will look like this:
[1602] json
[1603] {
[1604] "barcode_data": "1234567890123",
[1605] "emotion_data": "stressed"
[1606] }
[1607] Step 5:
[1608] The device sends data to the server.
[1609] Input data: Barcode data and sentiment data in JSON format.
[1610] Output data: Result of transmission to the server (success or failure status)
[1611] Specific actions:
[1612] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / inventory".
[1613] Step 6:
[1614] The server analyzes the data and extracts product information.
[1615] Input data: Received JSON data
[1616] Output data: Relevant product information
[1617] Specific actions:
[1618] The server parses the received JSON data and compares it with databases such as MySQL or MongoDB to extract the corresponding product information. Product names, prices, inventory information, etc., are retrieved from the database.
[1619] Step 7:
[1620] The server converts the extracted results into JSON.
[1621] Input data: Product information
[1622] Output data: Data in JSON format
[1623] Specific actions:
[1624] The server converts the extracted product information into JSON format. The generated JSON data will be in the following format:
[1625] json
[1626] {
[1627] "product_info": {
[1628] "name": "Product A",
[1629] "price": 1000,
[1630] "stock": 50
[1631] }
[1632] }
[1633] Step 8:
[1634] The server sends the data back to the terminal.
[1635] Input data: Product information in JSON format
[1636] Output data: Transmission result to the terminal (success or failure status)
[1637] Specific actions:
[1638] The server sends the generated JSON data to the terminal as an HTTP response.
[1639] Step 9:
[1640] The device displays the results to the user.
[1641] Input data: Product information in JSON format
[1642] Output data: Product information and emotion-based messages displayed on the user screen.
[1643] Specific actions:
[1644] The device analyzes the returned JSON data and displays product information and sentiment-based messages to the user. For example, it might display: "Product A: Price 1000 yen, Quantity in stock 50. You appear tired, so we recommend you take a short break."
[1645] (Application Example 2)
[1646] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1647] Conventional shift scheduling and inventory management systems fail to consider staff emotions and workload, making it difficult to improve operational efficiency and staff satisfaction. Furthermore, while considering staff emotions is necessary for more effective shift scheduling and inventory management, no technology existed to achieve this. There is a growing need for systems that can reduce stress and improve operational efficiency.
[1648] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for recognizing emotions at the time of input; means for transmitting the input condition data and emotion data to the server in JSON format; means for executing an algorithm that calculates the optimal shift assignment based on the received condition data and emotion data; means for generating the calculated shift assignment result and transmitting it to the terminal; means for scanning product barcodes; means for recognizing emotions at the time of scanning; means for transmitting the scanned barcode data and emotion data to the server in JSON format; means for comparing the received barcode data and emotion data with a database and extracting the corresponding product information; and means for generating additional information based on the extracted product information and emotion data, transmitting it to the terminal, and displaying it. This makes it possible to create more optimal shift assignments and improve the efficiency of inventory work by taking into account the conditions and emotion data of each staff member.
[1649] "Each user's role, skills, experience, shift preferences, and other conditions" refers to data that includes each staff member's job description, abilities, level, past performance, and desired working hours, which are considered when creating shifts and assigning tasks.
[1650] "Means of recognizing emotions" refers to technology that analyzes emotional states such as joy, anger, sadness, and surprise from the voice and text of staff members.
[1651] "Method of sending to the server in JSON format" refers to a method of converting each input data and the recognized sentiment data into JavaScript Object Notation (JSON) format and sending it to the server as an HTTP POST request.
[1652] An "algorithm for calculating the optimal shift arrangement" is a computational method for generating the most efficient and satisfying shift schedule based on staff condition data and emotional data.
[1653] "Means of scanning barcodes" refers to equipment or technology used to read the barcodes on products.
[1654] "Means for matching with a database and extracting relevant product information" refers to a method of matching scanned barcode data with the database of a central information system and obtaining corresponding product details.
[1655] "Means for generating, transmitting, and displaying additional information to a terminal" refers to a technology that creates new supplementary information, such as break suggestions, based on extracted product information and sentiment data, and transmits and displays it on the user's terminal.
[1656] "Taking into account each staff member's conditions and emotional data" means that when determining shift schedules and work assignments, the current emotional state of each staff member should be taken into account, in addition to their job skills and preferences.
[1657] Modes for carrying out the invention
[1658] The system of the present invention aims to improve the efficiency of staff shift scheduling and inventory management, and includes the following components.
[1659] Shift scheduling automation system
[1660] First, staff members access the shift creation screen and enter their information (role, skills, experience, shift preferences, etc.). During input, an emotion engine analyzes the voice and text to recognize emotions. This system uses emotion recognition software such as Google Cloud Natural Language and EmotionAPI.
[1661] The above data is converted to JSON format and sent to the server via an HTTP POST request. On the server side, this data is analyzed and the shift scheduling algorithm is executed. This algorithm calculates the optimal shift assignments based on staff conditions and emotional data. The result of this calculation is converted to JSON format and sent to the terminal as an HTTP response. The terminal displays the shift assignment results to the user. For example, if staff members input "Person A should be in charge of the cash register, Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts, Person B is good at late shifts," the system will also consider emotional data to determine the optimal assignments.
[1662] Inventory efficiency system
[1663] Next, a dedicated inventory terminal is used. When a user scans an item's barcode with a barcode reader, the emotion engine analyzes the user's voice and facial expressions to obtain emotion data. Here again, Google Cloud Natural Language or EmotionAPI can be used for the emotion engine.
[1664] The acquired barcode data and sentiment data are converted to JSON format and sent to the server via an HTTP POST request. The server parses the data, compares it with the database, and extracts the corresponding product information. The extracted product information and sentiment data are converted to JSON format and sent to the terminal as an HTTP response. The terminal receives this and displays it to the user. For example, if a user scans the barcode of product A and sentiment data such as "tired" and "stressed" is acquired, the system will display "Product A: Price 1000 yen, Stock Quantity 50" and a message such as "We recommend you take a break."
[1665] Examples of specific cases and prompt statements
[1666] As a concrete example, the shift scheduling system uses the following prompt:
[1667] "Create a shift schedule for the store staff and propose the optimal assignments, taking into account staff emotional data. For example, if staff member A enters 'I want an early shift,' assign him to the early shift when he's happy, and change him to the late shift when he's tired."
[1668] This enables more efficient shift scheduling and inventory management, taking into account the individual needs and emotional data of each staff member.
[1669] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1670] Step 1:
[1671] The user accesses the shift scheduling screen or the inventory terminal.
[1672] The user accesses the shift creation screen and enters information for each staff member (e.g., role, skills, experience, shift preferences, etc.). In the case of inventory work, the user activates a dedicated inventory terminal and scans the barcodes of the products. At this stage, an emotion recognition engine (e.g., Google Cloud Natural Language or EmotionAPI) recognizes emotions from the voice or text.
[1673] Input: Staff information, shift preferences, voice / text (for emotion recognition)
[1674] Output: Emotional data, staff information data
[1675] Step 2:
[1676] The terminal converts the entered conditional data and sentiment data into JSON format.
[1677] The terminal retrieves entered staff information, shift preferences, and recognized emotion data, and converts this data into JSON format.
[1678] Input: Staff information data, emotion data
[1679] Output: Data in JSON format
[1680] Step 3:
[1681] Send JSON data to the server via an HTTP POST request.
[1682] The terminal sends the converted JSON data to the server via an HTTP POST request.
[1683] Input: Data in JSON format
[1684] Output: Data sent to the server
[1685] Step 4:
[1686] The server analyzes the received data and executes either a shift scheduling algorithm or a product information matching algorithm.
[1687] For shift scheduling, the server calculates the optimal shift arrangement based on received conditional and sentiment data. For inventory management, the server compares received barcode and sentiment data with the database and extracts the relevant product information.
[1688] Input: Data sent to the server
[1689] Output: Shift assignment result data or product information data
[1690] Step 5:
[1691] The server converts the calculated and extracted data into JSON format and sends it to the terminal as an HTTP response.
[1692] The server converts the calculated shift assignment results or extracted product information into JSON format and sends it to the terminal as an HTTP response.
[1693] Input: Shift assignment result data or product information data
[1694] Output: Response data in JSON format
[1695] Step 6:
[1696] The terminal analyzes the response data and displays it to the user.
[1697] The terminal parses the received JSON response data and displays shift assignment results or product information to the user. Based on sentiment data, additional information such as break suggestions may also be displayed.
[1698] Input: Response data in JSON format
[1699] Output: Shift assignment results or product information displayed to the user
[1700] This process allows for optimal shift scheduling and more efficient inventory management, taking into account the individual conditions and emotional data of each staff member.
[1701] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1702] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1703] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1704] [Fourth Embodiment]
[1705] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1706] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1707] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1708] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1709] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1710] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1711] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1712] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1713] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1714] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1715] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1716] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1717] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1718] Shift scheduling automation system
[1719] This invention is an automated shift scheduling system that begins with the user inputting conditions such as each staff member's role, skills, experience, and shift preferences. The specific operation of this system is as follows:
[1720] Description of the Embodiment
[1721] First, the user accesses the shift creation screen and enters information for each staff member (e.g., name, role, skills, experience, shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes the shift creation algorithm. This algorithm calculates the optimal shift assignment based on each staff member's conditions, and the calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[1722] Specific example
[1723] For example, a user opens the shift creation screen and sets Person A as "cashier" and Person B as "inventory manager," and enters conditions such as "better at early shifts" and "better at late shifts" for each. The terminal sends this information to the server, and the server executes a shift creation algorithm based on the received data. As a result, a shift arrangement is calculated and displayed on the terminal, assigning Person A to the early shift as cashier and Person B to the late shift as inventory manager.
[1724] Inventory efficiency system
[1725] The present invention also includes, as an inventory efficiency system, a system that scans product barcodes and automatically retrieves and displays product information through matching with a database.
[1726] Description of the Embodiment
[1727] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted into JSON format and sent back to the terminal as an HTTP response. Finally, the terminal analyzes the product information and displays it to the user.
[1728] Specific example
[1729] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database and extracts detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[1730] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[1731] The following describes the processing flow.
[1732] Shift scheduling automation system
[1733] Program processing flow
[1734] Step 1:
[1735] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[1736] Step 2:
[1737] The terminal converts the user's input data into JSON format.
[1738] Step 3:
[1739] The terminal sends the converted JSON data to the server using an HTTP POST request.
[1740] Step 4:
[1741] The server receives an HTTP request and parses the JSON data.
[1742] Step 5:
[1743] The server executes a shift scheduling algorithm based on the analyzed data. The algorithm calculates the optimal shift arrangement, taking into account the conditions of each staff member.
[1744] Step 6:
[1745] The server converts the calculation results into JSON format.
[1746] Step 7:
[1747] The server converts the JSON data and sends it to the terminal as an HTTP response.
[1748] Step 8:
[1749] The terminal receives an HTTP response from the server and analyzes the shift data.
[1750] Step 9:
[1751] The terminal displays the analyzed shift data on the screen. Specifically, it shows that Person A's shift is the early shift cashier, and Person B's shift is the late shift inventory manager.
[1752] Inventory efficiency system
[1753] Program processing flow
[1754] Step 1:
[1755] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[1756] Step 2:
[1757] The device retrieves the barcode data scanned and converts it to JSON format.
[1758] Step 3:
[1759] The terminal converts the barcode data and sends it to the server using an HTTP POST request.
[1760] Step 4:
[1761] The server receives an HTTP request and parses the barcode data.
[1762] Step 5:
[1763] The server queries the database to retrieve the relevant product information.
[1764] Step 6:
[1765] The server retrieves product information from the database and converts it to JSON format.
[1766] Step 7:
[1767] The server sends the converted product information to the terminal as an HTTP response.
[1768] Step 8:
[1769] The terminal receives an HTTP response from the server and parses the product information.
[1770] Step 9:
[1771] The device displays the product information it has analyzed on the screen. Specifically, it will display something like, "Product A: Price 1000 yen, Stock Quantity 50 units."
[1772] (Example 1)
[1773] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1774] Many modern companies face the problem of significant effort and time spent on tasks such as creating staff schedules and conducting inventory. In particular, creating schedules that take into account each staff member's role, skills, and shift preferences, as well as conducting inventory to obtain accurate product information, are complex processes requiring efficient methods. Furthermore, since systems for automating and rapidly performing these tasks do not currently exist, the development of such systems is urgently needed.
[1775] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1776] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for converting the input condition data into JSON format on the terminal and sending it to the server via an HTTP POST request; means for analyzing the received condition data and executing a shift creation algorithm; means for converting the calculated shift assignment results into JSON format and sending them to the terminal as an HTTP response; means for analyzing the received shift assignment results and displaying them to the user; means for scanning product barcodes and converting the scanned data into JSON format; means for sending the converted barcode data to the server via an HTTP POST request; means for analyzing the received barcode data, comparing it with a database, and extracting the corresponding product information; means for converting the extracted product information into JSON format and sending it to the terminal as an HTTP response; and means for analyzing the received product information and displaying it to the user. This enables the streamlining of shift creation and inventory management operations.
[1777] "User" refers to a user who operates the system and inputs or retrieves information.
[1778] "Role" refers to the duties or functions that staff members or those in charge are expected to perform in their work.
[1779] "Skills" refers to the specialized knowledge and techniques possessed by staff and personnel.
[1780] "Experience" refers to the tasks that staff or employees have performed in the past and their length of service.
[1781] "Shift preferences" refers to the desired working hours and dates of staff or managers.
[1782] "Terminal" refers to devices such as computers, smartphones, and tablets used by users.
[1783] "JSON format" is a data exchange format, and is an abbreviation for JavaScript Object Notation.
[1784] An "HTTP POST request" is one method of sending data to a server using the HTTP protocol.
[1785] A "server" refers to a computer system used for receiving, processing, and transmitting data.
[1786] A "shift scheduling algorithm" refers to a calculation method used to determine the optimal shift arrangement based on the staff's qualifications.
[1787] A "database" refers to a system for efficiently managing large amounts of data.
[1788] A "barcode reader" refers to a device used to read barcodes.
[1789] "Response" refers to the response data sent from the server to the terminal.
[1790] Modes for carrying out the invention
[1791] Shift scheduling automation system
[1792] The automated shift scheduling system of the present invention automatically creates the optimal shift schedule by inputting conditions such as staff roles, skills, experience, and shift preferences. The specific operation of this system is described below.
[1793] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, and shift preferences). Next, the terminal converts this input data into JSON format and sends it to the server via an HTTP POST request. This process utilizes a JavaScript library running on the terminal.
[1794] The server analyzes the received data using the Python requests library and executes a shift scheduling algorithm. This algorithm uses Python data processing libraries such as pandas and numpy to calculate the optimal shift arrangement based on each staff member's conditions.
[1795] The calculation results are converted to JSON format and sent to the terminal as an HTTP response. The Flask `jsonify` method is used for this. Finally, the terminal parses the received response data and displays the optimal shift placement result to the user. HTML and JavaScript are used for this.
[1796] Specific example
[1797] For example, a user opens the shift creation screen and assigns roles to person A ("cashier") and person B ("inventory manager"), entering conditions such as "better at early shifts" and "better at late shifts" for each. The terminal converts this information into JSON format and sends it to the server. The server executes a shift creation algorithm based on the received data and calculates a shift arrangement that assigns person A to the early shift as cashier and person B to the late shift as inventory manager. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the result data and displays the optimal shift arrangement to the user.
[1798] Example of a prompt
[1799] "Access the shift scheduling screen and assign roles to Person A (cashier) and Person B (inventory manager). Please also indicate which shift each person is best suited for: early or late shifts."
[1800] Inventory efficiency system
[1801] The inventory efficiency system of the present invention scans product barcodes and automatically retrieves and displays product information through matching with a database. The specific operation of this system is described below.
[1802] First, the user activates a dedicated inventory terminal and scans the product barcodes with a barcode reader. Next, the terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request. This conversion is performed using JavaScript running on the terminal.
[1803] The server parses the received barcode data using the Python requests library, compares it with the database, and extracts the corresponding product information. An ORM library such as SQLAlchemy is used for database operations. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The Flask jsonify method is used for this purpose.
[1804] Finally, the terminal analyzes the received response data and displays product information to the user. HTML and JavaScript are used for this process.
[1805] Specific example
[1806] For example, when a user scans the barcode of product A, the terminal converts the scanned data into JSON format and sends it to the server. The server checks the database based on the received data and extracts detailed information about product A (name, price, stock quantity). This information is converted into JSON format and sent to the terminal as an HTTP response. The terminal analyzes the resulting data and displays to the user "Product A: Price 1000 yen, Stock quantity 50 units".
[1807] Example of a prompt
[1808] "Scan the barcode of product A using the inventory terminal, send the information to the server, and display the detailed information."
[1809] Thus, the present invention provides a specific system and method for improving the efficiency of shift scheduling and inventory management.
[1810] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1811] Shift scheduling automation system
[1812] Step 1: User accesses the shift creation screen.
[1813] Users access the shift creation screen using a browser and enter each staff member's information (name, role, skills, experience, and shift preferences).
[1814] Input: Staff information (name, role, skills, experience, shift preferences)
[1815] Output: Staff information is entered into the input form displayed in the browser.
[1816] Step 2: The device converts the data to JSON format.
[1817] The terminal converts the staff information entered by the user into JSON format using JavaScript.
[1818] Input: Staff information object
[1819] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[1820] Output: Staff information in JSON format
[1821] Step 3: The device sends an HTTP POST request to the server.
[1822] The terminal sends the converted JSON data to the server as an HTTP POST request using AJAX.
[1823] Input: Staff information in JSON format
[1824] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[1825] Output: HTTP POST request to the server
[1826] Step 4: The server receives the data.
[1827] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[1828] Input: JSON data sent in an HTTP POST request
[1829] Data processing: Receive and analyze data using the requests library.
[1830] Output: Object of analyzed staff information
[1831] Step 5: The server executes the shift scheduling algorithm.
[1832] The server executes a shift scheduling algorithm based on the analyzed staff information. It uses Python's pandas and numpy libraries.
[1833] Input: Staff information object
[1834] Data Calculation: Calculate the optimal shift placement using pandas and numpy.
[1835] Output: Object of the calculated shift placement result
[1836] Step 6: The server converts the results to JSON format.
[1837] The server converts the calculated shift assignment results into JSON format using Python's json module.
[1838] Input: Shifted object
[1839] Data processing: Convert to JSON format using the json module.
[1840] Output: Shifted JSON format result
[1841] Step 7: The server sends the result to the terminal as an HTTP response.
[1842] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[1843] Input: Shifted JSON format result
[1844] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[1845] Output: HTTP response to the terminal
[1846] Step 8: The device analyzes and displays the data.
[1847] The terminal parses the received response data using JavaScript and combines HTML and JavaScript to display the optimal shift layout result to the user.
[1848] Input: Shifted JSON format received in HTTP response
[1849] Data processing: Parse using JavaScript and update the HTML.
[1850] Output: Shift layout result displayed in the browser
[1851] Inventory efficiency system
[1852] Step 1: The user starts up a terminal dedicated to inventory management.
[1853] The user activates a terminal dedicated to inventory management and connects a barcode reader.
[1854] Input: Start the inventory terminal, connect the barcode reader.
[1855] Output: The inventory terminal starts up and the barcode reader is connected.
[1856] Step 2: The user scans the product's barcode.
[1857] The user scans the product's barcode using a barcode reader.
[1858] Input: Product barcode
[1859] Output: Scanned barcode data
[1860] Step 3: The device converts the scanned data to JSON format.
[1861] The terminal converts the scanned barcode data into JSON format using JavaScript.
[1862] Input: Scanned barcode data
[1863] Data processing: Convert to JSON format using JavaScript's JSON.stringify method.
[1864] Output: Barcode data in JSON format
[1865] Step 4: The device sends an HTTP POST request to the server.
[1866] The terminal sends the converted JSON data to the server via an HTTP POST request using AJAX.
[1867] Input: Barcode data in JSON format
[1868] Data processing: Asynchronous communication is performed using AJAX to form an HTTP POST request.
[1869] Output: HTTP POST request to the server
[1870] Step 5: The server receives the data.
[1871] The server receives the JSON data sent via an HTTP POST request and parses it using the requests library.
[1872] Input: JSON data sent in an HTTP POST request
[1873] Data processing: Receive and analyze data using the requests library.
[1874] Output: Object of the analyzed barcode data
[1875] Step 6: The server verifies against the database.
[1876] The server compares the analyzed barcode data with the database and extracts the corresponding product information.
[1877] Input: Object of parsed barcode data
[1878] Data Calculation: Use ORM libraries such as SQLAlchemy to match databases and extract product information.
[1879] Output: Object containing extracted product information
[1880] Step 7: The server converts the results to JSON format.
[1881] The server converts the extracted product information into JSON format using Python's json module.
[1882] Input: Object containing extracted product information
[1883] Data processing: Convert to JSON format using the json module.
[1884] Output: Product information in JSON format
[1885] Step 8: The server sends the result to the terminal as an HTTP response.
[1886] The server sends the converted result to the terminal as an HTTP response using Flask's jsonify method.
[1887] Input: Product information in JSON format
[1888] Data Calculation: Generate an HTTP response using Flask's jsonify method.
[1889] Output: HTTP response to the terminal
[1890] Step 9: The device analyzes and displays the data.
[1891] The terminal parses the received response data using JavaScript and displays product information to the user by combining HTML and JavaScript.
[1892] Input: Product information in JSON format received via HTTP response.
[1893] Data processing: Parse using JavaScript and update the HTML.
[1894] Output: Product information displayed in the browser
[1895] (Application Example 1)
[1896] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1897] In traditional logistics centers, shift scheduling and inventory management are handled separately, making efficient operation difficult. Furthermore, the reliance on manual processes for staff shift scheduling and inventory management is time-consuming, labor-intensive, and prone to errors. This situation places a heavy burden on staff, highlighting the need for increased efficiency and accuracy.
[1898] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1899] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for transmitting the input condition data to the server; means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data; means for generating the calculated shift arrangement result and transmitting it to a terminal; means for scanning product identification codes with the camera of a smart device; means for transmitting the scanned product identification code data to the server; means for comparing the received product identification code data with a database and extracting the corresponding product information; and means for transmitting and displaying the extracted product information to a terminal. This makes it possible to improve the efficiency and accuracy of shift creation and inventory management operations in a logistics center.
[1900] A "user" is an individual or group that uses the system to create work schedules or manage inventory.
[1901] "Role" refers to information that indicates the specific duties or responsibilities each staff member has.
[1902] "Skills" are evaluation criteria that indicate the specific techniques and abilities that staff members possess.
[1903] "Experience" refers to information that shows the work history and achievements that staff members have accumulated in the past.
[1904] "Shift preferences" refers to information indicating the desired conditions for working hours and work arrangements.
[1905] "Conditional data" refers to information entered by the user, such as their role, skills, experience, and shift preferences.
[1906] A "server" is a central processing unit that receives conditional data and scan data, and performs analysis and calculations.
[1907] "Shift scheduling" refers to the process or result of assigning the most suitable work schedule to each staff member according to their role, skills, and preferences.
[1908] A "terminal" is a device that a user uses to access a system and input / receive information.
[1909] A "product identification code" refers to a barcode, QR code, or other code that contains unique identification information for a product.
[1910] "Scanning" refers to the operation of reading product identification code information using a camera or barcode reader.
[1911] A "database" is a centralized information system used to store and manage product information and staff qualification data.
[1912] "Product information" refers to data that shows details about a product, such as its name, price, and stock level.
[1913] "Shift management" refers to the task of planning and adjusting staff working hours and assigned duties.
[1914] "Product management" refers to the task of monitoring and managing the inventory status and receiving / shipping status of products.
[1915] The embodiment of this invention is primarily provided as a combination of a shift scheduling automation system and an inventory efficiency system. This system has the function of calculating the optimal shift arrangement by inputting information on each staff member using a smart device and transmitting it to a server, and further scanning product identification codes to obtain product information.
[1916] Shift scheduling automation system
[1917] First, the user accesses the shift creation screen and enters information such as each staff member's role, skills, experience, and shift preferences into the terminal. The terminal converts this input data into JSON format and sends it to the server via an HTTP POST request.
[1918] The server analyzes the received condition data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift arrangement based on each staff member's role, skills, and preferences. The calculation results are converted to JSON format and sent to the terminal as an HTTP response.
[1919] The terminal analyzes response data and displays the optimal shift assignment results to the user. For example, if a user opens the shift creation screen and sets Staff A as "cashier" and Staff B as "inventory manager," and enters the conditions "good at early shifts" and "good at late shifts," the system calculates a shift assignment that assigns Staff A to the early shift cashier and Staff B to the late shift inventory manager, and displays it on the terminal.
[1920] Inventory efficiency system
[1921] Next, the user activates a dedicated inventory terminal and scans the product barcode with the camera on their smart device. The terminal converts the scanned data into JSON format and sends it to the server via an HTTP POST request.
[1922] The server analyzes the received barcode data, compares it with the database, and extracts the corresponding product information. The extracted product information is converted to JSON format and sent to the terminal as an HTTP response. The terminal analyzes the product information and displays it to the user.
[1923] For example, when a user scans the barcode of product A, the terminal sends the barcode data to the server, which then checks the database to extract detailed information about product A (e.g., name, price, stock quantity). This information is then returned to the terminal, and the user's screen displays "Product A: Price 1000 yen, Stock quantity 50 units".
[1924] Based on the above, the present invention provides a system and method for improving the efficiency of shift scheduling and inventory management operations in a logistics center.
[1925] Hardware and software to use
[1926] Hardware: Smart devices (smartphones, tablets, etc.), servers
[1927] Software: Python, Flask, JSON, Database management systems (MySQL, PostgreSQL, etc.)
[1928] Specific example
[1929] I'm thinking about an automated shift scheduling system for a logistics center. The system would take staff roles, skills, and shift preferences as input and calculate the optimal placement. As an example, if staff member A is a "cashier" and "good at early shifts," and staff member B is a "inventory manager" and "good at late shifts," please show me the resulting shift placement.
[1930] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1931] Step 1:
[1932] Users access the shift creation screen and enter information such as each staff member's role, skills, experience, and shift preferences. The data entered by users includes the staff member's name, responsibilities, years of experience, and preferred shift times. This collects the necessary data.
[1933] Step 2:
[1934] The terminal converts the entered condition data into JSON format. The converted JSON data holds detailed information about each staff member. For example, the staff member's name, role, skills, and preferred shift times are represented in JSON format. The converted JSON data is then ready to be sent to the server as an API request.
[1935] Step 3:
[1936] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process includes error handling to ensure that the data transmission is completed successfully.
[1937] Step 4:
[1938] The server parses the received JSON data. The server parses the received data and extracts information about each staff member. The server analyzes the staff member's role, skills, experience, and shift preferences and passes this information to the shift scheduling algorithm.
[1939] Step 5:
[1940] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's role, skills, and preferences. This calculation process is performed to generate shift assignment results that take these conditions into account. For example, the algorithm ensures that staff members who prefer early shifts are assigned early shift roles, reflecting their preferences to the greatest extent possible.
[1941] Step 6:
[1942] The server converts the calculated shift assignment results into JSON format. The generated shift assignment results include each staff member's name and assigned shift time.
[1943] Step 7:
[1944] The server sends the shift assignment result, converted to JSON format, to the terminal as an HTTP response. Once the transmission process is complete, the server checks the status of the response.
[1945] Step 8:
[1946] The terminal analyzes the response data received from the server. This analysis includes reading the received JSON data and extracting the shift information for each staff member.
[1947] Step 9:
[1948] The terminal displays the optimal shift assignment results to the user. The user can check each staff member's shift schedule on the screen. For example, staff member A is shown as "early shift cashier," and staff member B is shown as "late shift inventory manager."
[1949] Step 10:
[1950] The user activates a dedicated inventory terminal and scans the product identification code with the camera on their smart device. The scanned data is entered into the terminal.
[1951] Step 11:
[1952] The terminal converts the scanned product identification code data into JSON format. This converted JSON data includes the barcode information of the scanned product.
[1953] Step 12:
[1954] The terminal sends the converted JSON data to the server as an HTTP POST request. The sending process serves to pass product information to the server.
[1955] Step 13:
[1956] The server analyzes the received product identification code data and compares it with the database. A process is performed to verify that the received data matches the information in the database.
[1957] Step 14:
[1958] The server extracts the relevant product information. Detailed information such as product name, price, and stock quantity is retrieved from the database.
[1959] Step 15:
[1960] The server converts the extracted product information into JSON format. The converted data includes detailed information such as product name, price, and stock quantity.
[1961] Step 16:
[1962] The server sends product information to the terminal as an HTTP response in JSON format.
[1963] Step 17:
[1964] The terminal analyzes the received product information. This analysis includes reading product name, price, and inventory quantity, and preparing them for display on the screen.
[1965] Step 18:
[1966] The device displays product information to the user. For example, information such as "Product A: Price 1000 yen, Stock Quantity 50" is displayed on the screen. This allows the user to quickly check product information.
[1967] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1968] Shift scheduling automation system (equipped with an emotion engine)
[1969] The present invention's automated shift scheduling system achieves more appropriate shift assignments by combining conditions such as each user's role, skills, experience, and shift preferences with an emotion engine that recognizes the user's emotions.
[1970] Description of the Embodiment
[1971] First, the user accesses the shift creation screen and enters information for each staff member (name, role, skills, experience, shift preferences, etc.). As the user enters the information, the emotion engine analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[1972] The terminal converts the user's input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and executes a shift scheduling algorithm. This algorithm calculates the optimal shift assignment considering each staff member's conditions and recognized sentiment data. The calculation result is converted into JSON format and sent to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift assignment result to the user.
[1973] Specific example
[1974] For example, a user might input "Person A should be the cashier, and Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts" and "Person B is good at late shifts." As the user inputs the information, the emotion engine recognizes their emotions, such as "happy" or "anxious," and sends this information to the server. The server then uses an algorithm based on the received data to calculate a shift schedule, assigning Person A to the early shift as the cashier and Person B to the late shift as the inventory manager. The calculation also takes the user's emotions into account; for example, if the user is feeling anxious, the system prioritizes assigning more experienced staff. This results in a more reliable shift schedule that improves user satisfaction.
[1975] Inventory management efficiency system (equipped with an emotional engine)
[1976] The inventory efficiency system of the present invention is a system that scans product barcodes and automatically acquires and displays product information through matching with a database, and further reduces the workload of the user by combining it with an emotion engine.
[1977] Description of the Embodiment
[1978] First, the user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine recognizes the user's emotions from their voice and facial expressions and acquires this as data. The terminal converts the scanned barcode data and emotion data into JSON format and sends it to the server via an HTTP POST request. The server analyzes the received data, compares it with the database, and extracts the corresponding product information. The extracted product information and emotion data are converted into JSON format and sent back to the terminal as an HTTP response.
[1979] Finally, the device analyzes product information and emotional data and displays it to the user. Based on the emotional data, if the user is tired, for example, it can display additional information such as work progress updates or break suggestions.
[1980] Specific example
[1981] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotions, such as "tired" or "stressed," to the server. The server compares this with the database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotion data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[1982] Based on the above, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[1983] The following describes the processing flow.
[1984] Shift scheduling automation system (equipped with an emotion engine)
[1985] Program processing flow
[1986] Step 1:
[1987] The user accesses the shift creation screen and enters information about each staff member (name, role, skills, experience, shift preferences, etc.).
[1988] Step 2:
[1989] When input is received, the device activates an emotion engine to recognize emotions from the user's voice and facial expressions. For example, it analyzes facial expressions from the camera and voice tone from the microphone.
[1990] Step 3:
[1991] The device converts user input data and recognized sentiment data into JSON format.
[1992] Step 4:
[1993] The terminal sends the converted JSON data to the server using an HTTP POST request.
[1994] Step 5:
[1995] The server receives an HTTP request and parses the JSON data. The parsed data includes the shift conditions and sentiment data entered by the user.
[1996] Step 6:
[1997] The server executes a shift scheduling algorithm. The algorithm calculates the optimal shift assignments based on each staff member's characteristics (role, skills, experience, shift preferences) and recognized emotional data.
[1998] Step 7:
[1999] The server converts the calculation results into JSON format.
[2000] Step 8:
[2001] The server sends the converted JSON data to the terminal as an HTTP response.
[2002] Step 9:
[2003] The terminal receives an HTTP response from the server and analyzes shift data and sentiment data.
[2004] Step 10:
[2005] The terminal displays the analysis results to the user. The display includes the optimal shift assignment results and emotion-based advice for the user (e.g., "Your stress level is high, so we've adjusted your shifts").
[2006] Inventory management efficiency system (equipped with an emotional engine)
[2007] Program processing flow
[2008] Step 1:
[2009] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader.
[2010] Step 2:
[2011] During scanning, the device activates its emotion engine and recognizes the user's emotions from their voice and facial expressions.
[2012] Step 3:
[2013] The device converts the scanned barcode data and recognized emotion data into JSON format.
[2014] Step 4:
[2015] The terminal sends the converted data to the server using an HTTP POST request.
[2016] Step 5:
[2017] The server receives an HTTP request and analyzes the barcode data and sentiment data.
[2018] Step 6:
[2019] The server queries the database to retrieve the relevant product information.
[2020] Step 7:
[2021] The server converts product information retrieved from the database into JSON format. It also adds sentiment data to generate a response.
[2022] Step 8:
[2023] The server sends the converted data to the terminal as an HTTP response.
[2024] Step 9:
[2025] The terminal receives a response from the server and analyzes product information and sentiment data.
[2026] Step 10:
[2027] The device displays the analysis results to the user. The displayed content includes product information (e.g., "Product A: Price 1000 yen, Stock Quantity 50") and emotion-based advice (e.g., "You appear fatigued, so we recommend you take a short break").
[2028] As described above, by combining the emotion engine, it becomes possible to achieve optimal shift scheduling and increased efficiency in inventory management based on the user's state.
[2029] (Example 2)
[2030] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[2031] Traditional shift scheduling and inventory systems consider each user's skills, experience, and shift preferences, but they fail to consider user emotions, resulting in lower satisfaction and reduced work efficiency. Furthermore, the lack of shift scheduling and product information tailored to user feelings prevents improved operational efficiency and reduced user stress.
[2032] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[2033] In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, shift preferences, and emotional data; means for converting the input condition data and emotional data into JSON format and sending it to the server; means for analyzing the received condition data and emotional data and executing a shift creation algorithm; means for generating the calculated shift assignment results and sending them to a terminal; and means for displaying them on the terminal. This enables optimal shift assignment and work management that takes into account the user's emotions.
[2034] A "user" refers to an individual or business person who operates the system and provides input data and sentiment data.
[2035] "Role" refers to the specific tasks and duties that each user is responsible for.
[2036] "Skills" refer to the abilities and techniques that each user possesses to perform specific tasks.
[2037] "Experience" refers to the history and track record of how much each user has performed on related tasks in the past.
[2038] "Shift preferences" refer to each user's preferences regarding the hours and type of work they wish to do.
[2039] "Emotional data" refers to data that indicates the user's emotional state at the time of input (for example, joy, anger, sadness, surprise, etc.).
[2040] "JSON format" refers to the JavaScript Object Notation format used to structure and represent data.
[2041] A "server" refers to a computer system that analyzes received data and executes shift scheduling algorithms and data matching.
[2042] An "algorithm" refers to a set of procedures or computational methods for solving a specific problem.
[2043] "Barcode data" refers to identification information obtained from the barcode of a product.
[2044] A "database" refers to a digital system used to manage and store product information, user information, and other data.
[2045] "Product information" refers to detailed information about the product, such as its name, price, and stock level.
[2046] A "terminal" refers to a device operated by a user, which has functions for input and display.
[2047] This invention is a system that streamlines shift scheduling and inventory management by considering each user's role, skills, experience, shift preferences, and emotional data. Specifically, it improves user satisfaction and work efficiency by combining an emotional engine. The following describes a specific form for implementing this system.
[2048] Shift scheduling automation system (equipped with an emotion engine)
[2049] Users access the shift creation screen and enter information for each staff member (name, role, skills, experience, shift preferences, etc.). As users input this information, an emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes their voice or text to recognize their emotions. Specifically, the emotion engine analyzes emotions such as joy, anger, sadness, and surprise in real time and generates emotion data based on this analysis.
[2050] The terminal converts user input data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The receiving server parses the data and calculates the optimal shift assignments using a Python-based algorithm (such as Pandas or NumPy libraries). This algorithm calculates the optimal shift assignments considering each staff member's conditions and perceived sentiment data.
[2051] The server converts the calculation results into JSON format and sends them to the terminal as an HTTP response. Finally, the terminal parses the response data and displays the optimal shift placement result to the user.
[2052] Specific example
[2053] For example, a user might input "Tanaka should be the cashier, and Kimura should be in charge of inventory," and set conditions such as "good at early shifts" and "good at late shifts" for each. As the input is processed, the emotion engine recognizes emotions such as "Tanaka seems happy" and "Kimura seems anxious," and sends this information to the server. The server then executes an algorithm based on the received data to calculate a shift assignment, assigning Tanaka to the early shift cashier and Kimura to the late shift inventory. The calculation also takes the user's emotions into account; for example, if Kimura is feeling anxious, the system prioritizes assigning a more experienced staff member.
[2054] Inventory management efficiency system (equipped with an emotional engine)
[2055] The user activates a dedicated inventory terminal and scans the product barcode with a barcode reader. During scanning, an emotion engine (e.g., Affectiva or Google Cloud Natural Language API) recognizes the user's emotions from their voice and facial expressions and retrieves this data.
[2056] The terminal converts scanned barcode data and sentiment data into JSON format and sends it to the server via an HTTP POST request. The server parses the received data and compares it with a database such as MySQL or MongoDB to extract the corresponding product information. The extracted product information and sentiment data are converted back into JSON format and sent to the terminal as an HTTP response.
[2057] Finally, based on product information and emotional data, the device displays additional information, such as work progress updates and break suggestions, if the user is tired.
[2058] Specific example
[2059] For example, when a user scans the barcode of product A, the terminal sends the barcode data along with the user's emotional data, such as "tired" or "stressed," to the server. The server compares this data with a database, extracts detailed information about product A (name, price, stock quantity, etc.), and sends it back to the terminal along with the emotional data. The terminal displays the product information as "Product A: Price 1000 yen, Stock quantity 50 units," and also adds a message such as "You appear tired, so we recommend you take a short break," thereby reducing the user's workload.
[2060] Thus, the present invention provides a system and method for streamlining shift scheduling and inventory management operations while taking user emotions into consideration. Other embodiments are conceivable, but the basic configuration and operation of the present invention are as described above.
[2061] The flow of the specific processing in Example 2 will be explained using Figure 13.
[2062] Shift scheduling automation system (equipped with an emotion engine)
[2063] Program processing flow
[2064] Step 1:
[2065] The user accesses the shift creation screen.
[2066] Input data: None
[2067] Output data: Display of the shift creation screen
[2068] Specific actions:
[2069] The user launches a web browser or dedicated application and logs in to the shift creation screen. The shift creation screen is displayed.
[2070] Step 2:
[2071] The user enters the staff information.
[2072] Input data: Staff name, role, skills, experience, shift preferences
[2073] Output data: Entered staff information
[2074] Specific actions:
[2075] The user enters each staff member's name, role, skills, experience, and shift preferences into a form on the shift creation screen. For example, "Mr. Tanaka is in charge of the cash register and prefers the early shift."
[2076] Step 3:
[2077] The emotion engine recognizes the user's emotions.
[2078] Input data: User's voice or text input
[2079] Output data: Emotional data (joy, anger, sadness, surprise, etc.)
[2080] Specific actions:
[2081] An emotion engine (e.g., IBM Watson Tone Analyzer or Microsoft Azure Emotion API) analyzes the user's voice and text in real time and generates emotion data. For example, it might recognize that "Mr. Tanaka sounds happy when he's typing."
[2082] Step 4:
[2083] The device converts the data to JSON.
[2084] Input data: Staff information and emotional data
[2085] Output data: Data in JSON format
[2086] Specific actions:
[2087] The terminal combines the entered staff information and recognized emotion data and converts them into JSON format. The generated JSON data will be in the following format.
[2088] json
[2089] {
[2090] "staff_info": {
[2091] "tanaka": { "role": "register", "shift": "morning"},
[2092] "kimura": { "role": "inventory", "shift": "evening"}
[2093] },
[2094] "emotion_data": {
[2095] "tanaka": "happy",
[2096] "kimura": "nervous"
[2097] }
[2098] }
[2099] Step 5:
[2100] The device sends data to the server.
[2101] Input data: Staff information and sentiment data in JSON format.
[2102] Output data: Result of transmission to the server (success or failure status)
[2103] Specific actions:
[2104] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / shift".
[2105] Step 6:
[2106] The server analyzes the data and executes the shift scheduling algorithm.
[2107] Input data: Received JSON data
[2108] Output data: Shift assignment results
[2109] Specific actions:
[2110] The server parses the received JSON data and calculates the optimal shift assignments using Python-based algorithms (such as Pandas and NumPy libraries). The optimal assignments are determined by considering each staff member's role, skills, experience, shift preferences, and sentiment data.
[2111] Step 7:
[2112] The server converts the calculation result into JSON.
[2113] Input data: Shift assignment results
[2114] Output data: Shifted layout result in JSON format
[2115] Specific actions:
[2116] The server converts the calculated shift assignment results into JSON format. The generated JSON data will be in a format similar to the following:
[2117] json
[2118] {
[2119] "shift_assignment": {
[2120] "tanaka": { "role": "register", "shift": "morning"},
[2121] "kimura": { "role": "inventory", "shift": "evening"}
[2122] }
[2123] }
[2124] Step 8:
[2125] The server sends the data back to the terminal.
[2126] Input data: Shifted layout result in JSON format
[2127] Output data: Transmission result to the terminal (success or failure status)
[2128] Specific actions:
[2129] The server sends the generated JSON data to the terminal as an HTTP response.
[2130] Step 9:
[2131] The device displays the results to the user.
[2132] Input data: Shifted layout result in JSON format
[2133] Output data: Shift assignment results displayed on the user screen
[2134] Specific actions:
[2135] The terminal analyzes the returned JSON data and displays the shift assignment results on the user screen. For example, it might display, "Tanaka is on the early shift as the cashier, and Kimura is on the late shift as the inventory manager."
[2136] Inventory management efficiency system (equipped with an emotional engine)
[2137] Program processing flow
[2138] Step 1:
[2139] The user starts up the inventory terminal.
[2140] Input data: None
[2141] Output data: Startup of inventory terminal
[2142] Specific actions:
[2143] The user turns on the device and launches the dedicated application. The inventory management application is then launched.
[2144] Step 2:
[2145] The user scans the product barcode.
[2146] Input data: Product barcode
[2147] Output data: Scanned barcode data
[2148] Specific actions:
[2149] The user uses a barcode reader to scan the product's barcode. For example, the barcode for product A is scanned.
[2150] Step 3:
[2151] The emotion engine recognizes the user's emotions.
[2152] Input data: User's voice and facial expressions
[2153] Output data: Emotional data (e.g., fatigue, stress)
[2154] Specific actions:
[2155] An emotion engine (e.g., Affectiva or Google Cloud Natural Language API) analyzes the user's voice and facial expressions in real time and generates emotion data. For example, it might recognize that "the user is tired."
[2156] Step 4:
[2157] The device converts the data to JSON.
[2158] Input data: barcode data and emotion data
[2159] Output data: Data in JSON format
[2160] Specific actions:
[2161] The terminal combines scanned barcode data and sentiment data and converts them into JSON format. The generated JSON data will look like this:
[2162] json
[2163] {
[2164] "barcode_data": "1234567890123",
[2165] "emotion_data": "stressed"
[2166] }
[2167] Step 5:
[2168] The device sends data to the server.
[2169] Input data: Barcode data and sentiment data in JSON format.
[2170] Output data: Result of transmission to the server (success or failure status)
[2171] Specific actions:
[2172] The device sends JSON data to the server using an HTTP POST request. The destination is, for example, "https: / / example.com / api / inventory".
[2173] Step 6:
[2174] The server analyzes the data and extracts product information.
[2175] Input data: Received JSON data
[2176] Output data: Relevant product information
[2177] Specific actions:
[2178] The server parses the received JSON data and compares it with databases such as MySQL or MongoDB to extract the corresponding product information. Product names, prices, inventory information, etc., are retrieved from the database.
[2179] Step 7:
[2180] The server converts the extracted results into JSON.
[2181] Input data: Product information
[2182] Output data: Data in JSON format
[2183] Specific actions:
[2184] The server converts the extracted product information into JSON format. The generated JSON data will be in the following format:
[2185] json
[2186] {
[2187] "product_info": {
[2188] "name": "Product A",
[2189] "price": 1000,
[2190] "stock": 50
[2191] }
[2192] }
[2193] Step 8:
[2194] The server sends the data back to the terminal.
[2195] Input data: Product information in JSON format
[2196] Output data: Transmission result to the terminal (success or failure status)
[2197] Specific actions:
[2198] The server sends the generated JSON data to the terminal as an HTTP response.
[2199] Step 9:
[2200] The device displays the results to the user.
[2201] Input data: Product information in JSON format
[2202] Output data: Product information and emotion-based messages displayed on the user screen.
[2203] Specific actions:
[2204] The device analyzes the returned JSON data and displays product information and sentiment-based messages to the user. For example, it might display: "Product A: Price 1000 yen, Quantity in stock 50. You appear tired, so we recommend you take a short break."
[2205] (Application Example 2)
[2206] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[2207] Conventional shift scheduling and inventory management systems fail to consider staff emotions and workload, making it difficult to improve operational efficiency and staff satisfaction. Furthermore, while considering staff emotions is necessary for more effective shift scheduling and inventory management, no technology existed to achieve this. There is a growing need for systems that can reduce stress and improve operational efficiency.
[2208] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for inputting conditions such as each user's role, skills, experience, and shift preferences; means for recognizing emotions at the time of input; means for transmitting the input condition data and emotion data to the server in JSON format; means for executing an algorithm that calculates the optimal shift assignment based on the received condition data and emotion data; means for generating the calculated shift assignment result and transmitting it to the terminal; means for scanning product barcodes; means for recognizing emotions at the time of scanning; means for transmitting the scanned barcode data and emotion data to the server in JSON format; means for comparing the received barcode data and emotion data with a database and extracting the corresponding product information; and means for generating additional information based on the extracted product information and emotion data, transmitting it to the terminal, and displaying it. This makes it possible to create more optimal shift assignments and improve the efficiency of inventory work by taking into account the conditions and emotion data of each staff member.
[2209] "Each user's role, skills, experience, shift preferences, and other conditions" refers to data that includes each staff member's job description, abilities, level, past performance, and desired working hours, which are considered when creating shifts and assigning tasks.
[2210] "Means of recognizing emotions" refers to technology that analyzes emotional states such as joy, anger, sadness, and surprise from the voice and text of staff members.
[2211] "Method of sending to the server in JSON format" refers to a method of converting each input data and the recognized sentiment data into JavaScript Object Notation (JSON) format and sending it to the server as an HTTP POST request.
[2212] An "algorithm for calculating the optimal shift arrangement" is a computational method for generating the most efficient and satisfying shift schedule based on staff condition data and emotional data.
[2213] "Means of scanning barcodes" refers to equipment or technology used to read the barcodes on products.
[2214] "Means for matching with a database and extracting relevant product information" refers to a method of matching scanned barcode data with the database of a central information system and obtaining corresponding product details.
[2215] "Means for generating, transmitting, and displaying additional information to a terminal" refers to a technology that creates new supplementary information, such as break suggestions, based on extracted product information and sentiment data, and transmits and displays it on the user's terminal.
[2216] "Taking into account each staff member's conditions and emotional data" means that when determining shift schedules and work assignments, the current emotional state of each staff member should be taken into account, in addition to their job skills and preferences.
[2217] Modes for carrying out the invention
[2218] The system of the present invention aims to improve the efficiency of staff shift scheduling and inventory management, and includes the following components.
[2219] Shift scheduling automation system
[2220] First, staff members access the shift creation screen and enter their information (role, skills, experience, shift preferences, etc.). During input, an emotion engine analyzes the voice and text to recognize emotions. This system uses emotion recognition software such as Google Cloud Natural Language and EmotionAPI.
[2221] The above data is converted to JSON format and sent to the server via an HTTP POST request. On the server side, this data is analyzed and the shift scheduling algorithm is executed. This algorithm calculates the optimal shift assignments based on staff conditions and emotional data. The result of this calculation is converted to JSON format and sent to the terminal as an HTTP response. The terminal displays the shift assignment results to the user. For example, if staff members input "Person A should be in charge of the cash register, Person B should be in charge of inventory," and set conditions such as "Person A is good at early shifts, Person B is good at late shifts," the system will also consider emotional data to determine the optimal assignments.
[2222] Inventory efficiency system
[2223] Next, a dedicated inventory terminal is used. When a user scans an item's barcode with a barcode reader, the emotion engine analyzes the user's voice and facial expressions to obtain emotion data. Here again, Google Cloud Natural Language or EmotionAPI can be used for the emotion engine.
[2224] The acquired barcode data and sentiment data are converted to JSON format and sent to the server via an HTTP POST request. The server parses the data, compares it with the database, and extracts the corresponding product information. The extracted product information and sentiment data are converted to JSON format and sent to the terminal as an HTTP response. The terminal receives this and displays it to the user. For example, if a user scans the barcode of product A and sentiment data such as "tired" and "stressed" is acquired, the system will display "Product A: Price 1000 yen, Stock Quantity 50" and a message such as "We recommend you take a break."
[2225] Examples of specific cases and prompt statements
[2226] As a concrete example, the shift scheduling system uses the following prompt:
[2227] "Create a shift schedule for the store staff and propose the optimal assignments, taking into account staff emotional data. For example, if staff member A enters 'I want an early shift,' assign him to the early shift when he's happy, and change him to the late shift when he's tired."
[2228] This enables more efficient shift scheduling and inventory management, taking into account the individual needs and emotional data of each staff member.
[2229] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[2230] Step 1:
[2231] The user accesses the shift scheduling screen or the inventory terminal.
[2232] The user accesses the shift creation screen and enters information for each staff member (e.g., role, skills, experience, shift preferences, etc.). In the case of inventory work, the user activates a dedicated inventory terminal and scans the barcodes of the products. At this stage, an emotion recognition engine (e.g., Google Cloud Natural Language or EmotionAPI) recognizes emotions from the voice or text.
[2233] Input: Staff information, shift preferences, voice / text (for emotion recognition)
[2234] Output: Emotional data, staff information data
[2235] Step 2:
[2236] The terminal converts the entered conditional data and sentiment data into JSON format.
[2237] The terminal retrieves entered staff information, shift preferences, and recognized emotion data, and converts this data into JSON format.
[2238] Input: Staff information data, emotion data
[2239] Output: Data in JSON format
[2240] Step 3:
[2241] Send JSON data to the server via an HTTP POST request.
[2242] The terminal sends the converted JSON data to the server via an HTTP POST request.
[2243] Input: Data in JSON format
[2244] Output: Data sent to the server
[2245] Step 4:
[2246] The server analyzes the received data and executes either a shift scheduling algorithm or a product information matching algorithm.
[2247] For shift scheduling, the server calculates the optimal shift arrangement based on received conditional and sentiment data. For inventory management, the server compares received barcode and sentiment data with the database and extracts the relevant product information.
[2248] Input: Data sent to the server
[2249] Output: Shift assignment result data or product information data
[2250] Step 5:
[2251] The server converts the calculated and extracted data into JSON format and sends it to the terminal as an HTTP response.
[2252] The server converts the calculated shift assignment results or extracted product information into JSON format and sends it to the terminal as an HTTP response.
[2253] Input: Shift assignment result data or product information data
[2254] Output: Response data in JSON format
[2255] Step 6:
[2256] The terminal analyzes the response data and displays it to the user.
[2257] The terminal parses the received JSON response data and displays shift assignment results or product information to the user. Based on sentiment data, additional ...
Claims
1. A means to input each user's role, skills, experience, shift preferences, and other conditions, A means for sending the input condition data to the server, A means for executing an algorithm that calculates the optimal shift arrangement based on the received condition data, A system including means for generating calculated shift assignment results and transmitting them to a terminal.
2. A means of scanning the product's barcode, A means of sending scanned barcode data to a server, A means for comparing received barcode data with a database and extracting corresponding product information, The system according to claim 1, comprising means for transmitting extracted product information to a terminal and displaying it.
3. The system according to claim 1, which includes means for optimally assigning the aforementioned shift assignment results to early and late shifts, taking into account the conditions of each staff member.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A