System
A system automates scheduling, venue selection, team division, and payment calculation for social gatherings, addressing the inefficiencies of manual organization and enhancing coordination efficiency.
Patent Information
- Application Number
- JP2024116411
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-19
- Publication Date
- 2026-01-29
AI Technical Summary
Organizing social gatherings such as year-end parties or welcome parties involves time-consuming and labor-intensive tasks like scheduling, venue selection, team division, and fee settlement, especially when there are many participants, leading to increased errors and inefficiencies.
A system that includes a user-friendly interface for scheduling, restaurant selection, team division, and payment calculation, automating these processes to reduce the burden on organizers.
The system efficiently manages social gatherings by optimizing scheduling, selecting suitable venues, dividing participants into teams, and calculating fair payments, thereby reducing the workload and improving coordination efficiency.
Smart Images

Figure 2026014937000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the 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] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Traditionally, when hosting a social gathering such as a year-end party or welcome party, organizers had to manually perform a wide range of tasks, such as scheduling, selecting a venue, dividing participants into teams, and settling membership fees, which was time-consuming and labor-intensive. Furthermore, when there were many participants, arranging the optimal date and selecting a venue became complicated, increasing the likelihood of errors. Furthermore, it was difficult to divide participants into teams fairly and accurately settle membership fees. A system that could centrally solve these issues was needed. [Means for solving the problem]
[0005] The present invention solves the above problems by providing the following means: A system displays an input screen for adjusting a user's schedule, acquires and analyzes the schedule information entered by the user, and proposes an optimal schedule. A system is provided that includes a means for the user to confirm and save the proposed schedule. A system is also provided that displays a screen for the user to input desired conditions, acquires appropriate restaurant information based on the conditions, and presents the information to the user. A system is also provided that displays a screen for inputting a participant list, divides the participants into teams randomly or according to specified conditions based on the input participant information, and presents the teams to the user. Finally, a system is provided that displays a screen for inputting the total cost and each participant's payment percentage, automatically calculates each participant's payment based on the total cost and payment percentage, and presents the calculation results to the user. These features reduce the burden on organizers and enable efficient management of social gatherings.
[0006] "User" means any person or entity that uses the System.
[0007] "Schedule coordination" refers to the process of checking and comparing the schedules of multiple participants and determining the optimal date.
[0008] "Input screen" refers to the GUI (graphical user interface) that a user uses to input information into a system.
[0009] "Schedule information" refers to data regarding the schedules of participants entered by the user.
[0010] "Analysis" refers to the process of deriving optimal results from input data using statistical or algorithmic methods.
[0011] "Schedule proposal" refers to the act of presenting the optimal schedule to the user based on the analysis results.
[0012] "Confirmation" refers to the act of the user finally approving the proposed schedule and conditions and registering them in the system.
[0013] "Conditions" refer to specific elements or restrictions desired by the user (e.g., area, budget, cuisine genre).
[0014] "Store information" refers to data about restaurants searched for based on specific criteria (e.g., name, address, reviews).
[0015] A "participant list" refers to a list that collects information such as the names of people who will be attending an event such as a social gathering.
[0016] "Teaming" refers to the act of dividing participants into groups based on specific criteria (e.g., random, by division).
[0017] "Total Cost" refers to the total cost of the entire Event.
[0018] "Payment ratio" refers to data showing the percentage of total costs that each participant bears.
[0019] "Automatic calculation" refers to the process in which the system automatically performs the necessary calculations based on the data entered.
[0020] "Calculation results" refers to numerical data obtained by automatic calculation.
[0021] "System" refers to the combination of software and hardware that comprehensively realizes these means and processes. [Brief explanation of the drawings]
[0022] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0023] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0024] First, the terms used in the following description will be explained.
[0025] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0026] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0027] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0028] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0029] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0030] [First embodiment]
[0031] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0032] 1, a 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.
[0033] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0034] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0035] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the 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.
[0036] 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 of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0037] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0038] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0039] 2, in the data processing device 12, a specific process 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" according to the technology of the present 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 process 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.
[0040] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0041] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0042] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0043] MODE FOR CARRYING OUT THE INVENTION
[0044] The present invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or welcome party. This system is implemented as a web or mobile application and has a user-friendly interface.
[0045] The present invention provides a system including the following steps.
[0046] Schedule adjustment
[0047] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays the schedule entry screen. When the user enters the free dates of the participants, the device sends that information to the server. The server analyzes the acquired schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and when the user confirms the date, the server saves it in the database.
[0048] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the server proposes the most suitable date and displays it to the user. The user confirms and confirms the proposed date, and the most suitable date is decided.
[0049] Choosing a restaurant
[0050] When a user opens the application and selects the "Select a Restaurant" menu, the device displays a search criteria input screen. Once the user enters criteria such as the desired area, budget, and cuisine, the device sends that information to the server. The server then uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[0051] As a concrete example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter that criteria and the server will list restaurants that meet the criteria and display them to the user.
[0052] Team Division
[0053] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. Once the user enters the participant list, the device sends the information to the server. The server assigns teams randomly or based on specified criteria and sends the results to the device.
[0054] As a concrete example, if you want to randomly divide 30 participants into 5 tables, the user can input the participant list, and the server will randomly generate 5 groups and display the results to the user.
[0055] settlement
[0056] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends the information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[0057] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[0058] As described above, the system of the present invention provides a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[0059] The processing flow will be explained below.
[0060] Schedule adjustment process
[0061] Step 1:
[0062] The user accesses the appointment entry screen.
[0063] The user opens the application and selects the "Schedule" menu.
[0064] Step 2:
[0065] The server retrieves and displays existing schedule data.
[0066] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[0067] Step 3:
[0068] The user inputs the available dates for each participant.
[0069] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[0070] Step 4:
[0071] The server analyzes everyone's available dates and suggests the best schedule.
[0072] The server analyzes the free schedule data of all participants, calculates the date when the most participants are free, and sends the calculation result to the terminal.
[0073] Step 5:
[0074] The user confirms and confirms the proposed dates.
[0075] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[0076] Shop selection process
[0077] Step 1:
[0078] The user accesses the condition input screen.
[0079] The user opens the application and selects the "Store Selection" menu.
[0080] Step 2:
[0081] The server displays a condition input screen.
[0082] The server sends the condition input screen to the terminal, which displays the condition input screen.
[0083] Step 3:
[0084] The user inputs the desired area, budget, cuisine, etc.
[0085] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[0086] Step 4:
[0087] The server retrieves and filters store information from a database or external API.
[0088] The server calls a database or external API to retrieve store information that matches the criteria, filters the retrieved store information, and generates a list of the most suitable stores.
[0089] Step 5:
[0090] Display the best store for the user.
[0091] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[0092] Team assignment process
[0093] Step 1:
[0094] The user accesses the participant list input screen.
[0095] The user opens the application and selects the "Teaming" menu.
[0096] Step 2:
[0097] The server displays a participant list input screen.
[0098] The server sends a participant list input screen to the terminal, which displays the input screen.
[0099] Step 3:
[0100] The user enters the participant's name.
[0101] The user inputs the participant's name. The device sends the input name to the server.
[0102] Step 4:
[0103] The server will automatically generate teams randomly or based on specified conditions.
[0104] The server runs an algorithm to divide the input participant list into teams randomly or based on specified criteria (e.g., by division), and sends the generated team information to the terminal.
[0105] Step 5:
[0106] Display team division results to the user.
[0107] The terminal displays the team division results to the user.
[0108] Processing of settlement
[0109] Step 1:
[0110] The user accesses the payment entry screen.
[0111] The user opens the application and selects the "Checkout" menu.
[0112] Step 2:
[0113] The server displays the payment entry screen.
[0114] The server sends the payment input screen to the terminal, which displays the input screen.
[0115] Step 3:
[0116] The user enters the total cost and each participant's share of the payment.
[0117] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[0118] Step 4:
[0119] The server automatically calculates the payment amount for each participant.
[0120] The server calculates the payment amount for each participant based on the total cost and the payment percentage, and sends the calculation result to the terminal.
[0121] Step 5:
[0122] Display billing information for each participant to the user.
[0123] The terminal displays each participant's billing information to the user.
[0124] The above is a specific flow of processing based on the present invention.
[0125] Example 1
[0126] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0127] In the past, when hosting a social gathering, the procedures for scheduling, choosing a restaurant, dividing into teams, and settling the bill were all often done manually, placing a heavy burden on the organizer. Furthermore, when there were a large number of participants or diverse requests, coordination could easily become complicated. Furthermore, there was a lack of an efficient system to smoothly carry out each procedure.
[0128] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0129] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for the user to confirm and save the proposed schedule, means for displaying a screen for the user to input desired conditions, means for acquiring appropriate information based on the conditions, means for presenting the acquired information to the user, means for displaying a screen for inputting a participant list, means for grouping participants randomly or according to specified conditions based on the entered participant information, means for presenting the group information to the user, means for displaying a screen for inputting a total cost and a payment rate, means for calculating each individual's share of the cost based on the total cost and the payment rate, and means for presenting the calculation result to the user. This allows each procedure for hosting a social gathering to be performed efficiently on a single platform, reducing the burden on organizers and dramatically improving the efficiency of coordination work.
[0130] A "user" is someone who uses this system to make arrangements for a social gathering.
[0131] "Schedule adjustment" is a process in which the user inputs the available dates of the participants and the server proposes the most suitable dates.
[0132] "Condition input" is the process in which the user inputs the desired conditions (area, budget, cuisine genre, etc.).
[0133] The "participant list" is a list of names and information of people who will be attending the social gathering.
[0134] "Grouping" is the process of dividing participants into multiple groups based on specified conditions or randomly, based on the input participant list.
[0135] "Total cost" is the total cost of the entire social gathering.
[0136] "Payment Percentage" means the percentage of the Total Costs payable by each Participant.
[0137] "Cost" refers to the specific payment amount for each participant calculated based on the total cost percentage.
[0138] A "server" is a central processing unit that receives information input by a user and performs analysis, information acquisition, calculation processing, etc.
[0139] A "terminal" is a device operated by a user that mainly performs data communication with a server.
[0140] A "database" is a data storage device that allows a server to save and manage various information.
[0141] An "external API" is a program interface for obtaining necessary information from external services.
[0142] The present invention provides a system for streamlining the procedures required when a user holds a social gathering such as a year-end party, a welcome party, etc. This system is implemented as a web application or a mobile application and has a user-friendly interface.
[0143] Schedule adjustment
[0144] The user opens the application and selects the "Schedule Adjustment" menu. The device then displays the schedule entry screen. The user enters the free dates of the participants, and the device sends this information to the server. The server analyzes the received schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in the database.
[0145] For example, when a user wants to arrange a date for a year-end party, they input the available dates for all participants through the application. The server then calculates the optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[0146] Choosing a restaurant
[0147] The user opens the application and selects the "Select a Restaurant" menu. The device displays a screen for entering desired criteria (area, budget, cuisine, etc.). Once the user enters the criteria, the device sends the information to the server. The server uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[0148] As a specific example, if a user is looking for an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter their search criteria and the server will list restaurants that meet the criteria and display them on the terminal.
[0149] Team Division
[0150] The user opens the application and selects the "Team Assignment" menu. The device displays a participant list entry screen. When the user enters the participant list, the device sends the information to the server. The server assigns the participants to teams randomly or based on specified conditions, and sends the results to the device.
[0151] As a concrete example, if you want to randomly divide 30 participants into five tables, when the user inputs the participant list, the server will randomly generate five groups and display the results on the terminal.
[0152] settlement
[0153] The user opens the application and selects the "Payment" menu. The terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends that information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[0154] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[0155] Prompt Sentence Examples
[0156] Here's an example prompt to ask the system to arrange a social gathering:
[0157] "I'd like to coordinate schedules for a social gathering we're holding. Please let me know the best date so that everyone can attend. Next, I'd like to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen. I'd also like to know how to randomly divide the 30 participants into 5 tables. Finally, I'd like to settle the total fee of 15,000 yen fairly among 15 people, so please show me the amount each person will pay."
[0158] As described above, the system of the present invention aims to provide a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[0159] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0160] Step 1:
[0161] The user opens the application and selects the "Schedule" menu.
[0162] Input: User action (select "Schedule Adjustment" menu).
[0163] Output: The schedule entry screen is displayed on the terminal.
[0164] Specific operation: The terminal sends a request to the server to display the schedule input screen, and the server returns the schedule input screen information to the terminal in response to this.
[0165] Step 2:
[0166] The user inputs the available dates of the participants and clicks the "Submit" button.
[0167] Input: Participant's available dates (user input).
[0168] Output: The device sends the input data to the server.
[0169] Specific operation: When the user enters the available dates for each participant on the schedule input screen and clicks the send button, the device sends this information to the server in JSON format.
[0170] Step 3:
[0171] The server analyzes the received schedule information and suggests a schedule that will allow the most people to participate.
[0172] Input: Submitted schedule information (JSON format).
[0173] Output: Calculation result of optimal schedule.
[0174] Specific operation: The server analyzes the received schedule information, compares it with the free days of each participant, and uses an algorithm to calculate the schedule that the maximum number of participants can attend.
[0175] Step 4:
[0176] The server transmits the proposed schedule to the terminal and displays it on the terminal.
[0177] Input: The calculated best dates.
[0178] Output: The proposed itinerary is displayed on the terminal.
[0179] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the results on the screen.
[0180] Step 5:
[0181] The user reviews and confirms the proposed dates.
[0182] Input: User confirms and confirms the proposed schedule.
[0183] Output: The date is confirmed and saved.
[0184] Specific operation: When the user checks the schedule and clicks the confirm button, the terminal notifies the server of this operation, and the server saves the confirmed schedule in the database.
[0185] Step 6:
[0186] The user opens the application and selects the "Store Selection" menu.
[0187] Input: User operation (selecting the "Select a store" menu).
[0188] Output: The condition input screen is displayed on the terminal.
[0189] Specific operation: The terminal sends a request to the server to display a condition input screen, and the server returns the information on the condition input screen to the terminal in response to this.
[0190] Step 7:
[0191] The user enters the desired conditions (area, budget, cuisine, etc.) and clicks the "Submit" button.
[0192] Input: Desired conditions (user input).
[0193] Output: The device sends the input data to the server.
[0194] Specific operation: When the user enters the desired area, budget, and cuisine genre into the condition input screen and clicks the send button, the device sends this information to the server in JSON format.
[0195] Step 8:
[0196] Based on the conditions received by the server, store information is searched for using a database or external API.
[0197] Input: Submitted desired conditions (JSON format).
[0198] Output: Store information that matches the conditions.
[0199] Specific operation: The server calls a database or external API based on the desired conditions, and retrieves and selects store information that matches the conditions.
[0200] Step 9:
[0201] The server transmits the acquired store information to the terminal and presents it on the terminal.
[0202] Input: Store information obtained.
[0203] Output: Candidate store information is displayed on the terminal.
[0204] Specific operation: The server sends the selected store information to the terminal, and the terminal displays the information on the screen.
[0205] Step 10:
[0206] The user opens the application and selects the "Teaming" menu.
[0207] Input: User action (selecting the "Teaming" menu).
[0208] Output: The participant list input screen is displayed on the terminal.
[0209] Specific operation: The terminal sends a request to the server to display the participant list input screen, and the server returns the information of the participant list input screen to the terminal in response to this.
[0210] Step 11:
[0211] The user enters the participant list and clicks the "Submit" button.
[0212] Input: Participant list (user input).
[0213] Output: The device sends the input data to the server.
[0214] Specific operation: When the user enters the participant list and clicks the send button, the terminal sends this information to the server in JSON format.
[0215] Step 12:
[0216] Based on the participant list received by the server, participants are grouped randomly or according to specified conditions.
[0217] Input: The submitted participant list (JSON format).
[0218] Output: Separated group information.
[0219] Specific operation: The server analyzes the participant list using an algorithm, either randomly or based on specified conditions, and groups them.
[0220] Step 13:
[0221] The server transmits the grouping information to the terminal and presents it to the terminal.
[0222] Input: Separated group information.
[0223] Output: The grouping results are displayed on the terminal.
[0224] Specific operation: The server sends the generated grouping information to the terminal, and the terminal displays the information on the screen.
[0225] Step 14:
[0226] The user opens the application and selects the "Checkout" menu.
[0227] Input: User operation (selecting the "Checkout" menu).
[0228] Output: The payment entry screen is displayed on the terminal.
[0229] Specific operation: The terminal sends a request to the server to display the settlement input screen, and the server responds by sending the information on the settlement input screen back to the terminal.
[0230] Step 15:
[0231] The user enters the total cost and payment percentage and clicks the "Submit" button.
[0232] Input: Total cost and payment percentage (user input).
[0233] Output: The device sends the input data to the server.
[0234] Specific operation: When the user enters the total cost and payment percentage and clicks the submit button, the terminal sends this information to the server in JSON format.
[0235] Step 16:
[0236] The server calculates each participant's share based on the total cost and the payment percentage.
[0237] Input: Submitted total cost and payment percentage (JSON format).
[0238] Output: The amount contributed by each participant.
[0239] Specific operation: The server applies a calculation algorithm based on the total cost and payment ratio to calculate the amount each participant will pay.
[0240] Step 17:
[0241] The server sends the payment calculation result to the terminal and presents it to the terminal.
[0242] Input: Calculated contribution amount for each participant.
[0243] Output: The amount of the charge is displayed on the terminal.
[0244] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the information on the screen.
[0245] (Application example 1)
[0246] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0247] When preparing for a social gathering or party, the process of scheduling the date and time, selecting the menu, managing the participants, and settling the costs is complicated, placing a heavy burden on the organizer. Additionally, selecting the optimal menu that reflects each participant's wishes and preferences, and the process of settling the costs, are also complicated. A system that can solve these problems and allow for smooth and efficient preparations is needed.
[0248] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0249] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for having the user confirm and save the proposed schedule, means for creating an event and inviting participants, means for displaying a screen for inputting each participant's desired conditions, means for proposing a delivery menu based on the conditions, means for aggregating each participant's order and arranging delivery, and means for calculating the total cost and settling the account. This allows for efficient preparation for a social gathering or party, reduces the burden on the organizer, and enables the selection of an optimal menu according to each participant's wishes and settlement of the costs.
[0250] "Schedule adjustment" is the process of collecting information on the user's available dates and times, proposing and deciding on the most suitable schedule.
[0251] An "input screen" is a portion of an interface provided for a user to input information.
[0252] "Schedule information" is data on available dates and time slots provided by the user.
[0253] "Analysis" is a method of calculating based on input data to derive optimal dates and conditions.
[0254] "Proposal" is the process of showing the user the optimal schedule and conditions obtained through analysis.
[0255] "Storage" refers to the act of recording the confirmed information in the system's database.
[0256] "Event Creation" is the process by which a user sets up a new gathering or party.
[0257] "Inviting participants" is an act by a user inviting other people to participate in an event.
[0258] "Preferences" refer to specific requirements or preferences provided by a user.
[0259] A "Delivery Menu" is a selection of meals that can be ordered online.
[0260] "Order aggregation" is the process of summarizing the orders of each participant.
[0261] "Delivery arrangements" refers to preparing meals to be delivered to each participant based on the aggregated orders.
[0262] "Total Cost" means the total cost of all Participant's orders.
[0263] "Settlement" is the process of calculating the amount owed by each participant and completing the payment process.
[0264] This invention is a system for efficiently preparing events such as social gatherings and online parties. The system is realized by a user's terminal (smartphone or PC) and a server.
[0265] First, the user opens the application on their device and accesses the event settings screen. Here, an input screen for scheduling is displayed, and the user enters the dates they can attend. The entered schedule information is sent to the server, which analyzes the information and suggests the most suitable dates. The suggested dates are displayed on the device, and the user can confirm and confirm them, after which the server saves the information in a database.
[0266] Next, after the event is confirmed, an invitation function is activated to invite participants. The user registers participants on their terminal and sends invitations. Each participant accesses a screen to enter their preferences and allergy information and enters their desired conditions. This information is also sent to the server, which then suggests an appropriate delivery menu based on the conditions. The suggested menu is presented to the user, who makes the final selection.
[0267] Once the order details are confirmed, the server will compile the orders from each participant and arrange for delivery. It is possible to link with specific delivery services, and the order data will be automatically sent to the delivery service. Once the delivery arrangements are complete, each participant will be notified.
[0268] The final function is to settle the total cost. The user accesses the settlement screen and enters the total cost and each participant's payment percentage. Based on this information, the server calculates the payment amount for each participant and proceeds with the payment process via an electronic payment service. Once payment is complete, a confirmation message is sent to the participant.
[0269] The following key technologies are used as components of this system:
[0270] Hardware: AWS EC2 (virtual server), user devices (smartphones, PCs, etc.)
[0271] Software: React Native (smartphone application), React.js (web application), Node.js (server-side logic)
[0272] APIs and databases: Zomato API (delivery search), Stripe API (electronic payments), Amazon RDS (database)
[0273] As a concrete example, let's look at a scenario where User A is hosting an online year-end party. User A opens the app, schedules an online year-end party from 7:00 PM to 9:00 PM on December 15th, and invites Participants B and C. Participant B enters the desired conditions of "budget under 3,000 yen, gluten-free." The server uses the Zomato API to suggest menu items that meet these conditions, and everyone confirms the delivery menu from "Italian Restaurant X." After the order is confirmed, the data is sent to the delivery service, and delivery arrangements are made. Finally, the Stripe API is used to complete the payment process for each participant.
[0274] An example of a prompt to input to a generative AI model is:
[0275] This article explains the process for the "Food Fest Delivery" app, where users select a delivery menu for an online party and settle the costs. After users enter the date and time and the number of participants, they enter their desired conditions (budget, food preferences, etc.), and the app suggests the most suitable restaurant and menu via the Zomato API. The app then confirms the final order and settles the costs via the Stripe API.
[0276] This allows the functions of the entire system to work together smoothly, enabling efficient preparation for events.
[0277] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0278] Step 1:
[0279] The user opens the application on their device and accesses the event setting screen. The user enters the available dates and details of the event. The input data includes the date (e.g., December 15th, 7:00 PM to 9:00 PM) and the name of the event (e.g., "Online Year-End Party"). This information is sent to the server.
[0280] Step 2:
[0281] The server analyzes the schedule information received and proposes the optimal schedule. An algorithm is used for the analysis to check the availability of each participant. Data processing involves aggregating the schedule data of all participants and identifying the date when the most participants are available. The analysis results are sent to the device and displayed to the user.
[0282] Step 3:
[0283] The user confirms and confirms the proposed schedule. The confirmed schedule is saved on the server and recorded in the database. The saved data includes the event ID, confirmed schedule, and participant information.
[0284] Step 4:
[0285] To invite participants, the user goes to the participant registration screen. The user enters the participant's contact information and sends the invitation. The input data is sent to the server, and an invitation email is automatically generated for the participant. The email sent contains the event details and a link to participate.
[0286] Step 5:
[0287] Participants receive an invitation email and click the link to access the event page. They enter their desired conditions (budget, allergy information, etc.). The entered data is sent to the server, which stores this information in a database.
[0288] Step 6:
[0289] The server proposes an appropriate delivery menu based on the participant's desired conditions. The server calls the Zomato API and searches for menus that match the entered conditions (e.g., budget 3,000 yen, gluten-free). The search results are sent to the terminal and presented to the user.
[0290] Step 7:
[0291] The user and participants review the proposed menu and finalize the order. The finalized order is sent to the server, which aggregates the orders of each participant. The server then arranges delivery based on the aggregated data.
[0292] Step 8:
[0293] The server sends the order details and delivery address information to the delivery service. Once the delivery arrangements are complete, a notification is sent to each participant. The notification includes an order confirmation and an estimated delivery time.
[0294] Step 9:
[0295] The user accesses the total cost settlement screen and enters the payment percentage. The server calculates the payment amount for each participant based on the total cost and processes the payment using the Stripe API. The payment information is sent to the terminal, and a payment confirmation message is displayed to each participant.
[0296] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0297] MODE FOR CARRYING OUT THE INVENTION
[0298] This invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or a welcome party. This system is implemented as a web or mobile application and is equipped with an emotion engine that recognizes the user's emotions. By taking the user's emotional state into account at each stage of the event planning process, the emotion engine can provide more appropriate suggestions and results.
[0299] Schedule adjustment
[0300] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays a schedule entry screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which uses the analysis results to propose the optimal schedule that will most satisfy the participants. The proposed schedule is displayed on the device, and once the user confirms the schedule, the server saves it in a database.
[0301] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the emotion engine analyzes the user's level of tension and stress. Based on this information, the server proposes an optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[0302] Choosing a restaurant
[0303] When a user opens the application and selects the "Select Restaurant" menu, the device displays a screen for entering criteria. The user enters criteria such as desired area, budget, and cuisine, and the emotion engine analyzes the user's current emotional state. The device then sends this information to the server, which uses the analysis results to obtain information on restaurants that will best satisfy the user and presents it on the device.
[0304] For example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they input that criteria, and the emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious). Based on that information, the server creates a list of restaurants that best fit the criteria and displays it to the user.
[0305] Team Division
[0306] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which then assigns the participants to teams randomly or based on specified criteria (e.g., emotional balance) based on the analysis results, and displays the results on the device.
[0307] For example, if you want to randomly divide 30 participants into 5 tables, the user inputs the participant list, and the emotion engine analyzes the user's emotional state. Based on that information, the server generates teams that take into account the emotional balance within the group, and displays the results to the user.
[0308] settlement
[0309] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's current emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays them on the terminal.
[0310] As a concrete example, if the total membership fee is 15,000 yen and 15 people participate, the user inputs the total amount, and the emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied). Based on that information, the server calculates the fair and satisfying payment amount and displays the result to the user.
[0311] As described above, the system of the present invention provides various support functions that take into consideration the user's feelings, and not only reduces the burden on the organizer but also increases user satisfaction.
[0312] The processing flow will be explained below.
[0313] Schedule adjustment process
[0314] Step 1:
[0315] The user accesses the appointment entry screen.
[0316] The user opens the application and selects the "Schedule" menu.
[0317] Step 2:
[0318] The server retrieves and displays existing schedule data.
[0319] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[0320] Step 3:
[0321] The user inputs the available dates for each participant.
[0322] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[0323] Step 4:
[0324] The emotion engine analyzes the user's emotions.
[0325] The terminal sends the user's emotional state along with the entered schedule information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., stress level, relaxation level) to the server.
[0326] Step 5:
[0327] The server analyzes everyone's available dates and suggests the best schedule.
[0328] The server analyzes the free schedule data of all participants and the emotion data obtained from the emotion engine, proposes the most satisfying schedule, and sends the calculation results to the terminal.
[0329] Step 6:
[0330] The user confirms and confirms the proposed dates.
[0331] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[0332] Shop selection process
[0333] Step 1:
[0334] The user accesses the condition input screen.
[0335] The user opens the application and selects the "Store Selection" menu.
[0336] Step 2:
[0337] The server displays a condition input screen.
[0338] The server sends the condition input screen to the terminal, which displays the condition input screen.
[0339] Step 3:
[0340] The user inputs the desired area, budget, cuisine, etc.
[0341] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[0342] Step 4:
[0343] The emotion engine analyzes the user's emotions.
[0344] The terminal sends the user's emotional state along with the input condition information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., expectation, stress level) to the server.
[0345] Step 5:
[0346] The server retrieves and filters store information from a database or external API.
[0347] The server calls a database or external API to retrieve the best store information based on the conditions and sentiment data, then filters the retrieved store information to generate the most suitable store list.
[0348] Step 6:
[0349] Display the best store for the user.
[0350] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[0351] Team assignment process
[0352] Step 1:
[0353] The user accesses the participant list input screen.
[0354] The user opens the application and selects the "Teaming" menu.
[0355] Step 2:
[0356] The server displays a participant list input screen.
[0357] The server sends a participant list input screen to the terminal, which displays the input screen.
[0358] Step 3:
[0359] The user enters the participant's name.
[0360] The user inputs the participant's name. The device sends the input name to the server.
[0361] Step 4:
[0362] The emotion engine analyzes the user's emotions.
[0363] The terminal sends the user's emotional state along with the entered participant information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., excitement level, tension level) to the server.
[0364] Step 5:
[0365] The server will automatically generate teams randomly or based on specified conditions.
[0366] The server runs an algorithm to divide the input participant list into teams randomly or according to specified conditions (e.g., emotional balance) based on emotional data, and sends the generated team information to the terminal.
[0367] Step 6:
[0368] Display team division results to the user.
[0369] The terminal displays the team division results to the user.
[0370] Processing of settlement
[0371] Step 1:
[0372] The user accesses the payment entry screen.
[0373] The user opens the application and selects the "Checkout" menu.
[0374] Step 2:
[0375] The server displays the payment entry screen.
[0376] The server sends the payment input screen to the terminal, which displays the input screen.
[0377] Step 3:
[0378] The user enters the total cost and each participant's share of the payment.
[0379] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[0380] Step 4:
[0381] The emotion engine analyzes the user's emotions.
[0382] The terminal sends the user's emotional state along with the entered payment information to the emotion engine, which analyzes the emotion data and sends the user's current emotional state (e.g., satisfaction level, stress level) to the server.
[0383] Step 5:
[0384] The server automatically calculates the payment amount for each participant based on the total cost, payment rate, and emotional data.
[0385] The server calculates the payment amount for each participant based on the total cost, payment percentage, and emotion data, and sends the calculation results to the terminal.
[0386] Step 6:
[0387] Display billing information for each participant to the user.
[0388] The terminal displays each participant's billing information to the user.
[0389] The above is a specific flow of processing based on the present invention.
[0390] Example 2
[0391] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0392] In the past, planning and hosting social gatherings required manual processes such as scheduling, selecting restaurants, dividing teams, and settling bills, which took a lot of time and effort. It was also difficult to consider the emotions and satisfaction of participants, making it difficult to achieve a result that satisfied all participants. There is a need to solve these issues and realize efficient and satisfying social gatherings.
[0393] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0394] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring schedule information entered by the user and analyzing the user's emotional state using an emotion engine, means for proposing an optimal schedule based on the analysis, and means for having the user confirm and save the proposed schedule. This enables optimal schedule proposals that take the user's emotions into consideration. The server also includes means for displaying a screen for entering user-desired conditions, means for acquiring appropriate store information based on the conditions, and means for analyzing the user's emotional state using an emotion engine and presenting the acquired store information to the user. This enables store selection that takes the user's emotions into consideration. Additionally, the server includes means for displaying a screen for entering a participant list, means for analyzing the user's emotional state using an emotion engine based on the entered participant information, and dividing the team randomly or according to specified conditions, and means for presenting the divided team information to the user. This enables team division that takes the user's emotions into consideration.
[0395] "User" refers to an individual or organization that uses this system to plan and manage social gatherings.
[0396] "Scheduling" refers to the process of coordinating dates that are convenient for all participants and determining the optimal date.
[0397] An "emotion engine" refers to a software or hardware mechanism for analyzing a user's emotional state.
[0398] "Input screen" refers to an interface for the user to input required information.
[0399] "Analysis" refers to the process of calculation and judgment that processes input data and information on the user's emotional state to arrive at the optimal result.
[0400] The "optimal date" refers to the date that will satisfy all participants the most.
[0401] "Store information" refers to store information based on the conditions desired by the user.
[0402] "Teaming" refers to the process of dividing participants into multiple groups based on the input participant list.
[0403] "Database" refers to a digital storage system for managing and storing necessary information.
[0404] This invention is a system for planning and managing social gatherings efficiently, implemented as a web or mobile application. This system analyzes the user's emotions and makes optimal suggestions during each process: scheduling, restaurant selection, team assignment, and payment.
[0405] Schedule adjustment
[0406] When a user opens the application and selects the schedule adjustment menu, the device displays the schedule input screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then proposes the most suitable date based on the analysis results. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in a database.
[0407] Examples:
[0408] When a user wants to arrange the date of a year-end party, the user inputs the free dates of all the participants through the application.
[0409] The emotion engine analyzes the user's level of tension and stress.
[0410] The server uses this information to suggest the best schedule and displays it to the user.
[0411] The optimal schedule is determined by the user confirming and confirming the proposed schedule.
[0412] Choosing a restaurant
[0413] When a user opens the application and selects the restaurant selection menu, the device displays a criteria input screen. The user enters criteria such as desired area, budget, and cuisine type, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then retrieves the most suitable restaurant information based on the analysis results and presents it to the user.
[0414] Examples:
[0415] If a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they enter that criteria.
[0416] The emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious).
[0417] Based on this information, the server creates a list of the best stores that meet the criteria and displays it to the user.
[0418] Team Division
[0419] When a user opens the application and selects the team assignment menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then assigns teams based on the analysis results, either randomly or according to specified criteria, and presents the results to the user.
[0420] Examples:
[0421] If the user wants to randomly divide 30 participants into 5 tables, enter the participant list.
[0422] An emotion engine analyzes the user's emotional state.
[0423] The server generates a team based on this information, taking into account the emotional balance within the group, and displays the results to the user.
[0424] settlement
[0425] When a user opens the application and selects the payment menu, the terminal displays the payment input screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays the results on the terminal.
[0426] Examples:
[0427] If the total membership fee is 15,000 yen and 15 people are participating, the user enters the total amount.
[0428] An emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied).
[0429] The server calculates a fair and satisfactory payment amount based on that information and displays the result to the user.
[0430] In this way, the user uses the application at each stage of the process, the emotion engine analyzes the user's emotional state, and the server makes optimal suggestions, thereby streamlining the planning and management of social gatherings and increasing participant satisfaction.
[0431] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0432] Schedule adjustment
[0433] Step 1:
[0434] The user opens the application on their smartphone or PC and selects the "Schedule Adjustment" menu.
[0435] Input: User-initiated application launch and menu selection
[0436] Output: The schedule entry screen is displayed.
[0437] Step 2:
[0438] The device displays the schedule entry screen.
[0439] Input: Based on user menu selection
[0440] Output: Input fields such as start date / time, end date / time, and participant list are displayed.
[0441] Step 3:
[0442] The user inputs the available dates of the participants.
[0443] Input: Available dates for each participant
[0444] Output: Dataset containing the input schedule information
[0445] Step 4:
[0446] An emotion engine analyzes the user's current emotional state.
[0447] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[0448] Output: Emotional state data as analysis results (e.g., stress level)
[0449] Step 5:
[0450] The terminal transmits this information to the server.
[0451] Input: User-entered schedule information and emotional state data
[0452] Output: Data sent to the server
[0453] Step 6:
[0454] The server will suggest the optimal schedule based on the analysis results.
[0455] Input: Received schedule information and emotional state data
[0456] Output: Calculated optimal schedule data
[0457] Step 7:
[0458] The device will display the suggested dates.
[0459] Input: Optimal schedule data received from the server
[0460] Output: The proposed dates are displayed.
[0461] Step 8:
[0462] Once the user confirms the date, the server stores the date in a database.
[0463] Input: Confirmed schedule data
[0464] Output: Schedule data saved in the database
[0465] Choosing a restaurant
[0466] Step 1:
[0467] The user opens the application and selects the "Store Selection" menu.
[0468] Input: User-operated menu selection
[0469] Output: The condition input screen is displayed.
[0470] Step 2:
[0471] The terminal displays a screen for entering conditions.
[0472] Input: Based on user menu selection
[0473] Output: Input fields such as area, budget, cuisine, etc. are displayed.
[0474] Step 3:
[0475] The user inputs the desired conditions.
[0476] Input: desired area, budget, cuisine, etc.
[0477] Output: Data set that stores the input condition data
[0478] Step 4:
[0479] An emotion engine analyzes the user's current emotional state.
[0480] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[0481] Output: Emotional state data as the analysis result (e.g., relaxation level)
[0482] Step 5:
[0483] The terminal transmits this information to the server.
[0484] Input: Input condition data and emotional state data
[0485] Output: Data sent to the server
[0486] Step 6:
[0487] The server will suggest the most suitable store based on the analysis results.
[0488] Input: Received condition data and emotional state data
[0489] Output: Best store information that matches the criteria
[0490] Step 7:
[0491] The device will display suggested store information.
[0492] Input: Store information received from the server
[0493] Output: Suggested store information is displayed.
[0494] Team Division
[0495] Step 1:
[0496] The user opens the application and selects the "Teaming" menu.
[0497] Input: User-operated menu selection
[0498] Output: The participant list entry screen is displayed
[0499] Step 2:
[0500] The terminal displays a participant list input screen.
[0501] Input: Based on user menu selection
[0502] Output: Participant information input fields are displayed
[0503] Step 3:
[0504] The user enters the participant list.
[0505] Input: List of participants' names, number of participants, etc.
[0506] Output: A dataset containing the entered participant list data
[0507] Step 4:
[0508] An emotion engine analyzes the user's current emotional state.
[0509] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[0510] Output: Emotional state data as the analysis result (e.g., excitement level)
[0511] Step 5:
[0512] The terminal transmits this information to the server.
[0513] Input: Entered participant list data and emotional state data
[0514] Output: Data sent to the server
[0515] Step 6:
[0516] The server will assign teams based on the analysis results.
[0517] Input: Received participant list data and emotional state data
[0518] Output: Team-based results data
[0519] Step 7:
[0520] The device will display the team results.
[0521] Input: Team division result data received from the server
[0522] Output: Team division results are displayed
[0523] settlement
[0524] Step 1:
[0525] The user opens the application and selects the "Checkout" menu.
[0526] Input: User-operated menu selection
[0527] Output: The payment entry screen is displayed.
[0528] Step 2:
[0529] The terminal displays the payment entry screen.
[0530] Input: Based on user menu selection
[0531] Output: Total cost and payment percentage input fields are displayed.
[0532] Step 3:
[0533] The user enters the total cost and each participant's share of the payment.
[0534] Inputs: Total cost and each participant's payment percentage
[0535] Output: A dataset containing the total cost and payment rate data entered
[0536] Step 4:
[0537] An emotion engine analyzes the user's emotional state.
[0538] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[0539] Output: Emotional state data as the analysis result (e.g., satisfaction level)
[0540] Step 5:
[0541] The terminal transmits this information to the server.
[0542] Input: Total cost data, payment rate data, and emotional state data
[0543] Output: Data sent to the server
[0544] Step 6:
[0545] The server calculates the payment amount for each participant based on the analysis results.
[0546] Input: Received total cost data, payment rate data, emotional state data
[0547] Output: Payment data for each participant
[0548] Step 7:
[0549] The terminal displays the calculation results.
[0550] Input: Payment data received from the server
[0551] Output: Shows the payment amount for each participant
[0552] (Application example 2)
[0553] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0554] Modern self-driving vehicles lack the means to enhance the comfort and satisfaction of users during their journeys. Especially during long journeys, it is necessary to properly recognize the user's emotional state and respond appropriately. However, conventional systems are unable to perform emotion analysis. Therefore, even when a user feels fatigued or stressed, it is difficult to recommend facilities that address the user's needs, limiting the user's experience.
[0555] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0556] In this invention, the server includes emotion analysis means for analyzing the emotional state of the user while riding, recommendation means for recommending facilities near the current location based on the analysis results, and means for presenting information about the recommended facilities to the user. This makes it possible to recognize the emotional state of the user in real time and recommend the most appropriate facility accordingly.
[0557] An "autonomous vehicle" is a vehicle that can perform driving operations autonomously.
[0558] A "user" is a person who uses an autonomous vehicle.
[0559] "Emotion analysis means" refers to a system or software for recognizing and analyzing a user's emotional state.
[0560] The "recommendation means" is a means for selecting and recommending appropriate facilities and stores based on the analyzed emotional state and user preferences.
[0561] "Facility information" is information about places and services that can be provided to users, such as restaurants, cafes, and rest areas.
[0562] An "input screen" is an interface for a user to input information.
[0563] "Means for presenting to the user" refers to a display or notification system that shows the analysis results and recommended information to the user.
[0564] A "participant list" is a list containing names and information about people participating in an event or activity.
[0565] A "grouping means" is a method or program for forming groups based on a participant list, either randomly or according to specific conditions.
[0566] The present invention is a system developed to improve user comfort and satisfaction in autonomous vehicles. This system utilizes emotion analysis and recommendation means installed in the autonomous vehicle to recommend facilities based on the user's emotional state.
[0567] 1. Emotion analysis means:
[0568] Cameras and sensors inside the autonomous vehicle collect video and biometric data of the user. This data is analyzed by an emotion analysis module (e.g., sentiment_analysis_module) to determine the user's real-time emotional state. The analysis uses machine learning algorithms to determine, for example, whether the user is tired, relaxed, or stressed.
[0569] 2. Recommendation method:
[0570] Based on the results of the sentiment analysis, the system provides users with information about recommended facilities near their current location. To do this, a restaurant recommendation module (e.g., restaurant_recommender_module) runs, searches for relevant facilities, and lists appropriate candidates. The recommendation mechanism takes into account the user's current location information (GPS data) and preferences (pre-set cuisine genre and budget) to suggest the most suitable facilities.
[0571] 3. System operation steps:
[0572] An example of the system's operation procedure is the following process: For example, if the user feels tired after a long drive, the system recommends a facility where the user can relax.
[0573] For example, if a user is driving in the Shibuya area of Tokyo, tired from a long drive, and wants to find a relaxing Italian restaurant:
[0574] Example prompt sentence:
[0575] plaintext
[0576] User ID: 1
[0577] Recent activity: Long drive
[0578] Current Location: Shibuya, Tokyo
[0579] Preferences: Italian food, mid-range budget
[0580] Emotional state: Tired
[0581] Based on this, the system will recommend relaxing Italian restaurants in the Shibuya area, providing results such as "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars."
[0582] The hardware includes the navigation system, cameras, sensors, and displays within the autonomous vehicle, while the software includes an emotion analysis module and a restaurant recommendation module, which can recognize the user's emotional state in real time and recommend the most suitable establishments, improving the user experience.
[0583] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0584] Step 1:
[0585] A user gets into an autonomous vehicle and the system collects the user's biometric and video data.
[0586] Input: User images and biometric signals (e.g., heart rate, facial expressions, etc.)
[0587] Output: Collected biometric and video data
[0588] Specific operation: Cameras and sensors installed in the vehicle capture biometric data such as the user's facial expressions and heart rate in real time and transmit it to the system.
[0589] Step 2:
[0590] The server inputs the received user data into an emotion analysis module to analyze the user's emotional state.
[0591] Input: collected biometric and video data
[0592] Output: User's emotional state (e.g. tired, relaxed, stressed)
[0593] How it works: The sentiment analysis module analyzes the collected data using machine learning algorithms to determine the user's current sentiment.
[0594] Step 3:
[0595] Based on the analysis results, the server searches for and recommends appropriate facilities near the current location.
[0596] Input: User's emotional state, current location, user preferences (genre, budget, etc.)
[0597] Output: List of recommended facilities
[0598] Specific operation: The recommendation means acquires the user's current location (GPS data) and activates the facility recommendation module based on the user's preferences (e.g., Italian food, budget range) and emotional state. It generates a list of optimal facilities and returns it to the server.
[0599] Step 4:
[0600] The server transmits the recommended facility information to the terminal and presents it to the user.
[0601] Input: List of recommended facilities
[0602] Output: Facility information displayed on the user's device
[0603] Specific operation: Information about the recommended establishment (establishment name, address, rating, etc.) is displayed on the device display. For example, "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars" is displayed.
[0604] Step 5:
[0605] The user checks the displayed facility information and selects one.
[0606] Input: User selection
[0607] Output: Selected facility information
[0608] Specific operation: The user selects the facility they wish to visit from the facility information displayed on the screen, and this operation is recorded in the system.
[0609] Step 6:
[0610] The server records the selected facility information and sets the destination in the navigation system.
[0611] Input: Selected facility information
[0612] Output: Destination set in the navigation system
[0613] Specific operation: The server sends the address of the selected facility to the navigation system, the autonomous vehicle sets the destination to head to the facility, and begins route guidance.
[0614] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the 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.
[0615] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0616] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0617] [Second embodiment]
[0618] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0619] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0620] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0621] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0622] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0623] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0624] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0625] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0626] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0627] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0628] In the smart glasses 214, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0629] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0630] MODE FOR CARRYING OUT THE INVENTION
[0631] The present invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or welcome party. This system is implemented as a web or mobile application and has a user-friendly interface.
[0632] The present invention provides a system including the following steps.
[0633] Schedule adjustment
[0634] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays the schedule entry screen. When the user enters the free dates of the participants, the device sends that information to the server. The server analyzes the acquired schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and when the user confirms the date, the server saves it in the database.
[0635] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the server proposes the most suitable date and displays it to the user. The user confirms and confirms the proposed date, and the most suitable date is decided.
[0636] Choosing a restaurant
[0637] When a user opens the application and selects the "Select a Restaurant" menu, the device displays a search criteria input screen. Once the user enters criteria such as the desired area, budget, and cuisine, the device sends that information to the server. The server then uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[0638] As a concrete example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter that criteria and the server will list restaurants that meet the criteria and display them to the user.
[0639] Team Division
[0640] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. Once the user enters the participant list, the device sends the information to the server. The server assigns teams randomly or based on specified criteria and sends the results to the device.
[0641] As a concrete example, if you want to randomly divide 30 participants into 5 tables, the user can input the participant list, and the server will randomly generate 5 groups and display the results to the user.
[0642] settlement
[0643] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends the information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[0644] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[0645] As described above, the system of the present invention provides a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[0646] The processing flow will be explained below.
[0647] Schedule adjustment process
[0648] Step 1:
[0649] The user accesses the appointment entry screen.
[0650] The user opens the application and selects the "Schedule" menu.
[0651] Step 2:
[0652] The server retrieves and displays existing schedule data.
[0653] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[0654] Step 3:
[0655] The user inputs the available dates for each participant.
[0656] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[0657] Step 4:
[0658] The server analyzes everyone's available dates and suggests the best schedule.
[0659] The server analyzes the free schedule data of all participants, calculates the date when the most participants are free, and sends the calculation result to the terminal.
[0660] Step 5:
[0661] The user confirms and confirms the proposed dates.
[0662] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[0663] Shop selection process
[0664] Step 1:
[0665] The user accesses the condition input screen.
[0666] The user opens the application and selects the "Store Selection" menu.
[0667] Step 2:
[0668] The server displays a condition input screen.
[0669] The server sends the condition input screen to the terminal, which displays the condition input screen.
[0670] Step 3:
[0671] The user inputs the desired area, budget, cuisine, etc.
[0672] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[0673] Step 4:
[0674] The server retrieves and filters store information from a database or external API.
[0675] The server calls a database or external API to retrieve store information that matches the criteria, filters the retrieved store information, and generates a list of the most suitable stores.
[0676] Step 5:
[0677] Display the best store for the user.
[0678] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[0679] Team assignment process
[0680] Step 1:
[0681] The user accesses the participant list input screen.
[0682] The user opens the application and selects the "Teaming" menu.
[0683] Step 2:
[0684] The server displays a participant list input screen.
[0685] The server sends a participant list input screen to the terminal, which displays the input screen.
[0686] Step 3:
[0687] The user enters the participant's name.
[0688] The user inputs the participant's name. The device sends the input name to the server.
[0689] Step 4:
[0690] The server will automatically generate teams randomly or based on specified conditions.
[0691] The server runs an algorithm to divide the input participant list into teams randomly or based on specified criteria (e.g., by division), and sends the generated team information to the terminal.
[0692] Step 5:
[0693] Display team division results to the user.
[0694] The terminal displays the team division results to the user.
[0695] Processing of settlement
[0696] Step 1:
[0697] The user accesses the payment entry screen.
[0698] The user opens the application and selects the "Checkout" menu.
[0699] Step 2:
[0700] The server displays the payment entry screen.
[0701] The server sends the payment input screen to the terminal, which displays the input screen.
[0702] Step 3:
[0703] The user enters the total cost and each participant's share of the payment.
[0704] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[0705] Step 4:
[0706] The server automatically calculates the payment amount for each participant.
[0707] The server calculates the payment amount for each participant based on the total cost and the payment percentage, and sends the calculation result to the terminal.
[0708] Step 5:
[0709] Display billing information for each participant to the user.
[0710] The terminal displays each participant's billing information to the user.
[0711] The above is a specific flow of processing based on the present invention.
[0712] Example 1
[0713] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0714] In the past, when hosting a social gathering, the procedures for scheduling, choosing a restaurant, dividing into teams, and settling the bill were all often done manually, placing a heavy burden on the organizer. Furthermore, when there were a large number of participants or diverse requests, coordination could easily become complicated. Furthermore, there was a lack of an efficient system to smoothly carry out each procedure.
[0715] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0716] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for the user to confirm and save the proposed schedule, means for displaying a screen for the user to input desired conditions, means for acquiring appropriate information based on the conditions, means for presenting the acquired information to the user, means for displaying a screen for inputting a participant list, means for grouping participants randomly or according to specified conditions based on the entered participant information, means for presenting the group information to the user, means for displaying a screen for inputting a total cost and a payment rate, means for calculating each individual's share of the cost based on the total cost and the payment rate, and means for presenting the calculation result to the user. This allows each procedure for hosting a social gathering to be performed efficiently on a single platform, reducing the burden on organizers and dramatically improving the efficiency of coordination work.
[0717] A "user" is someone who uses this system to make arrangements for a social gathering.
[0718] "Schedule adjustment" is a process in which the user inputs the available dates of the participants and the server proposes the most suitable dates.
[0719] "Condition input" is the process in which the user inputs the desired conditions (area, budget, cuisine genre, etc.).
[0720] The "participant list" is a list of names and information of people who will be attending the social gathering.
[0721] "Grouping" is the process of dividing participants into multiple groups based on specified conditions or randomly, based on the input participant list.
[0722] "Total cost" is the total cost of the entire social gathering.
[0723] "Payment Percentage" means the percentage of the Total Costs payable by each Participant.
[0724] "Cost" refers to the specific payment amount for each participant calculated based on the total cost percentage.
[0725] A "server" is a central processing unit that receives information input by a user and performs analysis, information acquisition, calculation processing, etc.
[0726] A "terminal" is a device operated by a user that mainly performs data communication with a server.
[0727] A "database" is a data storage device that allows a server to save and manage various information.
[0728] An "external API" is a program interface for obtaining necessary information from external services.
[0729] The present invention provides a system for streamlining the procedures required when a user holds a social gathering such as a year-end party, a welcome party, etc. This system is implemented as a web application or a mobile application and has a user-friendly interface.
[0730] Schedule adjustment
[0731] The user opens the application and selects the "Schedule Adjustment" menu. The device then displays the schedule entry screen. The user enters the free dates of the participants, and the device sends this information to the server. The server analyzes the received schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in the database.
[0732] For example, when a user wants to arrange a date for a year-end party, they input the available dates for all participants through the application. The server then calculates the optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[0733] Choosing a restaurant
[0734] The user opens the application and selects the "Select a Restaurant" menu. The device displays a screen for entering desired criteria (area, budget, cuisine, etc.). Once the user enters the criteria, the device sends the information to the server. The server uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[0735] As a specific example, if a user is looking for an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter their search criteria and the server will list restaurants that meet the criteria and display them on the terminal.
[0736] Team Division
[0737] The user opens the application and selects the "Team Assignment" menu. The device displays a participant list entry screen. When the user enters the participant list, the device sends the information to the server. The server assigns the participants to teams randomly or based on specified conditions, and sends the results to the device.
[0738] As a concrete example, if you want to randomly divide 30 participants into five tables, when the user inputs the participant list, the server will randomly generate five groups and display the results on the terminal.
[0739] settlement
[0740] The user opens the application and selects the "Payment" menu. The terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends that information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[0741] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[0742] Prompt Sentence Examples
[0743] Here's an example prompt to ask the system to arrange a social gathering:
[0744] "I'd like to coordinate schedules for a social gathering we're holding. Please let me know the best date so that everyone can attend. Next, I'd like to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen. I'd also like to know how to randomly divide the 30 participants into 5 tables. Finally, I'd like to settle the total fee of 15,000 yen fairly among 15 people, so please show me the amount each person will pay."
[0745] As described above, the system of the present invention aims to provide a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[0746] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0747] Step 1:
[0748] The user opens the application and selects the "Schedule" menu.
[0749] Input: User action (select "Schedule Adjustment" menu).
[0750] Output: The schedule entry screen is displayed on the terminal.
[0751] Specific operation: The terminal sends a request to the server to display the schedule input screen, and the server returns the schedule input screen information to the terminal in response to this.
[0752] Step 2:
[0753] The user inputs the available dates of the participants and clicks the "Submit" button.
[0754] Input: Participant's available dates (user input).
[0755] Output: The device sends the input data to the server.
[0756] Specific operation: When the user enters the available dates for each participant on the schedule input screen and clicks the send button, the device sends this information to the server in JSON format.
[0757] Step 3:
[0758] The server analyzes the received schedule information and suggests a schedule that will allow the most people to participate.
[0759] Input: Submitted schedule information (JSON format).
[0760] Output: Calculation result of optimal schedule.
[0761] Specific operation: The server analyzes the received schedule information, compares it with the free days of each participant, and uses an algorithm to calculate the schedule that the maximum number of participants can attend.
[0762] Step 4:
[0763] The server transmits the proposed schedule to the terminal and displays it on the terminal.
[0764] Input: The calculated best dates.
[0765] Output: The proposed itinerary is displayed on the terminal.
[0766] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the results on the screen.
[0767] Step 5:
[0768] The user reviews and confirms the proposed dates.
[0769] Input: User confirms and confirms the proposed schedule.
[0770] Output: The date is confirmed and saved.
[0771] Specific operation: When the user checks the schedule and clicks the confirm button, the terminal notifies the server of this operation, and the server saves the confirmed schedule in the database.
[0772] Step 6:
[0773] The user opens the application and selects the "Store Selection" menu.
[0774] Input: User operation (selecting the "Select a store" menu).
[0775] Output: The condition input screen is displayed on the terminal.
[0776] Specific operation: The terminal sends a request to the server to display a condition input screen, and the server returns the information on the condition input screen to the terminal in response to this.
[0777] Step 7:
[0778] The user enters the desired conditions (area, budget, cuisine, etc.) and clicks the "Submit" button.
[0779] Input: Desired conditions (user input).
[0780] Output: The device sends the input data to the server.
[0781] Specific operation: When the user enters the desired area, budget, and cuisine genre into the condition input screen and clicks the send button, the device sends this information to the server in JSON format.
[0782] Step 8:
[0783] Based on the conditions received by the server, store information is searched for using a database or external API.
[0784] Input: Submitted desired conditions (JSON format).
[0785] Output: Store information that matches the conditions.
[0786] Specific operation: The server calls a database or external API based on the desired conditions, and retrieves and selects store information that matches the conditions.
[0787] Step 9:
[0788] The server transmits the acquired store information to the terminal and presents it on the terminal.
[0789] Input: Store information obtained.
[0790] Output: Candidate store information is displayed on the terminal.
[0791] Specific operation: The server sends the selected store information to the terminal, and the terminal displays the information on the screen.
[0792] Step 10:
[0793] The user opens the application and selects the "Teaming" menu.
[0794] Input: User action (selecting the "Teaming" menu).
[0795] Output: The participant list input screen is displayed on the terminal.
[0796] Specific operation: The terminal sends a request to the server to display the participant list input screen, and the server returns the information of the participant list input screen to the terminal in response to this.
[0797] Step 11:
[0798] The user enters the participant list and clicks the "Submit" button.
[0799] Input: Participant list (user input).
[0800] Output: The device sends the input data to the server.
[0801] Specific operation: When the user enters the participant list and clicks the send button, the terminal sends this information to the server in JSON format.
[0802] Step 12:
[0803] Based on the participant list received by the server, participants are grouped randomly or according to specified conditions.
[0804] Input: The submitted participant list (JSON format).
[0805] Output: Separated group information.
[0806] Specific operation: The server analyzes the participant list using an algorithm, either randomly or based on specified conditions, and groups them.
[0807] Step 13:
[0808] The server transmits the grouping information to the terminal and presents it to the terminal.
[0809] Input: Separated group information.
[0810] Output: The grouping results are displayed on the terminal.
[0811] Specific operation: The server sends the generated grouping information to the terminal, and the terminal displays the information on the screen.
[0812] Step 14:
[0813] The user opens the application and selects the "Checkout" menu.
[0814] Input: User operation (selecting the "Checkout" menu).
[0815] Output: The payment entry screen is displayed on the terminal.
[0816] Specific operation: The terminal sends a request to the server to display the settlement input screen, and the server responds by sending the information on the settlement input screen back to the terminal.
[0817] Step 15:
[0818] The user enters the total cost and payment percentage and clicks the "Submit" button.
[0819] Input: Total cost and payment percentage (user input).
[0820] Output: The device sends the input data to the server.
[0821] Specific operation: When the user enters the total cost and payment percentage and clicks the submit button, the terminal sends this information to the server in JSON format.
[0822] Step 16:
[0823] The server calculates each participant's share based on the total cost and the payment percentage.
[0824] Input: Submitted total cost and payment percentage (JSON format).
[0825] Output: The amount contributed by each participant.
[0826] Specific operation: The server applies a calculation algorithm based on the total cost and payment ratio to calculate the amount each participant will pay.
[0827] Step 17:
[0828] The server sends the payment calculation result to the terminal and presents it to the terminal.
[0829] Input: Calculated contribution amount for each participant.
[0830] Output: The amount of the charge is displayed on the terminal.
[0831] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the information on the screen.
[0832] (Application example 1)
[0833] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0834] When preparing for a social gathering or party, the process of scheduling the date and time, selecting the menu, managing the participants, and settling the costs is complicated, placing a heavy burden on the organizer. Additionally, selecting the optimal menu that reflects each participant's wishes and preferences, and the process of settling the costs, are also complicated. A system that can solve these problems and allow for smooth and efficient preparations is needed.
[0835] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0836] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for having the user confirm and save the proposed schedule, means for creating an event and inviting participants, means for displaying a screen for inputting each participant's desired conditions, means for proposing a delivery menu based on the conditions, means for aggregating each participant's order and arranging delivery, and means for calculating the total cost and settling the account. This allows for efficient preparation for a social gathering or party, reduces the burden on the organizer, and enables the selection of an optimal menu according to each participant's wishes and settlement of the costs.
[0837] "Schedule adjustment" is the process of collecting information on the user's available dates and times, proposing and deciding on the most suitable schedule.
[0838] An "input screen" is a portion of an interface provided for a user to input information.
[0839] "Schedule information" is data on available dates and time slots provided by the user.
[0840] "Analysis" is a method of calculating based on input data to derive optimal dates and conditions.
[0841] "Proposal" is the process of showing the user the optimal schedule and conditions obtained through analysis.
[0842] "Storage" refers to the act of recording the confirmed information in the system's database.
[0843] "Event Creation" is the process by which a user sets up a new gathering or party.
[0844] "Inviting participants" is an act by a user inviting other people to participate in an event.
[0845] "Preferences" refer to specific requirements or preferences provided by a user.
[0846] A "Delivery Menu" is a selection of meals that can be ordered online.
[0847] "Order aggregation" is the process of summarizing the orders of each participant.
[0848] "Delivery arrangements" refers to preparing meals to be delivered to each participant based on the aggregated orders.
[0849] "Total Cost" means the total cost of all Participant's orders.
[0850] "Settlement" is the process of calculating the amount owed by each participant and completing the payment process.
[0851] This invention is a system for efficiently preparing events such as social gatherings and online parties. The system is realized by a user's terminal (smartphone or PC) and a server.
[0852] First, the user opens the application on their device and accesses the event settings screen. Here, an input screen for scheduling is displayed, and the user enters the dates they can attend. The entered schedule information is sent to the server, which analyzes the information and suggests the most suitable dates. The suggested dates are displayed on the device, and the user can confirm and confirm them, after which the server saves the information in a database.
[0853] Next, after the event is confirmed, an invitation function is activated to invite participants. The user registers participants on their terminal and sends invitations. Each participant accesses a screen to enter their preferences and allergy information and enters their desired conditions. This information is also sent to the server, which then suggests an appropriate delivery menu based on the conditions. The suggested menu is presented to the user, who makes the final selection.
[0854] Once the order details are confirmed, the server will compile the orders from each participant and arrange for delivery. It is possible to link with specific delivery services, and the order data will be automatically sent to the delivery service. Once the delivery arrangements are complete, each participant will be notified.
[0855] The final function is to settle the total cost. The user accesses the settlement screen and enters the total cost and each participant's payment percentage. Based on this information, the server calculates the payment amount for each participant and proceeds with the payment process via an electronic payment service. Once payment is complete, a confirmation message is sent to the participant.
[0856] The following key technologies are used as components of this system:
[0857] Hardware: AWS EC2 (virtual server), user devices (smartphones, PCs, etc.)
[0858] Software: React Native (smartphone application), React.js (web application), Node.js (server-side logic)
[0859] APIs and databases: Zomato API (delivery search), Stripe API (electronic payments), Amazon RDS (database)
[0860] As a concrete example, let's look at a scenario where User A is hosting an online year-end party. User A opens the app, schedules an online year-end party from 7:00 PM to 9:00 PM on December 15th, and invites Participants B and C. Participant B enters the desired conditions of "budget under 3,000 yen, gluten-free." The server uses the Zomato API to suggest menu items that meet these conditions, and everyone confirms the delivery menu from "Italian Restaurant X." After the order is confirmed, the data is sent to the delivery service, and delivery arrangements are made. Finally, the Stripe API is used to complete the payment process for each participant.
[0861] An example of a prompt to input to a generative AI model is:
[0862] This article explains the process for the "Food Fest Delivery" app, where users select a delivery menu for an online party and settle the costs. After users enter the date and time and the number of participants, they enter their desired conditions (budget, food preferences, etc.), and the app suggests the most suitable restaurant and menu via the Zomato API. The app then confirms the final order and settles the costs via the Stripe API.
[0863] This allows the functions of the entire system to work together smoothly, enabling efficient preparation for events.
[0864] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0865] Step 1:
[0866] The user opens the application on their device and accesses the event setting screen. The user enters the available dates and details of the event. The input data includes the date (e.g., December 15th, 7:00 PM to 9:00 PM) and the name of the event (e.g., "Online Year-End Party"). This information is sent to the server.
[0867] Step 2:
[0868] The server analyzes the schedule information received and proposes the optimal schedule. An algorithm is used for the analysis to check the availability of each participant. Data processing involves aggregating the schedule data of all participants and identifying the date when the most participants are available. The analysis results are sent to the device and displayed to the user.
[0869] Step 3:
[0870] The user confirms and confirms the proposed schedule. The confirmed schedule is saved on the server and recorded in the database. The saved data includes the event ID, confirmed schedule, and participant information.
[0871] Step 4:
[0872] To invite participants, the user goes to the participant registration screen. The user enters the participant's contact information and sends the invitation. The input data is sent to the server, and an invitation email is automatically generated for the participant. The email sent contains the event details and a link to participate.
[0873] Step 5:
[0874] Participants receive an invitation email and click the link to access the event page. They enter their desired conditions (budget, allergy information, etc.). The entered data is sent to the server, which stores this information in a database.
[0875] Step 6:
[0876] The server proposes an appropriate delivery menu based on the participant's desired conditions. The server calls the Zomato API and searches for menus that match the entered conditions (e.g., budget 3,000 yen, gluten-free). The search results are sent to the terminal and presented to the user.
[0877] Step 7:
[0878] The user and participants review the proposed menu and finalize the order. The finalized order is sent to the server, which aggregates the orders of each participant. The server then arranges delivery based on the aggregated data.
[0879] Step 8:
[0880] The server sends the order details and delivery address information to the delivery service. Once the delivery arrangements are complete, a notification is sent to each participant. The notification includes an order confirmation and an estimated delivery time.
[0881] Step 9:
[0882] The user accesses the total cost settlement screen and enters the payment percentage. The server calculates the payment amount for each participant based on the total cost and processes the payment using the Stripe API. The payment information is sent to the terminal, and a payment confirmation message is displayed to each participant.
[0883] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0884] MODE FOR CARRYING OUT THE INVENTION
[0885] This invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or a welcome party. This system is implemented as a web or mobile application and is equipped with an emotion engine that recognizes the user's emotions. By taking the user's emotional state into account at each stage of the event planning process, the emotion engine can provide more appropriate suggestions and results.
[0886] Schedule adjustment
[0887] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays a schedule entry screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which uses the analysis results to propose the optimal schedule that will most satisfy the participants. The proposed schedule is displayed on the device, and once the user confirms the schedule, the server saves it in a database.
[0888] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the emotion engine analyzes the user's level of tension and stress. Based on this information, the server proposes an optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[0889] Choosing a restaurant
[0890] When a user opens the application and selects the "Select Restaurant" menu, the device displays a screen for entering criteria. The user enters criteria such as desired area, budget, and cuisine, and the emotion engine analyzes the user's current emotional state. The device then sends this information to the server, which uses the analysis results to obtain information on restaurants that will best satisfy the user and presents it on the device.
[0891] For example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they input that criteria, and the emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious). Based on that information, the server creates a list of restaurants that best fit the criteria and displays it to the user.
[0892] Team Division
[0893] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which then assigns the participants to teams randomly or based on specified criteria (e.g., emotional balance) based on the analysis results, and displays the results on the device.
[0894] For example, if you want to randomly divide 30 participants into 5 tables, the user inputs the participant list, and the emotion engine analyzes the user's emotional state. Based on that information, the server generates teams that take into account the emotional balance within the group, and displays the results to the user.
[0895] settlement
[0896] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's current emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays them on the terminal.
[0897] As a concrete example, if the total membership fee is 15,000 yen and 15 people participate, the user inputs the total amount, and the emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied). Based on that information, the server calculates the fair and satisfying payment amount and displays the result to the user.
[0898] As described above, the system of the present invention provides various support functions that take into consideration the user's feelings, and not only reduces the burden on the organizer but also increases user satisfaction.
[0899] The processing flow will be explained below.
[0900] Schedule adjustment process
[0901] Step 1:
[0902] The user accesses the appointment entry screen.
[0903] The user opens the application and selects the "Schedule" menu.
[0904] Step 2:
[0905] The server retrieves and displays existing schedule data.
[0906] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[0907] Step 3:
[0908] The user inputs the available dates for each participant.
[0909] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[0910] Step 4:
[0911] The emotion engine analyzes the user's emotions.
[0912] The terminal sends the user's emotional state along with the entered schedule information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., stress level, relaxation level) to the server.
[0913] Step 5:
[0914] The server analyzes everyone's available dates and suggests the best schedule.
[0915] The server analyzes the free schedule data of all participants and the emotion data obtained from the emotion engine, proposes the most satisfying schedule, and sends the calculation results to the terminal.
[0916] Step 6:
[0917] The user confirms and confirms the proposed dates.
[0918] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[0919] Shop selection process
[0920] Step 1:
[0921] The user accesses the condition input screen.
[0922] The user opens the application and selects the "Store Selection" menu.
[0923] Step 2:
[0924] The server displays a condition input screen.
[0925] The server sends the condition input screen to the terminal, which displays the condition input screen.
[0926] Step 3:
[0927] The user inputs the desired area, budget, cuisine, etc.
[0928] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[0929] Step 4:
[0930] The emotion engine analyzes the user's emotions.
[0931] The terminal sends the user's emotional state along with the input condition information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., expectation, stress level) to the server.
[0932] Step 5:
[0933] The server retrieves and filters store information from a database or external API.
[0934] The server calls a database or external API to retrieve the best store information based on the conditions and sentiment data, then filters the retrieved store information to generate the most suitable store list.
[0935] Step 6:
[0936] Display the best store for the user.
[0937] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[0938] Team assignment process
[0939] Step 1:
[0940] The user accesses the participant list input screen.
[0941] The user opens the application and selects the "Teaming" menu.
[0942] Step 2:
[0943] The server displays a participant list input screen.
[0944] The server sends a participant list input screen to the terminal, which displays the input screen.
[0945] Step 3:
[0946] The user enters the participant's name.
[0947] The user inputs the participant's name. The device sends the input name to the server.
[0948] Step 4:
[0949] The emotion engine analyzes the user's emotions.
[0950] The terminal sends the user's emotional state along with the entered participant information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., excitement level, tension level) to the server.
[0951] Step 5:
[0952] The server will automatically generate teams randomly or based on specified conditions.
[0953] The server runs an algorithm to divide the input participant list into teams randomly or according to specified conditions (e.g., emotional balance) based on emotional data, and sends the generated team information to the terminal.
[0954] Step 6:
[0955] Display team division results to the user.
[0956] The terminal displays the team division results to the user.
[0957] Processing of settlement
[0958] Step 1:
[0959] The user accesses the payment entry screen.
[0960] The user opens the application and selects the "Checkout" menu.
[0961] Step 2:
[0962] The server displays the payment entry screen.
[0963] The server sends the payment input screen to the terminal, which displays the input screen.
[0964] Step 3:
[0965] The user enters the total cost and each participant's share of the payment.
[0966] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[0967] Step 4:
[0968] The emotion engine analyzes the user's emotions.
[0969] The terminal sends the user's emotional state along with the entered payment information to the emotion engine, which analyzes the emotion data and sends the user's current emotional state (e.g., satisfaction level, stress level) to the server.
[0970] Step 5:
[0971] The server automatically calculates the payment amount for each participant based on the total cost, payment rate, and emotional data.
[0972] The server calculates the payment amount for each participant based on the total cost, payment percentage, and emotion data, and sends the calculation results to the terminal.
[0973] Step 6:
[0974] Display billing information for each participant to the user.
[0975] The terminal displays each participant's billing information to the user.
[0976] The above is a specific flow of processing based on the present invention.
[0977] Example 2
[0978] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0979] In the past, planning and hosting social gatherings required manual processes such as scheduling, selecting restaurants, dividing teams, and settling bills, which took a lot of time and effort. It was also difficult to consider the emotions and satisfaction of participants, making it difficult to achieve a result that satisfied all participants. There is a need to solve these issues and realize efficient and satisfying social gatherings.
[0980] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0981] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring schedule information entered by the user and analyzing the user's emotional state using an emotion engine, means for proposing an optimal schedule based on the analysis, and means for having the user confirm and save the proposed schedule. This enables optimal schedule proposals that take the user's emotions into consideration. The server also includes means for displaying a screen for entering user-desired conditions, means for acquiring appropriate store information based on the conditions, and means for analyzing the user's emotional state using an emotion engine and presenting the acquired store information to the user. This enables store selection that takes the user's emotions into consideration. Additionally, the server includes means for displaying a screen for entering a participant list, means for analyzing the user's emotional state using an emotion engine based on the entered participant information, and dividing the team randomly or according to specified conditions, and means for presenting the divided team information to the user. This enables team division that takes the user's emotions into consideration.
[0982] "User" refers to an individual or organization that uses this system to plan and manage social gatherings.
[0983] "Scheduling" refers to the process of coordinating dates that are convenient for all participants and determining the optimal date.
[0984] An "emotion engine" refers to a software or hardware mechanism for analyzing a user's emotional state.
[0985] "Input screen" refers to an interface for the user to input required information.
[0986] "Analysis" refers to the process of calculation and judgment that processes input data and information on the user's emotional state to arrive at the optimal result.
[0987] The "optimal date" refers to the date that will satisfy all participants the most.
[0988] "Store information" refers to store information based on the conditions desired by the user.
[0989] "Teaming" refers to the process of dividing participants into multiple groups based on the input participant list.
[0990] "Database" refers to a digital storage system for managing and storing necessary information.
[0991] This invention is a system for planning and managing social gatherings efficiently, implemented as a web or mobile application. This system analyzes the user's emotions and makes optimal suggestions during each process: scheduling, restaurant selection, team assignment, and payment.
[0992] Schedule adjustment
[0993] When a user opens the application and selects the schedule adjustment menu, the device displays the schedule input screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then proposes the most suitable date based on the analysis results. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in a database.
[0994] Examples:
[0995] When a user wants to arrange the date of a year-end party, the user inputs the free dates of all the participants through the application.
[0996] The emotion engine analyzes the user's level of tension and stress.
[0997] The server uses this information to suggest the best schedule and displays it to the user.
[0998] The optimal schedule is determined by the user confirming and confirming the proposed schedule.
[0999] Choosing a restaurant
[1000] When a user opens the application and selects the restaurant selection menu, the device displays a criteria input screen. The user enters criteria such as desired area, budget, and cuisine type, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then retrieves the most suitable restaurant information based on the analysis results and presents it to the user.
[1001] Examples:
[1002] If a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they enter that criteria.
[1003] The emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious).
[1004] Based on this information, the server creates a list of the best stores that meet the criteria and displays it to the user.
[1005] Team Division
[1006] When a user opens the application and selects the team assignment menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then assigns teams based on the analysis results, either randomly or according to specified criteria, and presents the results to the user.
[1007] Examples:
[1008] If the user wants to randomly divide 30 participants into 5 tables, enter the participant list.
[1009] An emotion engine analyzes the user's emotional state.
[1010] The server generates a team based on this information, taking into account the emotional balance within the group, and displays the results to the user.
[1011] settlement
[1012] When a user opens the application and selects the payment menu, the terminal displays the payment input screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays the results on the terminal.
[1013] Examples:
[1014] If the total membership fee is 15,000 yen and 15 people are participating, the user enters the total amount.
[1015] An emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied).
[1016] The server calculates a fair and satisfactory payment amount based on that information and displays the result to the user.
[1017] In this way, the user uses the application at each stage of the process, the emotion engine analyzes the user's emotional state, and the server makes optimal suggestions, thereby streamlining the planning and management of social gatherings and increasing participant satisfaction.
[1018] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1019] Schedule adjustment
[1020] Step 1:
[1021] The user opens the application on their smartphone or PC and selects the "Schedule Adjustment" menu.
[1022] Input: User-initiated application launch and menu selection
[1023] Output: The schedule entry screen is displayed.
[1024] Step 2:
[1025] The device displays the schedule entry screen.
[1026] Input: Based on user menu selection
[1027] Output: Input fields such as start date / time, end date / time, and participant list are displayed.
[1028] Step 3:
[1029] The user inputs the available dates of the participants.
[1030] Input: Available dates for each participant
[1031] Output: Dataset containing the input schedule information
[1032] Step 4:
[1033] An emotion engine analyzes the user's current emotional state.
[1034] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1035] Output: Emotional state data as analysis results (e.g., stress level)
[1036] Step 5:
[1037] The terminal transmits this information to the server.
[1038] Input: User-entered schedule information and emotional state data
[1039] Output: Data sent to the server
[1040] Step 6:
[1041] The server will suggest the optimal schedule based on the analysis results.
[1042] Input: Received schedule information and emotional state data
[1043] Output: Calculated optimal schedule data
[1044] Step 7:
[1045] The device will display the suggested dates.
[1046] Input: Optimal schedule data received from the server
[1047] Output: The proposed dates are displayed.
[1048] Step 8:
[1049] Once the user confirms the date, the server stores the date in a database.
[1050] Input: Confirmed schedule data
[1051] Output: Schedule data saved in the database
[1052] Choosing a restaurant
[1053] Step 1:
[1054] The user opens the application and selects the "Store Selection" menu.
[1055] Input: User-operated menu selection
[1056] Output: The condition input screen is displayed.
[1057] Step 2:
[1058] The terminal displays a screen for entering conditions.
[1059] Input: Based on user menu selection
[1060] Output: Input fields such as area, budget, cuisine, etc. are displayed.
[1061] Step 3:
[1062] The user inputs the desired conditions.
[1063] Input: desired area, budget, cuisine, etc.
[1064] Output: Data set that stores the input condition data
[1065] Step 4:
[1066] An emotion engine analyzes the user's current emotional state.
[1067] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1068] Output: Emotional state data as the analysis result (e.g., relaxation level)
[1069] Step 5:
[1070] The terminal transmits this information to the server.
[1071] Input: Input condition data and emotional state data
[1072] Output: Data sent to the server
[1073] Step 6:
[1074] The server will suggest the most suitable store based on the analysis results.
[1075] Input: Received condition data and emotional state data
[1076] Output: Best store information that matches the criteria
[1077] Step 7:
[1078] The device will display suggested store information.
[1079] Input: Store information received from the server
[1080] Output: Suggested store information is displayed.
[1081] Team Division
[1082] Step 1:
[1083] The user opens the application and selects the "Teaming" menu.
[1084] Input: User-operated menu selection
[1085] Output: The participant list entry screen is displayed
[1086] Step 2:
[1087] The terminal displays a participant list input screen.
[1088] Input: Based on user menu selection
[1089] Output: Participant information input fields are displayed
[1090] Step 3:
[1091] The user enters the participant list.
[1092] Input: List of participants' names, number of participants, etc.
[1093] Output: A dataset containing the entered participant list data
[1094] Step 4:
[1095] An emotion engine analyzes the user's current emotional state.
[1096] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1097] Output: Emotional state data as the analysis result (e.g., excitement level)
[1098] Step 5:
[1099] The terminal transmits this information to the server.
[1100] Input: Entered participant list data and emotional state data
[1101] Output: Data sent to the server
[1102] Step 6:
[1103] The server will assign teams based on the analysis results.
[1104] Input: Received participant list data and emotional state data
[1105] Output: Team-based results data
[1106] Step 7:
[1107] The device will display the team results.
[1108] Input: Team division result data received from the server
[1109] Output: Team division results are displayed
[1110] settlement
[1111] Step 1:
[1112] The user opens the application and selects the "Checkout" menu.
[1113] Input: User-operated menu selection
[1114] Output: The payment entry screen is displayed.
[1115] Step 2:
[1116] The terminal displays the payment entry screen.
[1117] Input: Based on user menu selection
[1118] Output: Total cost and payment percentage input fields are displayed.
[1119] Step 3:
[1120] The user enters the total cost and each participant's share of the payment.
[1121] Inputs: Total cost and each participant's payment percentage
[1122] Output: A dataset containing the total cost and payment rate data entered
[1123] Step 4:
[1124] An emotion engine analyzes the user's emotional state.
[1125] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1126] Output: Emotional state data as the analysis result (e.g., satisfaction level)
[1127] Step 5:
[1128] The terminal transmits this information to the server.
[1129] Input: Total cost data, payment rate data, and emotional state data
[1130] Output: Data sent to the server
[1131] Step 6:
[1132] The server calculates the payment amount for each participant based on the analysis results.
[1133] Input: Received total cost data, payment rate data, emotional state data
[1134] Output: Payment data for each participant
[1135] Step 7:
[1136] The terminal displays the calculation results.
[1137] Input: Payment data received from the server
[1138] Output: Shows the payment amount for each participant
[1139] (Application example 2)
[1140] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[1141] Modern self-driving vehicles lack the means to enhance the comfort and satisfaction of users during their journeys. Especially during long journeys, it is necessary to properly recognize the user's emotional state and respond appropriately. However, conventional systems are unable to perform emotion analysis. Therefore, even when a user feels fatigued or stressed, it is difficult to recommend facilities that address the user's needs, limiting the user's experience.
[1142] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1143] In this invention, the server includes emotion analysis means for analyzing the emotional state of the user while riding, recommendation means for recommending facilities near the current location based on the analysis results, and means for presenting information about the recommended facilities to the user. This makes it possible to recognize the emotional state of the user in real time and recommend the most appropriate facility accordingly.
[1144] An "autonomous vehicle" is a vehicle that can perform driving operations autonomously.
[1145] A "user" is a person who uses an autonomous vehicle.
[1146] "Emotion analysis means" refers to a system or software for recognizing and analyzing a user's emotional state.
[1147] The "recommendation means" is a means for selecting and recommending appropriate facilities and stores based on the analyzed emotional state and user preferences.
[1148] "Facility information" is information about places and services that can be provided to users, such as restaurants, cafes, and rest areas.
[1149] An "input screen" is an interface for a user to input information.
[1150] "Means for presenting to the user" refers to a display or notification system that shows the analysis results and recommended information to the user.
[1151] A "participant list" is a list containing names and information about people participating in an event or activity.
[1152] A "grouping means" is a method or program for forming groups based on a participant list, either randomly or according to specific conditions.
[1153] The present invention is a system developed to improve user comfort and satisfaction in autonomous vehicles. This system utilizes emotion analysis and recommendation means installed in the autonomous vehicle to recommend facilities based on the user's emotional state.
[1154] 1. Emotion analysis means:
[1155] Cameras and sensors inside the autonomous vehicle collect video and biometric data of the user. This data is analyzed by an emotion analysis module (e.g., sentiment_analysis_module) to determine the user's real-time emotional state. The analysis uses machine learning algorithms to determine, for example, whether the user is tired, relaxed, or stressed.
[1156] 2. Recommendation method:
[1157] Based on the results of the sentiment analysis, the system provides users with information about recommended facilities near their current location. To do this, a restaurant recommendation module (e.g., restaurant_recommender_module) runs, searches for relevant facilities, and lists appropriate candidates. The recommendation mechanism takes into account the user's current location information (GPS data) and preferences (pre-set cuisine genre and budget) to suggest the most suitable facilities.
[1158] 3. System operation steps:
[1159] An example of the system's operation procedure is the following process: For example, if the user feels tired after a long drive, the system recommends a facility where the user can relax.
[1160] For example, if a user is driving in the Shibuya area of Tokyo, tired from a long drive, and wants to find a relaxing Italian restaurant:
[1161] Example prompt sentence:
[1162] plaintext
[1163] User ID: 1
[1164] Recent activity: Long drive
[1165] Current Location: Shibuya, Tokyo
[1166] Preferences: Italian food, mid-range budget
[1167] Emotional state: Tired
[1168] Based on this, the system will recommend relaxing Italian restaurants in the Shibuya area, providing results such as "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars."
[1169] The hardware includes the navigation system, cameras, sensors, and displays within the autonomous vehicle, while the software includes an emotion analysis module and a restaurant recommendation module, which can recognize the user's emotional state in real time and recommend the most suitable establishments, improving the user experience.
[1170] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1171] Step 1:
[1172] A user gets into an autonomous vehicle and the system collects the user's biometric and video data.
[1173] Input: User images and biometric signals (e.g., heart rate, facial expressions, etc.)
[1174] Output: Collected biometric and video data
[1175] Specific operation: Cameras and sensors installed in the vehicle capture biometric data such as the user's facial expressions and heart rate in real time and transmit it to the system.
[1176] Step 2:
[1177] The server inputs the received user data into an emotion analysis module to analyze the user's emotional state.
[1178] Input: collected biometric and video data
[1179] Output: User's emotional state (e.g. tired, relaxed, stressed)
[1180] How it works: The sentiment analysis module analyzes the collected data using machine learning algorithms to determine the user's current sentiment.
[1181] Step 3:
[1182] Based on the analysis results, the server searches for and recommends appropriate facilities near the current location.
[1183] Input: User's emotional state, current location, user preferences (genre, budget, etc.)
[1184] Output: List of recommended facilities
[1185] Specific operation: The recommendation means acquires the user's current location (GPS data) and activates the facility recommendation module based on the user's preferences (e.g., Italian food, budget range) and emotional state. It generates a list of optimal facilities and returns it to the server.
[1186] Step 4:
[1187] The server transmits the recommended facility information to the terminal and presents it to the user.
[1188] Input: List of recommended facilities
[1189] Output: Facility information displayed on the user's device
[1190] Specific operation: Information about the recommended establishment (establishment name, address, rating, etc.) is displayed on the device display. For example, "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars" is displayed.
[1191] Step 5:
[1192] The user checks the displayed facility information and selects one.
[1193] Input: User selection
[1194] Output: Selected facility information
[1195] Specific operation: The user selects the facility they wish to visit from the facility information displayed on the screen, and this operation is recorded in the system.
[1196] Step 6:
[1197] The server records the selected facility information and sets the destination in the navigation system.
[1198] Input: Selected facility information
[1199] Output: Destination set in the navigation system
[1200] Specific operation: The server sends the address of the selected facility to the navigation system, the autonomous vehicle sets the destination to head to the facility, and begins route guidance.
[1201] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1202] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1203] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[1204] [Third embodiment]
[1205] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1206] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[1207] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1208] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[1209] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1210] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1211] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1212] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1213] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[1214] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1215] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1216] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[1217] MODE FOR CARRYING OUT THE INVENTION
[1218] The present invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or welcome party. This system is implemented as a web or mobile application and has a user-friendly interface.
[1219] The present invention provides a system including the following steps.
[1220] Schedule adjustment
[1221] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays the schedule entry screen. When the user enters the free dates of the participants, the device sends that information to the server. The server analyzes the acquired schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and when the user confirms the date, the server saves it in the database.
[1222] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the server proposes the most suitable date and displays it to the user. The user confirms and confirms the proposed date, and the most suitable date is decided.
[1223] Choosing a restaurant
[1224] When a user opens the application and selects the "Select a Restaurant" menu, the device displays a search criteria input screen. Once the user enters criteria such as the desired area, budget, and cuisine, the device sends that information to the server. The server then uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[1225] As a concrete example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter that criteria and the server will list restaurants that meet the criteria and display them to the user.
[1226] Team Division
[1227] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. Once the user enters the participant list, the device sends the information to the server. The server assigns teams randomly or based on specified criteria and sends the results to the device.
[1228] As a concrete example, if you want to randomly divide 30 participants into 5 tables, the user can input the participant list, and the server will randomly generate 5 groups and display the results to the user.
[1229] settlement
[1230] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends the information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[1231] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[1232] As described above, the system of the present invention provides a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[1233] The processing flow will be explained below.
[1234] Schedule adjustment process
[1235] Step 1:
[1236] The user accesses the appointment entry screen.
[1237] The user opens the application and selects the "Schedule" menu.
[1238] Step 2:
[1239] The server retrieves and displays existing schedule data.
[1240] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[1241] Step 3:
[1242] The user inputs the available dates for each participant.
[1243] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[1244] Step 4:
[1245] The server analyzes everyone's available dates and suggests the best schedule.
[1246] The server analyzes the free schedule data of all participants, calculates the date when the most participants are free, and sends the calculation result to the terminal.
[1247] Step 5:
[1248] The user confirms and confirms the proposed dates.
[1249] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[1250] Shop selection process
[1251] Step 1:
[1252] The user accesses the condition input screen.
[1253] The user opens the application and selects the "Store Selection" menu.
[1254] Step 2:
[1255] The server displays a condition input screen.
[1256] The server sends the condition input screen to the terminal, which displays the condition input screen.
[1257] Step 3:
[1258] The user inputs the desired area, budget, cuisine, etc.
[1259] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[1260] Step 4:
[1261] The server retrieves and filters store information from a database or external API.
[1262] The server calls a database or external API to retrieve store information that matches the criteria, filters the retrieved store information, and generates a list of the most suitable stores.
[1263] Step 5:
[1264] Display the best store for the user.
[1265] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[1266] Team assignment process
[1267] Step 1:
[1268] The user accesses the participant list input screen.
[1269] The user opens the application and selects the "Teaming" menu.
[1270] Step 2:
[1271] The server displays a participant list input screen.
[1272] The server sends a participant list input screen to the terminal, which displays the input screen.
[1273] Step 3:
[1274] The user enters the participant's name.
[1275] The user inputs the participant's name. The device sends the input name to the server.
[1276] Step 4:
[1277] The server will automatically generate teams randomly or based on specified conditions.
[1278] The server runs an algorithm to divide the input participant list into teams randomly or based on specified criteria (e.g., by division), and sends the generated team information to the terminal.
[1279] Step 5:
[1280] Display team division results to the user.
[1281] The terminal displays the team division results to the user.
[1282] Processing of settlement
[1283] Step 1:
[1284] The user accesses the payment entry screen.
[1285] The user opens the application and selects the "Checkout" menu.
[1286] Step 2:
[1287] The server displays the payment entry screen.
[1288] The server sends the payment input screen to the terminal, which displays the input screen.
[1289] Step 3:
[1290] The user enters the total cost and each participant's share of the payment.
[1291] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[1292] Step 4:
[1293] The server automatically calculates the payment amount for each participant.
[1294] The server calculates the payment amount for each participant based on the total cost and the payment percentage, and sends the calculation result to the terminal.
[1295] Step 5:
[1296] Display billing information for each participant to the user.
[1297] The terminal displays each participant's billing information to the user.
[1298] The above is a specific flow of processing based on the present invention.
[1299] Example 1
[1300] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1301] In the past, when hosting a social gathering, the procedures for scheduling, choosing a restaurant, dividing into teams, and settling the bill were all often done manually, placing a heavy burden on the organizer. Furthermore, when there were a large number of participants or diverse requests, coordination could easily become complicated. Furthermore, there was a lack of an efficient system to smoothly carry out each procedure.
[1302] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1303] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for the user to confirm and save the proposed schedule, means for displaying a screen for the user to input desired conditions, means for acquiring appropriate information based on the conditions, means for presenting the acquired information to the user, means for displaying a screen for inputting a participant list, means for grouping participants randomly or according to specified conditions based on the entered participant information, means for presenting the group information to the user, means for displaying a screen for inputting a total cost and a payment rate, means for calculating each individual's share of the cost based on the total cost and the payment rate, and means for presenting the calculation result to the user. This allows each procedure for hosting a social gathering to be performed efficiently on a single platform, reducing the burden on organizers and dramatically improving the efficiency of coordination work.
[1304] A "user" is someone who uses this system to make arrangements for a social gathering.
[1305] "Schedule adjustment" is a process in which the user inputs the available dates of the participants and the server proposes the most suitable dates.
[1306] "Condition input" is the process in which the user inputs the desired conditions (area, budget, cuisine genre, etc.).
[1307] The "participant list" is a list of names and information of people who will be attending the social gathering.
[1308] "Grouping" is the process of dividing participants into multiple groups based on specified conditions or randomly, based on the input participant list.
[1309] "Total cost" is the total cost of the entire social gathering.
[1310] "Payment Percentage" means the percentage of the Total Costs payable by each Participant.
[1311] "Cost" refers to the specific payment amount for each participant calculated based on the total cost percentage.
[1312] A "server" is a central processing unit that receives information input by a user and performs analysis, information acquisition, calculation processing, etc.
[1313] A "terminal" is a device operated by a user that mainly performs data communication with a server.
[1314] A "database" is a data storage device that allows a server to save and manage various information.
[1315] An "external API" is a program interface for obtaining necessary information from external services.
[1316] The present invention provides a system for streamlining the procedures required when a user holds a social gathering such as a year-end party, a welcome party, etc. This system is implemented as a web application or a mobile application and has a user-friendly interface.
[1317] Schedule adjustment
[1318] The user opens the application and selects the "Schedule Adjustment" menu. The device then displays the schedule entry screen. The user enters the free dates of the participants, and the device sends this information to the server. The server analyzes the received schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in the database.
[1319] For example, when a user wants to arrange a date for a year-end party, they input the available dates for all participants through the application. The server then calculates the optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[1320] Choosing a restaurant
[1321] The user opens the application and selects the "Select a Restaurant" menu. The device displays a screen for entering desired criteria (area, budget, cuisine, etc.). Once the user enters the criteria, the device sends the information to the server. The server uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[1322] As a specific example, if a user is looking for an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter their search criteria and the server will list restaurants that meet the criteria and display them on the terminal.
[1323] Team Division
[1324] The user opens the application and selects the "Team Assignment" menu. The device displays a participant list entry screen. When the user enters the participant list, the device sends the information to the server. The server assigns the participants to teams randomly or based on specified conditions, and sends the results to the device.
[1325] As a concrete example, if you want to randomly divide 30 participants into five tables, when the user inputs the participant list, the server will randomly generate five groups and display the results on the terminal.
[1326] settlement
[1327] The user opens the application and selects the "Payment" menu. The terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends that information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[1328] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[1329] Prompt Sentence Examples
[1330] Here's an example prompt to ask the system to arrange a social gathering:
[1331] "I'd like to coordinate schedules for a social gathering we're holding. Please let me know the best date so that everyone can attend. Next, I'd like to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen. I'd also like to know how to randomly divide the 30 participants into 5 tables. Finally, I'd like to settle the total fee of 15,000 yen fairly among 15 people, so please show me the amount each person will pay."
[1332] As described above, the system of the present invention aims to provide a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[1333] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1334] Step 1:
[1335] The user opens the application and selects the "Schedule" menu.
[1336] Input: User action (select "Schedule Adjustment" menu).
[1337] Output: The schedule entry screen is displayed on the terminal.
[1338] Specific operation: The terminal sends a request to the server to display the schedule input screen, and the server returns the schedule input screen information to the terminal in response to this.
[1339] Step 2:
[1340] The user inputs the available dates of the participants and clicks the "Submit" button.
[1341] Input: Participant's available dates (user input).
[1342] Output: The device sends the input data to the server.
[1343] Specific operation: When the user enters the available dates for each participant on the schedule input screen and clicks the send button, the device sends this information to the server in JSON format.
[1344] Step 3:
[1345] The server analyzes the received schedule information and suggests a schedule that will allow the most people to participate.
[1346] Input: Submitted schedule information (JSON format).
[1347] Output: Calculation result of optimal schedule.
[1348] Specific operation: The server analyzes the received schedule information, compares it with the free days of each participant, and uses an algorithm to calculate the schedule that the maximum number of participants can attend.
[1349] Step 4:
[1350] The server transmits the proposed schedule to the terminal and displays it on the terminal.
[1351] Input: The calculated best dates.
[1352] Output: The proposed itinerary is displayed on the terminal.
[1353] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the results on the screen.
[1354] Step 5:
[1355] The user reviews and confirms the proposed dates.
[1356] Input: User confirms and confirms the proposed schedule.
[1357] Output: The date is confirmed and saved.
[1358] Specific operation: When the user checks the schedule and clicks the confirm button, the terminal notifies the server of this operation, and the server saves the confirmed schedule in the database.
[1359] Step 6:
[1360] The user opens the application and selects the "Store Selection" menu.
[1361] Input: User operation (selecting the "Select a store" menu).
[1362] Output: The condition input screen is displayed on the terminal.
[1363] Specific operation: The terminal sends a request to the server to display a condition input screen, and the server returns the information on the condition input screen to the terminal in response to this.
[1364] Step 7:
[1365] The user enters the desired conditions (area, budget, cuisine, etc.) and clicks the "Submit" button.
[1366] Input: Desired conditions (user input).
[1367] Output: The device sends the input data to the server.
[1368] Specific operation: When the user enters the desired area, budget, and cuisine genre into the condition input screen and clicks the send button, the device sends this information to the server in JSON format.
[1369] Step 8:
[1370] Based on the conditions received by the server, store information is searched for using a database or external API.
[1371] Input: Submitted desired conditions (JSON format).
[1372] Output: Store information that matches the conditions.
[1373] Specific operation: The server calls a database or external API based on the desired conditions, and retrieves and selects store information that matches the conditions.
[1374] Step 9:
[1375] The server transmits the acquired store information to the terminal and presents it on the terminal.
[1376] Input: Store information obtained.
[1377] Output: Candidate store information is displayed on the terminal.
[1378] Specific operation: The server sends the selected store information to the terminal, and the terminal displays the information on the screen.
[1379] Step 10:
[1380] The user opens the application and selects the "Teaming" menu.
[1381] Input: User action (selecting the "Teaming" menu).
[1382] Output: The participant list input screen is displayed on the terminal.
[1383] Specific operation: The terminal sends a request to the server to display the participant list input screen, and the server returns the information of the participant list input screen to the terminal in response to this.
[1384] Step 11:
[1385] The user enters the participant list and clicks the "Submit" button.
[1386] Input: Participant list (user input).
[1387] Output: The device sends the input data to the server.
[1388] Specific operation: When the user enters the participant list and clicks the send button, the terminal sends this information to the server in JSON format.
[1389] Step 12:
[1390] Based on the participant list received by the server, participants are grouped randomly or according to specified conditions.
[1391] Input: The submitted participant list (JSON format).
[1392] Output: Separated group information.
[1393] Specific operation: The server analyzes the participant list using an algorithm, either randomly or based on specified conditions, and groups them.
[1394] Step 13:
[1395] The server transmits the grouping information to the terminal and presents it to the terminal.
[1396] Input: Separated group information.
[1397] Output: The grouping results are displayed on the terminal.
[1398] Specific operation: The server sends the generated grouping information to the terminal, and the terminal displays the information on the screen.
[1399] Step 14:
[1400] The user opens the application and selects the "Checkout" menu.
[1401] Input: User operation (selecting the "Checkout" menu).
[1402] Output: The payment entry screen is displayed on the terminal.
[1403] Specific operation: The terminal sends a request to the server to display the settlement input screen, and the server responds by sending the information on the settlement input screen back to the terminal.
[1404] Step 15:
[1405] The user enters the total cost and payment percentage and clicks the "Submit" button.
[1406] Input: Total cost and payment percentage (user input).
[1407] Output: The device sends the input data to the server.
[1408] Specific operation: When the user enters the total cost and payment percentage and clicks the submit button, the terminal sends this information to the server in JSON format.
[1409] Step 16:
[1410] The server calculates each participant's share based on the total cost and the payment percentage.
[1411] Input: Submitted total cost and payment percentage (JSON format).
[1412] Output: The amount contributed by each participant.
[1413] Specific operation: The server applies a calculation algorithm based on the total cost and payment ratio to calculate the amount each participant will pay.
[1414] Step 17:
[1415] The server sends the payment calculation result to the terminal and presents it to the terminal.
[1416] Input: Calculated contribution amount for each participant.
[1417] Output: The amount of the charge is displayed on the terminal.
[1418] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the information on the screen.
[1419] (Application example 1)
[1420] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1421] When preparing for a social gathering or party, the process of scheduling the date and time, selecting the menu, managing the participants, and settling the costs is complicated, placing a heavy burden on the organizer. Additionally, selecting the optimal menu that reflects each participant's wishes and preferences, and the process of settling the costs, are also complicated. A system that can solve these problems and allow for smooth and efficient preparations is needed.
[1422] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1423] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for having the user confirm and save the proposed schedule, means for creating an event and inviting participants, means for displaying a screen for inputting each participant's desired conditions, means for proposing a delivery menu based on the conditions, means for aggregating each participant's order and arranging delivery, and means for calculating the total cost and settling the account. This allows for efficient preparation for a social gathering or party, reduces the burden on the organizer, and enables the selection of an optimal menu according to each participant's wishes and settlement of the costs.
[1424] "Schedule adjustment" is the process of collecting information on the user's available dates and times, proposing and deciding on the most suitable schedule.
[1425] An "input screen" is a portion of an interface provided for a user to input information.
[1426] "Schedule information" is data on available dates and time slots provided by the user.
[1427] "Analysis" is a method of calculating based on input data to derive optimal dates and conditions.
[1428] "Proposal" is the process of showing the user the optimal schedule and conditions obtained through analysis.
[1429] "Storage" refers to the act of recording the confirmed information in the system's database.
[1430] "Event Creation" is the process by which a user sets up a new gathering or party.
[1431] "Inviting participants" is an act by a user inviting other people to participate in an event.
[1432] "Preferences" refer to specific requirements or preferences provided by a user.
[1433] A "Delivery Menu" is a selection of meals that can be ordered online.
[1434] "Order aggregation" is the process of summarizing the orders of each participant.
[1435] "Delivery arrangements" refers to preparing meals to be delivered to each participant based on the aggregated orders.
[1436] "Total Cost" means the total cost of all Participant's orders.
[1437] "Settlement" is the process of calculating the amount owed by each participant and completing the payment process.
[1438] This invention is a system for efficiently preparing events such as social gatherings and online parties. The system is realized by a user's terminal (smartphone or PC) and a server.
[1439] First, the user opens the application on their device and accesses the event settings screen. Here, an input screen for scheduling is displayed, and the user enters the dates they can attend. The entered schedule information is sent to the server, which analyzes the information and suggests the most suitable dates. The suggested dates are displayed on the device, and the user can confirm and confirm them, after which the server saves the information in a database.
[1440] Next, after the event is confirmed, an invitation function is activated to invite participants. The user registers participants on their terminal and sends invitations. Each participant accesses a screen to enter their preferences and allergy information and enters their desired conditions. This information is also sent to the server, which then suggests an appropriate delivery menu based on the conditions. The suggested menu is presented to the user, who makes the final selection.
[1441] Once the order details are confirmed, the server will compile the orders from each participant and arrange for delivery. It is possible to link with specific delivery services, and the order data will be automatically sent to the delivery service. Once the delivery arrangements are complete, each participant will be notified.
[1442] The final function is to settle the total cost. The user accesses the settlement screen and enters the total cost and each participant's payment percentage. Based on this information, the server calculates the payment amount for each participant and proceeds with the payment process via an electronic payment service. Once payment is complete, a confirmation message is sent to the participant.
[1443] The following key technologies are used as components of this system:
[1444] Hardware: AWS EC2 (virtual server), user devices (smartphones, PCs, etc.)
[1445] Software: React Native (smartphone application), React.js (web application), Node.js (server-side logic)
[1446] APIs and databases: Zomato API (delivery search), Stripe API (electronic payments), Amazon RDS (database)
[1447] As a concrete example, let's look at a scenario where User A is hosting an online year-end party. User A opens the app, schedules an online year-end party from 7:00 PM to 9:00 PM on December 15th, and invites Participants B and C. Participant B enters the desired conditions of "budget under 3,000 yen, gluten-free." The server uses the Zomato API to suggest menu items that meet these conditions, and everyone confirms the delivery menu from "Italian Restaurant X." After the order is confirmed, the data is sent to the delivery service, and delivery arrangements are made. Finally, the Stripe API is used to complete the payment process for each participant.
[1448] An example of a prompt to input to a generative AI model is:
[1449] This article explains the process for the "Food Fest Delivery" app, where users select a delivery menu for an online party and settle the costs. After users enter the date and time and the number of participants, they enter their desired conditions (budget, food preferences, etc.), and the app suggests the most suitable restaurant and menu via the Zomato API. The app then confirms the final order and settles the costs via the Stripe API.
[1450] This allows the functions of the entire system to work together smoothly, enabling efficient preparation for events.
[1451] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1452] Step 1:
[1453] The user opens the application on their device and accesses the event setting screen. The user enters the available dates and details of the event. The input data includes the date (e.g., December 15th, 7:00 PM to 9:00 PM) and the name of the event (e.g., "Online Year-End Party"). This information is sent to the server.
[1454] Step 2:
[1455] The server analyzes the schedule information received and proposes the optimal schedule. An algorithm is used for the analysis to check the availability of each participant. Data processing involves aggregating the schedule data of all participants and identifying the date when the most participants are available. The analysis results are sent to the device and displayed to the user.
[1456] Step 3:
[1457] The user confirms and confirms the proposed schedule. The confirmed schedule is saved on the server and recorded in the database. The saved data includes the event ID, confirmed schedule, and participant information.
[1458] Step 4:
[1459] To invite participants, the user goes to the participant registration screen. The user enters the participant's contact information and sends the invitation. The input data is sent to the server, and an invitation email is automatically generated for the participant. The email sent contains the event details and a link to participate.
[1460] Step 5:
[1461] Participants receive an invitation email and click the link to access the event page. They enter their desired conditions (budget, allergy information, etc.). The entered data is sent to the server, which stores this information in a database.
[1462] Step 6:
[1463] The server proposes an appropriate delivery menu based on the participant's desired conditions. The server calls the Zomato API and searches for menus that match the entered conditions (e.g., budget 3,000 yen, gluten-free). The search results are sent to the terminal and presented to the user.
[1464] Step 7:
[1465] The user and participants review the proposed menu and finalize the order. The finalized order is sent to the server, which aggregates the orders of each participant. The server then arranges delivery based on the aggregated data.
[1466] Step 8:
[1467] The server sends the order details and delivery address information to the delivery service. Once the delivery arrangements are complete, a notification is sent to each participant. The notification includes an order confirmation and an estimated delivery time.
[1468] Step 9:
[1469] The user accesses the total cost settlement screen and enters the payment percentage. The server calculates the payment amount for each participant based on the total cost and processes the payment using the Stripe API. The payment information is sent to the terminal, and a payment confirmation message is displayed to each participant.
[1470] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1471] MODE FOR CARRYING OUT THE INVENTION
[1472] This invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or a welcome party. This system is implemented as a web or mobile application and is equipped with an emotion engine that recognizes the user's emotions. By taking the user's emotional state into account at each stage of the event planning process, the emotion engine can provide more appropriate suggestions and results.
[1473] Schedule adjustment
[1474] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays a schedule entry screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which uses the analysis results to propose the optimal schedule that will most satisfy the participants. The proposed schedule is displayed on the device, and once the user confirms the schedule, the server saves it in a database.
[1475] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the emotion engine analyzes the user's level of tension and stress. Based on this information, the server proposes an optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[1476] Choosing a restaurant
[1477] When a user opens the application and selects the "Select Restaurant" menu, the device displays a screen for entering criteria. The user enters criteria such as desired area, budget, and cuisine, and the emotion engine analyzes the user's current emotional state. The device then sends this information to the server, which uses the analysis results to obtain information on restaurants that will best satisfy the user and presents it on the device.
[1478] For example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they input that criteria, and the emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious). Based on that information, the server creates a list of restaurants that best fit the criteria and displays it to the user.
[1479] Team Division
[1480] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which then assigns the participants to teams randomly or based on specified criteria (e.g., emotional balance) based on the analysis results, and displays the results on the device.
[1481] For example, if you want to randomly divide 30 participants into 5 tables, the user inputs the participant list, and the emotion engine analyzes the user's emotional state. Based on that information, the server generates teams that take into account the emotional balance within the group, and displays the results to the user.
[1482] settlement
[1483] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's current emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays them on the terminal.
[1484] As a concrete example, if the total membership fee is 15,000 yen and 15 people participate, the user inputs the total amount, and the emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied). Based on that information, the server calculates the fair and satisfying payment amount and displays the result to the user.
[1485] As described above, the system of the present invention provides various support functions that take into consideration the user's feelings, and not only reduces the burden on the organizer but also increases user satisfaction.
[1486] The processing flow will be explained below.
[1487] Schedule adjustment process
[1488] Step 1:
[1489] The user accesses the appointment entry screen.
[1490] The user opens the application and selects the "Schedule" menu.
[1491] Step 2:
[1492] The server retrieves and displays existing schedule data.
[1493] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[1494] Step 3:
[1495] The user inputs the available dates for each participant.
[1496] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[1497] Step 4:
[1498] The emotion engine analyzes the user's emotions.
[1499] The terminal sends the user's emotional state along with the entered schedule information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., stress level, relaxation level) to the server.
[1500] Step 5:
[1501] The server analyzes everyone's available dates and suggests the best schedule.
[1502] The server analyzes the free schedule data of all participants and the emotion data obtained from the emotion engine, proposes the most satisfying schedule, and sends the calculation results to the terminal.
[1503] Step 6:
[1504] The user confirms and confirms the proposed dates.
[1505] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[1506] Shop selection process
[1507] Step 1:
[1508] The user accesses the condition input screen.
[1509] The user opens the application and selects the "Store Selection" menu.
[1510] Step 2:
[1511] The server displays a condition input screen.
[1512] The server sends the condition input screen to the terminal, which displays the condition input screen.
[1513] Step 3:
[1514] The user inputs the desired area, budget, cuisine, etc.
[1515] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[1516] Step 4:
[1517] The emotion engine analyzes the user's emotions.
[1518] The terminal sends the user's emotional state along with the input condition information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., expectation, stress level) to the server.
[1519] Step 5:
[1520] The server retrieves and filters store information from a database or external API.
[1521] The server calls a database or external API to retrieve the best store information based on the conditions and sentiment data, then filters the retrieved store information to generate the most suitable store list.
[1522] Step 6:
[1523] Display the best store for the user.
[1524] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[1525] Team assignment process
[1526] Step 1:
[1527] The user accesses the participant list input screen.
[1528] The user opens the application and selects the "Teaming" menu.
[1529] Step 2:
[1530] The server displays a participant list input screen.
[1531] The server sends a participant list input screen to the terminal, which displays the input screen.
[1532] Step 3:
[1533] The user enters the participant's name.
[1534] The user inputs the participant's name. The device sends the input name to the server.
[1535] Step 4:
[1536] The emotion engine analyzes the user's emotions.
[1537] The terminal sends the user's emotional state along with the entered participant information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., excitement level, tension level) to the server.
[1538] Step 5:
[1539] The server will automatically generate teams randomly or based on specified conditions.
[1540] The server runs an algorithm to divide the input participant list into teams randomly or according to specified conditions (e.g., emotional balance) based on emotional data, and sends the generated team information to the terminal.
[1541] Step 6:
[1542] Display team division results to the user.
[1543] The terminal displays the team division results to the user.
[1544] Processing of settlement
[1545] Step 1:
[1546] The user accesses the payment entry screen.
[1547] The user opens the application and selects the "Checkout" menu.
[1548] Step 2:
[1549] The server displays the payment entry screen.
[1550] The server sends the payment input screen to the terminal, which displays the input screen.
[1551] Step 3:
[1552] The user enters the total cost and each participant's share of the payment.
[1553] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[1554] Step 4:
[1555] The emotion engine analyzes the user's emotions.
[1556] The terminal sends the user's emotional state along with the entered payment information to the emotion engine, which analyzes the emotion data and sends the user's current emotional state (e.g., satisfaction level, stress level) to the server.
[1557] Step 5:
[1558] The server automatically calculates the payment amount for each participant based on the total cost, payment rate, and emotional data.
[1559] The server calculates the payment amount for each participant based on the total cost, payment percentage, and emotion data, and sends the calculation results to the terminal.
[1560] Step 6:
[1561] Display billing information for each participant to the user.
[1562] The terminal displays each participant's billing information to the user.
[1563] The above is a specific flow of processing based on the present invention.
[1564] Example 2
[1565] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1566] In the past, planning and hosting social gatherings required manual processes such as scheduling, selecting restaurants, dividing teams, and settling bills, which took a lot of time and effort. It was also difficult to consider the emotions and satisfaction of participants, making it difficult to achieve a result that satisfied all participants. There is a need to solve these issues and realize efficient and satisfying social gatherings.
[1567] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1568] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring schedule information entered by the user and analyzing the user's emotional state using an emotion engine, means for proposing an optimal schedule based on the analysis, and means for having the user confirm and save the proposed schedule. This enables optimal schedule proposals that take the user's emotions into consideration. The server also includes means for displaying a screen for entering user-desired conditions, means for acquiring appropriate store information based on the conditions, and means for analyzing the user's emotional state using an emotion engine and presenting the acquired store information to the user. This enables store selection that takes the user's emotions into consideration. Additionally, the server includes means for displaying a screen for entering a participant list, means for analyzing the user's emotional state using an emotion engine based on the entered participant information, and dividing the team randomly or according to specified conditions, and means for presenting the divided team information to the user. This enables team division that takes the user's emotions into consideration.
[1569] "User" refers to an individual or organization that uses this system to plan and manage social gatherings.
[1570] "Scheduling" refers to the process of coordinating dates that are convenient for all participants and determining the optimal date.
[1571] An "emotion engine" refers to a software or hardware mechanism for analyzing a user's emotional state.
[1572] "Input screen" refers to an interface for the user to input required information.
[1573] "Analysis" refers to the process of calculation and judgment that processes input data and information on the user's emotional state to arrive at the optimal result.
[1574] The "optimal date" refers to the date that will satisfy all participants the most.
[1575] "Store information" refers to store information based on the conditions desired by the user.
[1576] "Teaming" refers to the process of dividing participants into multiple groups based on the input participant list.
[1577] "Database" refers to a digital storage system for managing and storing necessary information.
[1578] This invention is a system for planning and managing social gatherings efficiently, implemented as a web or mobile application. This system analyzes the user's emotions and makes optimal suggestions during each process: scheduling, restaurant selection, team assignment, and payment.
[1579] Schedule adjustment
[1580] When a user opens the application and selects the schedule adjustment menu, the device displays the schedule input screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then proposes the most suitable date based on the analysis results. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in a database.
[1581] Examples:
[1582] When a user wants to arrange the date of a year-end party, the user inputs the free dates of all the participants through the application.
[1583] The emotion engine analyzes the user's level of tension and stress.
[1584] The server uses this information to suggest the best schedule and displays it to the user.
[1585] The optimal schedule is determined by the user confirming and confirming the proposed schedule.
[1586] Choosing a restaurant
[1587] When a user opens the application and selects the restaurant selection menu, the device displays a criteria input screen. The user enters criteria such as desired area, budget, and cuisine type, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then retrieves the most suitable restaurant information based on the analysis results and presents it to the user.
[1588] Examples:
[1589] If a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they enter that criteria.
[1590] The emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious).
[1591] Based on this information, the server creates a list of the best stores that meet the criteria and displays it to the user.
[1592] Team Division
[1593] When a user opens the application and selects the team assignment menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then assigns teams based on the analysis results, either randomly or according to specified criteria, and presents the results to the user.
[1594] Examples:
[1595] If the user wants to randomly divide 30 participants into 5 tables, enter the participant list.
[1596] An emotion engine analyzes the user's emotional state.
[1597] The server generates a team based on this information, taking into account the emotional balance within the group, and displays the results to the user.
[1598] settlement
[1599] When a user opens the application and selects the payment menu, the terminal displays the payment input screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays the results on the terminal.
[1600] Examples:
[1601] If the total membership fee is 15,000 yen and 15 people are participating, the user enters the total amount.
[1602] An emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied).
[1603] The server calculates a fair and satisfactory payment amount based on that information and displays the result to the user.
[1604] In this way, the user uses the application at each stage of the process, the emotion engine analyzes the user's emotional state, and the server makes optimal suggestions, thereby streamlining the planning and management of social gatherings and increasing participant satisfaction.
[1605] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1606] Schedule adjustment
[1607] Step 1:
[1608] The user opens the application on their smartphone or PC and selects the "Schedule Adjustment" menu.
[1609] Input: User-initiated application launch and menu selection
[1610] Output: The schedule entry screen is displayed.
[1611] Step 2:
[1612] The device displays the schedule entry screen.
[1613] Input: Based on user menu selection
[1614] Output: Input fields such as start date / time, end date / time, and participant list are displayed.
[1615] Step 3:
[1616] The user inputs the available dates of the participants.
[1617] Input: Available dates for each participant
[1618] Output: Dataset containing the input schedule information
[1619] Step 4:
[1620] An emotion engine analyzes the user's current emotional state.
[1621] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1622] Output: Emotional state data as analysis results (e.g., stress level)
[1623] Step 5:
[1624] The terminal transmits this information to the server.
[1625] Input: User-entered schedule information and emotional state data
[1626] Output: Data sent to the server
[1627] Step 6:
[1628] The server will suggest the optimal schedule based on the analysis results.
[1629] Input: Received schedule information and emotional state data
[1630] Output: Calculated optimal schedule data
[1631] Step 7:
[1632] The device will display the suggested dates.
[1633] Input: Optimal schedule data received from the server
[1634] Output: The proposed dates are displayed.
[1635] Step 8:
[1636] Once the user confirms the date, the server stores the date in a database.
[1637] Input: Confirmed schedule data
[1638] Output: Schedule data saved in the database
[1639] Choosing a restaurant
[1640] Step 1:
[1641] The user opens the application and selects the "Store Selection" menu.
[1642] Input: User-operated menu selection
[1643] Output: The condition input screen is displayed.
[1644] Step 2:
[1645] The terminal displays a screen for entering conditions.
[1646] Input: Based on user menu selection
[1647] Output: Input fields such as area, budget, cuisine, etc. are displayed.
[1648] Step 3:
[1649] The user inputs the desired conditions.
[1650] Input: desired area, budget, cuisine, etc.
[1651] Output: Data set that stores the input condition data
[1652] Step 4:
[1653] An emotion engine analyzes the user's current emotional state.
[1654] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1655] Output: Emotional state data as the analysis result (e.g., relaxation level)
[1656] Step 5:
[1657] The terminal transmits this information to the server.
[1658] Input: Input condition data and emotional state data
[1659] Output: Data sent to the server
[1660] Step 6:
[1661] The server will suggest the most suitable store based on the analysis results.
[1662] Input: Received condition data and emotional state data
[1663] Output: Best store information that matches the criteria
[1664] Step 7:
[1665] The device will display suggested store information.
[1666] Input: Store information received from the server
[1667] Output: Suggested store information is displayed.
[1668] Team Division
[1669] Step 1:
[1670] The user opens the application and selects the "Teaming" menu.
[1671] Input: User-operated menu selection
[1672] Output: The participant list entry screen is displayed
[1673] Step 2:
[1674] The terminal displays a participant list input screen.
[1675] Input: Based on user menu selection
[1676] Output: Participant information input fields are displayed
[1677] Step 3:
[1678] The user enters the participant list.
[1679] Input: List of participants' names, number of participants, etc.
[1680] Output: A dataset containing the entered participant list data
[1681] Step 4:
[1682] An emotion engine analyzes the user's current emotional state.
[1683] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1684] Output: Emotional state data as the analysis result (e.g., excitement level)
[1685] Step 5:
[1686] The terminal transmits this information to the server.
[1687] Input: Entered participant list data and emotional state data
[1688] Output: Data sent to the server
[1689] Step 6:
[1690] The server will assign teams based on the analysis results.
[1691] Input: Received participant list data and emotional state data
[1692] Output: Team-based results data
[1693] Step 7:
[1694] The device will display the team results.
[1695] Input: Team division result data received from the server
[1696] Output: Team division results are displayed
[1697] settlement
[1698] Step 1:
[1699] The user opens the application and selects the "Checkout" menu.
[1700] Input: User-operated menu selection
[1701] Output: The payment entry screen is displayed.
[1702] Step 2:
[1703] The terminal displays the payment entry screen.
[1704] Input: Based on user menu selection
[1705] Output: Total cost and payment percentage input fields are displayed.
[1706] Step 3:
[1707] The user enters the total cost and each participant's share of the payment.
[1708] Inputs: Total cost and each participant's payment percentage
[1709] Output: A dataset containing the total cost and payment rate data entered
[1710] Step 4:
[1711] An emotion engine analyzes the user's emotional state.
[1712] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[1713] Output: Emotional state data as the analysis result (e.g., satisfaction level)
[1714] Step 5:
[1715] The terminal transmits this information to the server.
[1716] Input: Total cost data, payment rate data, and emotional state data
[1717] Output: Data sent to the server
[1718] Step 6:
[1719] The server calculates the payment amount for each participant based on the analysis results.
[1720] Input: Received total cost data, payment rate data, emotional state data
[1721] Output: Payment data for each participant
[1722] Step 7:
[1723] The terminal displays the calculation results.
[1724] Input: Payment data received from the server
[1725] Output: Shows the payment amount for each participant
[1726] (Application example 2)
[1727] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1728] Modern self-driving vehicles lack the means to enhance the comfort and satisfaction of users during their journeys. Especially during long journeys, it is necessary to properly recognize the user's emotional state and respond appropriately. However, conventional systems are unable to perform emotion analysis. Therefore, even when a user feels fatigued or stressed, it is difficult to recommend facilities that address the user's needs, limiting the user's experience.
[1729] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1730] In this invention, the server includes emotion analysis means for analyzing the emotional state of the user while riding, recommendation means for recommending facilities near the current location based on the analysis results, and means for presenting information about the recommended facilities to the user. This makes it possible to recognize the emotional state of the user in real time and recommend the most appropriate facility accordingly.
[1731] An "autonomous vehicle" is a vehicle that can perform driving operations autonomously.
[1732] A "user" is a person who uses an autonomous vehicle.
[1733] "Emotion analysis means" refers to a system or software for recognizing and analyzing a user's emotional state.
[1734] The "recommendation means" is a means for selecting and recommending appropriate facilities and stores based on the analyzed emotional state and user preferences.
[1735] "Facility information" is information about places and services that can be provided to users, such as restaurants, cafes, and rest areas.
[1736] An "input screen" is an interface for a user to input information.
[1737] "Means for presenting to the user" refers to a display or notification system that shows the analysis results and recommended information to the user.
[1738] A "participant list" is a list containing names and information about people participating in an event or activity.
[1739] A "grouping means" is a method or program for forming groups based on a participant list, either randomly or according to specific conditions.
[1740] The present invention is a system developed to improve user comfort and satisfaction in autonomous vehicles. This system utilizes emotion analysis and recommendation means installed in the autonomous vehicle to recommend facilities based on the user's emotional state.
[1741] 1. Emotion analysis means:
[1742] Cameras and sensors inside the autonomous vehicle collect video and biometric data of the user. This data is analyzed by an emotion analysis module (e.g., sentiment_analysis_module) to determine the user's real-time emotional state. The analysis uses machine learning algorithms to determine, for example, whether the user is tired, relaxed, or stressed.
[1743] 2. Recommendation method:
[1744] Based on the results of the sentiment analysis, the system provides users with information about recommended facilities near their current location. To do this, a restaurant recommendation module (e.g., restaurant_recommender_module) runs, searches for relevant facilities, and lists appropriate candidates. The recommendation mechanism takes into account the user's current location information (GPS data) and preferences (pre-set cuisine genre and budget) to suggest the most suitable facilities.
[1745] 3. System operation steps:
[1746] An example of the system's operation procedure is the following process: For example, if the user feels tired after a long drive, the system recommends a facility where the user can relax.
[1747] For example, if a user is driving in the Shibuya area of Tokyo, tired from a long drive, and wants to find a relaxing Italian restaurant:
[1748] Example prompt sentence:
[1749] plaintext
[1750] User ID: 1
[1751] Recent activity: Long drive
[1752] Current Location: Shibuya, Tokyo
[1753] Preferences: Italian food, mid-range budget
[1754] Emotional state: Tired
[1755] Based on this, the system will recommend relaxing Italian restaurants in the Shibuya area, providing results such as "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars."
[1756] The hardware includes the navigation system, cameras, sensors, and displays within the autonomous vehicle, while the software includes an emotion analysis module and a restaurant recommendation module, which can recognize the user's emotional state in real time and recommend the most suitable establishments, improving the user experience.
[1757] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1758] Step 1:
[1759] A user gets into an autonomous vehicle and the system collects the user's biometric and video data.
[1760] Input: User images and biometric signals (e.g., heart rate, facial expressions, etc.)
[1761] Output: Collected biometric and video data
[1762] Specific operation: Cameras and sensors installed in the vehicle capture biometric data such as the user's facial expressions and heart rate in real time and transmit it to the system.
[1763] Step 2:
[1764] The server inputs the received user data into an emotion analysis module to analyze the user's emotional state.
[1765] Input: collected biometric and video data
[1766] Output: User's emotional state (e.g. tired, relaxed, stressed)
[1767] How it works: The sentiment analysis module analyzes the collected data using machine learning algorithms to determine the user's current sentiment.
[1768] Step 3:
[1769] Based on the analysis results, the server searches for and recommends appropriate facilities near the current location.
[1770] Input: User's emotional state, current location, user preferences (genre, budget, etc.)
[1771] Output: List of recommended facilities
[1772] Specific operation: The recommendation means acquires the user's current location (GPS data) and activates the facility recommendation module based on the user's preferences (e.g., Italian food, budget range) and emotional state. It generates a list of optimal facilities and returns it to the server.
[1773] Step 4:
[1774] The server transmits the recommended facility information to the terminal and presents it to the user.
[1775] Input: List of recommended facilities
[1776] Output: Facility information displayed on the user's device
[1777] Specific operation: Information about the recommended establishment (establishment name, address, rating, etc.) is displayed on the device display. For example, "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars" is displayed.
[1778] Step 5:
[1779] The user checks the displayed facility information and selects one.
[1780] Input: User selection
[1781] Output: Selected facility information
[1782] Specific operation: The user selects the facility they wish to visit from the facility information displayed on the screen, and this operation is recorded in the system.
[1783] Step 6:
[1784] The server records the selected facility information and sets the destination in the navigation system.
[1785] Input: Selected facility information
[1786] Output: Destination set in the navigation system
[1787] Specific operation: The server sends the address of the selected facility to the navigation system, the autonomous vehicle sets the destination to head to the facility, and begins route guidance.
[1788] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1789] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1790] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1791] [Fourth embodiment]
[1792] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1793] 7, a 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.
[1794] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1795] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1796] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1797] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1798] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1799] The control object 443 includes a display device, LEDs in the eyes, and motors for driving 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 emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1800] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1801] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[1802] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1803] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1804] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1805] MODE FOR CARRYING OUT THE INVENTION
[1806] The present invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or welcome party. This system is implemented as a web or mobile application and has a user-friendly interface.
[1807] The present invention provides a system including the following steps.
[1808] Schedule adjustment
[1809] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays the schedule entry screen. When the user enters the free dates of the participants, the device sends that information to the server. The server analyzes the acquired schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and when the user confirms the date, the server saves it in the database.
[1810] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the server proposes the most suitable date and displays it to the user. The user confirms and confirms the proposed date, and the most suitable date is decided.
[1811] Choosing a restaurant
[1812] When a user opens the application and selects the "Select a Restaurant" menu, the device displays a search criteria input screen. Once the user enters criteria such as the desired area, budget, and cuisine, the device sends that information to the server. The server then uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[1813] As a concrete example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter that criteria and the server will list restaurants that meet the criteria and display them to the user.
[1814] Team Division
[1815] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. Once the user enters the participant list, the device sends the information to the server. The server assigns teams randomly or based on specified criteria and sends the results to the device.
[1816] As a concrete example, if you want to randomly divide 30 participants into 5 tables, the user can input the participant list, and the server will randomly generate 5 groups and display the results to the user.
[1817] settlement
[1818] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends the information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[1819] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[1820] As described above, the system of the present invention provides a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[1821] The processing flow will be explained below.
[1822] Schedule adjustment process
[1823] Step 1:
[1824] The user accesses the appointment entry screen.
[1825] The user opens the application and selects the "Schedule" menu.
[1826] Step 2:
[1827] The server retrieves and displays existing schedule data.
[1828] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[1829] Step 3:
[1830] The user inputs the available dates for each participant.
[1831] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[1832] Step 4:
[1833] The server analyzes everyone's available dates and suggests the best schedule.
[1834] The server analyzes the free schedule data of all participants, calculates the date when the most participants are free, and sends the calculation result to the terminal.
[1835] Step 5:
[1836] The user confirms and confirms the proposed dates.
[1837] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[1838] Shop selection process
[1839] Step 1:
[1840] The user accesses the condition input screen.
[1841] The user opens the application and selects the "Store Selection" menu.
[1842] Step 2:
[1843] The server displays a condition input screen.
[1844] The server sends the condition input screen to the terminal, which displays the condition input screen.
[1845] Step 3:
[1846] The user inputs the desired area, budget, cuisine, etc.
[1847] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[1848] Step 4:
[1849] The server retrieves and filters store information from a database or external API.
[1850] The server calls a database or external API to retrieve store information that matches the criteria, filters the retrieved store information, and generates a list of the most suitable stores.
[1851] Step 5:
[1852] Display the best store for the user.
[1853] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[1854] Team assignment process
[1855] Step 1:
[1856] The user accesses the participant list input screen.
[1857] The user opens the application and selects the "Teaming" menu.
[1858] Step 2:
[1859] The server displays a participant list input screen.
[1860] The server sends a participant list input screen to the terminal, which displays the input screen.
[1861] Step 3:
[1862] The user enters the participant's name.
[1863] The user inputs the participant's name. The device sends the input name to the server.
[1864] Step 4:
[1865] The server will automatically generate teams randomly or based on specified conditions.
[1866] The server runs an algorithm to divide the input participant list into teams randomly or based on specified criteria (e.g., by division), and sends the generated team information to the terminal.
[1867] Step 5:
[1868] Display team division results to the user.
[1869] The terminal displays the team division results to the user.
[1870] Processing of settlement
[1871] Step 1:
[1872] The user accesses the payment entry screen.
[1873] The user opens the application and selects the "Checkout" menu.
[1874] Step 2:
[1875] The server displays the payment entry screen.
[1876] The server sends the payment input screen to the terminal, which displays the input screen.
[1877] Step 3:
[1878] The user enters the total cost and each participant's share of the payment.
[1879] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[1880] Step 4:
[1881] The server automatically calculates the payment amount for each participant.
[1882] The server calculates the payment amount for each participant based on the total cost and the payment percentage, and sends the calculation result to the terminal.
[1883] Step 5:
[1884] Display billing information for each participant to the user.
[1885] The terminal displays each participant's billing information to the user.
[1886] The above is a specific flow of processing based on the present invention.
[1887] Example 1
[1888] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1889] In the past, when hosting a social gathering, the procedures for scheduling, choosing a restaurant, dividing into teams, and settling the bill were all often done manually, placing a heavy burden on the organizer. Furthermore, when there were a large number of participants or diverse requests, coordination could easily become complicated. Furthermore, there was a lack of an efficient system to smoothly carry out each procedure.
[1890] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1891] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for the user to confirm and save the proposed schedule, means for displaying a screen for the user to input desired conditions, means for acquiring appropriate information based on the conditions, means for presenting the acquired information to the user, means for displaying a screen for inputting a participant list, means for grouping participants randomly or according to specified conditions based on the entered participant information, means for presenting the group information to the user, means for displaying a screen for inputting a total cost and a payment rate, means for calculating each individual's share of the cost based on the total cost and the payment rate, and means for presenting the calculation result to the user. This allows each procedure for hosting a social gathering to be performed efficiently on a single platform, reducing the burden on organizers and dramatically improving the efficiency of coordination work.
[1892] A "user" is someone who uses this system to make arrangements for a social gathering.
[1893] "Schedule adjustment" is a process in which the user inputs the available dates of the participants and the server proposes the most suitable dates.
[1894] "Condition input" is the process in which the user inputs the desired conditions (area, budget, cuisine genre, etc.).
[1895] The "participant list" is a list of names and information of people who will be attending the social gathering.
[1896] "Grouping" is the process of dividing participants into multiple groups based on specified conditions or randomly, based on the input participant list.
[1897] "Total cost" is the total cost of the entire social gathering.
[1898] "Payment Percentage" means the percentage of the Total Costs payable by each Participant.
[1899] "Cost" refers to the specific payment amount for each participant calculated based on the total cost percentage.
[1900] A "server" is a central processing unit that receives information input by a user and performs analysis, information acquisition, calculation processing, etc.
[1901] A "terminal" is a device operated by a user that mainly performs data communication with a server.
[1902] A "database" is a data storage device that allows a server to save and manage various information.
[1903] An "external API" is a program interface for obtaining necessary information from external services.
[1904] The present invention provides a system for streamlining the procedures required when a user holds a social gathering such as a year-end party, a welcome party, etc. This system is implemented as a web application or a mobile application and has a user-friendly interface.
[1905] Schedule adjustment
[1906] The user opens the application and selects the "Schedule Adjustment" menu. The device then displays the schedule entry screen. The user enters the free dates of the participants, and the device sends this information to the server. The server analyzes the received schedule information and proposes a date that allows the most people to participate. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in the database.
[1907] For example, when a user wants to arrange a date for a year-end party, they input the available dates for all participants through the application. The server then calculates the optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[1908] Choosing a restaurant
[1909] The user opens the application and selects the "Select a Restaurant" menu. The device displays a screen for entering desired criteria (area, budget, cuisine, etc.). Once the user enters the criteria, the device sends the information to the server. The server uses a database or external API to retrieve restaurant information that meets the criteria and displays it on the device.
[1910] As a specific example, if a user is looking for an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they can enter their search criteria and the server will list restaurants that meet the criteria and display them on the terminal.
[1911] Team Division
[1912] The user opens the application and selects the "Team Assignment" menu. The device displays a participant list entry screen. When the user enters the participant list, the device sends the information to the server. The server assigns the participants to teams randomly or based on specified conditions, and sends the results to the device.
[1913] As a concrete example, if you want to randomly divide 30 participants into five tables, when the user inputs the participant list, the server will randomly generate five groups and display the results on the terminal.
[1914] settlement
[1915] The user opens the application and selects the "Payment" menu. The terminal displays the payment entry screen. When the user enters the total cost and each participant's payment percentage, the terminal sends that information to the server. The server automatically calculates each participant's payment based on the total cost and payment percentage, and displays the results on the terminal.
[1916] As a specific example, if the total fee is 15,000 yen and 15 people are participating, when the user enters the total amount, the server calculates it as 1,000 yen per person and displays the billing information to the user.
[1917] Prompt Sentence Examples
[1918] Here's an example prompt to ask the system to arrange a social gathering:
[1919] "I'd like to coordinate schedules for a social gathering we're holding. Please let me know the best date so that everyone can attend. Next, I'd like to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen. I'd also like to know how to randomly divide the 30 participants into 5 tables. Finally, I'd like to settle the total fee of 15,000 yen fairly among 15 people, so please show me the amount each person will pay."
[1920] As described above, the system of the present invention aims to provide a series of support functions for users to efficiently conduct a social gathering, thereby reducing the burden on organizers.
[1921] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1922] Step 1:
[1923] The user opens the application and selects the "Schedule" menu.
[1924] Input: User action (select "Schedule Adjustment" menu).
[1925] Output: The schedule entry screen is displayed on the terminal.
[1926] Specific operation: The terminal sends a request to the server to display the schedule input screen, and the server returns the schedule input screen information to the terminal in response to this.
[1927] Step 2:
[1928] The user inputs the available dates of the participants and clicks the "Submit" button.
[1929] Input: Participant's available dates (user input).
[1930] Output: The device sends the input data to the server.
[1931] Specific operation: When the user enters the available dates for each participant on the schedule input screen and clicks the send button, the device sends this information to the server in JSON format.
[1932] Step 3:
[1933] The server analyzes the received schedule information and suggests a schedule that will allow the most people to participate.
[1934] Input: Submitted schedule information (JSON format).
[1935] Output: Calculation result of optimal schedule.
[1936] Specific operation: The server analyzes the received schedule information, compares it with the free days of each participant, and uses an algorithm to calculate the schedule that the maximum number of participants can attend.
[1937] Step 4:
[1938] The server transmits the proposed schedule to the terminal and displays it on the terminal.
[1939] Input: The calculated best dates.
[1940] Output: The proposed itinerary is displayed on the terminal.
[1941] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the results on the screen.
[1942] Step 5:
[1943] The user reviews and confirms the proposed dates.
[1944] Input: User confirms and confirms the proposed schedule.
[1945] Output: The date is confirmed and saved.
[1946] Specific operation: When the user checks the schedule and clicks the confirm button, the terminal notifies the server of this operation, and the server saves the confirmed schedule in the database.
[1947] Step 6:
[1948] The user opens the application and selects the "Store Selection" menu.
[1949] Input: User operation (selecting the "Select a store" menu).
[1950] Output: The condition input screen is displayed on the terminal.
[1951] Specific operation: The terminal sends a request to the server to display a condition input screen, and the server returns the information on the condition input screen to the terminal in response to this.
[1952] Step 7:
[1953] The user enters the desired conditions (area, budget, cuisine, etc.) and clicks the "Submit" button.
[1954] Input: Desired conditions (user input).
[1955] Output: The device sends the input data to the server.
[1956] Specific operation: When the user enters the desired area, budget, and cuisine genre into the condition input screen and clicks the send button, the device sends this information to the server in JSON format.
[1957] Step 8:
[1958] Based on the conditions received by the server, store information is searched for using a database or external API.
[1959] Input: Submitted desired conditions (JSON format).
[1960] Output: Store information that matches the conditions.
[1961] Specific operation: The server calls a database or external API based on the desired conditions, and retrieves and selects store information that matches the conditions.
[1962] Step 9:
[1963] The server transmits the acquired store information to the terminal and presents it on the terminal.
[1964] Input: Store information obtained.
[1965] Output: Candidate store information is displayed on the terminal.
[1966] Specific operation: The server sends the selected store information to the terminal, and the terminal displays the information on the screen.
[1967] Step 10:
[1968] The user opens the application and selects the "Teaming" menu.
[1969] Input: User action (selecting the "Teaming" menu).
[1970] Output: The participant list input screen is displayed on the terminal.
[1971] Specific operation: The terminal sends a request to the server to display the participant list input screen, and the server returns the information of the participant list input screen to the terminal in response to this.
[1972] Step 11:
[1973] The user enters the participant list and clicks the "Submit" button.
[1974] Input: Participant list (user input).
[1975] Output: The device sends the input data to the server.
[1976] Specific operation: When the user enters the participant list and clicks the send button, the terminal sends this information to the server in JSON format.
[1977] Step 12:
[1978] Based on the participant list received by the server, participants are grouped randomly or according to specified conditions.
[1979] Input: The submitted participant list (JSON format).
[1980] Output: Separated group information.
[1981] Specific operation: The server analyzes the participant list using an algorithm, either randomly or based on specified conditions, and groups them.
[1982] Step 13:
[1983] The server transmits the grouping information to the terminal and presents it to the terminal.
[1984] Input: Separated group information.
[1985] Output: The grouping results are displayed on the terminal.
[1986] Specific operation: The server sends the generated grouping information to the terminal, and the terminal displays the information on the screen.
[1987] Step 14:
[1988] The user opens the application and selects the "Checkout" menu.
[1989] Input: User operation (selecting the "Checkout" menu).
[1990] Output: The payment entry screen is displayed on the terminal.
[1991] Specific operation: The terminal sends a request to the server to display the settlement input screen, and the server responds by sending the information on the settlement input screen back to the terminal.
[1992] Step 15:
[1993] The user enters the total cost and payment percentage and clicks the "Submit" button.
[1994] Input: Total cost and payment percentage (user input).
[1995] Output: The device sends the input data to the server.
[1996] Specific operation: When the user enters the total cost and payment percentage and clicks the submit button, the terminal sends this information to the server in JSON format.
[1997] Step 16:
[1998] The server calculates each participant's share based on the total cost and the payment percentage.
[1999] Input: Submitted total cost and payment percentage (JSON format).
[2000] Output: The amount contributed by each participant.
[2001] Specific operation: The server applies a calculation algorithm based on the total cost and payment ratio to calculate the amount each participant will pay.
[2002] Step 17:
[2003] The server sends the payment calculation result to the terminal and presents it to the terminal.
[2004] Input: Calculated contribution amount for each participant.
[2005] Output: The amount of the charge is displayed on the terminal.
[2006] Specific operation: The server sends the calculation results to the terminal, and the terminal displays the information on the screen.
[2007] (Application example 1)
[2008] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2009] When preparing for a social gathering or party, the process of scheduling the date and time, selecting the menu, managing the participants, and settling the costs is complicated, placing a heavy burden on the organizer. Additionally, selecting the optimal menu that reflects each participant's wishes and preferences, and the process of settling the costs, are also complicated. A system that can solve these problems and allow for smooth and efficient preparations is needed.
[2010] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[2011] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring and analyzing schedule information entered by the user, means for proposing an optimal schedule based on the analysis, means for having the user confirm and save the proposed schedule, means for creating an event and inviting participants, means for displaying a screen for inputting each participant's desired conditions, means for proposing a delivery menu based on the conditions, means for aggregating each participant's order and arranging delivery, and means for calculating the total cost and settling the account. This allows for efficient preparation for a social gathering or party, reduces the burden on the organizer, and enables the selection of an optimal menu according to each participant's wishes and settlement of the costs.
[2012] "Schedule adjustment" is the process of collecting information on the user's available dates and times, proposing and deciding on the most suitable schedule.
[2013] An "input screen" is a portion of an interface provided for a user to input information.
[2014] "Schedule information" is data on available dates and time slots provided by the user.
[2015] "Analysis" is a method of calculating based on input data to derive optimal dates and conditions.
[2016] "Proposal" is the process of showing the user the optimal schedule and conditions obtained through analysis.
[2017] "Storage" refers to the act of recording the confirmed information in the system's database.
[2018] "Event Creation" is the process by which a user sets up a new gathering or party.
[2019] "Inviting participants" is an act by a user inviting other people to participate in an event.
[2020] "Preferences" refer to specific requirements or preferences provided by a user.
[2021] A "Delivery Menu" is a selection of meals that can be ordered online.
[2022] "Order aggregation" is the process of summarizing the orders of each participant.
[2023] "Delivery arrangements" refers to preparing meals to be delivered to each participant based on the aggregated orders.
[2024] "Total Cost" means the total cost of all Participant's orders.
[2025] "Settlement" is the process of calculating the amount owed by each participant and completing the payment process.
[2026] This invention is a system for efficiently preparing events such as social gatherings and online parties. The system is realized by a user's terminal (smartphone or PC) and a server.
[2027] First, the user opens the application on their device and accesses the event settings screen. Here, an input screen for scheduling is displayed, and the user enters the dates they can attend. The entered schedule information is sent to the server, which analyzes the information and suggests the most suitable dates. The suggested dates are displayed on the device, and the user can confirm and confirm them, after which the server saves the information in a database.
[2028] Next, after the event is confirmed, an invitation function is activated to invite participants. The user registers participants on their terminal and sends invitations. Each participant accesses a screen to enter their preferences and allergy information and enters their desired conditions. This information is also sent to the server, which then suggests an appropriate delivery menu based on the conditions. The suggested menu is presented to the user, who makes the final selection.
[2029] Once the order details are confirmed, the server will compile the orders from each participant and arrange for delivery. It is possible to link with specific delivery services, and the order data will be automatically sent to the delivery service. Once the delivery arrangements are complete, each participant will be notified.
[2030] The final function is to settle the total cost. The user accesses the settlement screen and enters the total cost and each participant's payment percentage. Based on this information, the server calculates the payment amount for each participant and proceeds with the payment process via an electronic payment service. Once payment is complete, a confirmation message is sent to the participant.
[2031] The following key technologies are used as components of this system:
[2032] Hardware: AWS EC2 (virtual server), user devices (smartphones, PCs, etc.)
[2033] Software: React Native (smartphone application), React.js (web application), Node.js (server-side logic)
[2034] APIs and databases: Zomato API (delivery search), Stripe API (electronic payments), Amazon RDS (database)
[2035] As a concrete example, let's look at a scenario where User A is hosting an online year-end party. User A opens the app, schedules an online year-end party from 7:00 PM to 9:00 PM on December 15th, and invites Participants B and C. Participant B enters the desired conditions of "budget under 3,000 yen, gluten-free." The server uses the Zomato API to suggest menu items that meet these conditions, and everyone confirms the delivery menu from "Italian Restaurant X." After the order is confirmed, the data is sent to the delivery service, and delivery arrangements are made. Finally, the Stripe API is used to complete the payment process for each participant.
[2036] An example of a prompt to input to a generative AI model is:
[2037] This article explains the process for the "Food Fest Delivery" app, where users select a delivery menu for an online party and settle the costs. After users enter the date and time and the number of participants, they enter their desired conditions (budget, food preferences, etc.), and the app suggests the most suitable restaurant and menu via the Zomato API. The app then confirms the final order and settles the costs via the Stripe API.
[2038] This allows the functions of the entire system to work together smoothly, enabling efficient preparation for events.
[2039] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[2040] Step 1:
[2041] The user opens the application on their device and accesses the event setting screen. The user enters the available dates and details of the event. The input data includes the date (e.g., December 15th, 7:00 PM to 9:00 PM) and the name of the event (e.g., "Online Year-End Party"). This information is sent to the server.
[2042] Step 2:
[2043] The server analyzes the schedule information received and proposes the optimal schedule. An algorithm is used for the analysis to check the availability of each participant. Data processing involves aggregating the schedule data of all participants and identifying the date when the most participants are available. The analysis results are sent to the device and displayed to the user.
[2044] Step 3:
[2045] The user confirms and confirms the proposed schedule. The confirmed schedule is saved on the server and recorded in the database. The saved data includes the event ID, confirmed schedule, and participant information.
[2046] Step 4:
[2047] To invite participants, the user goes to the participant registration screen. The user enters the participant's contact information and sends the invitation. The input data is sent to the server, and an invitation email is automatically generated for the participant. The email sent contains the event details and a link to participate.
[2048] Step 5:
[2049] Participants receive an invitation email and click the link to access the event page. They enter their desired conditions (budget, allergy information, etc.). The entered data is sent to the server, which stores this information in a database.
[2050] Step 6:
[2051] The server proposes an appropriate delivery menu based on the participant's desired conditions. The server calls the Zomato API and searches for menus that match the entered conditions (e.g., budget 3,000 yen, gluten-free). The search results are sent to the terminal and presented to the user.
[2052] Step 7:
[2053] The user and participants review the proposed menu and finalize the order. The finalized order is sent to the server, which aggregates the orders of each participant. The server then arranges delivery based on the aggregated data.
[2054] Step 8:
[2055] The server sends the order details and delivery address information to the delivery service. Once the delivery arrangements are complete, a notification is sent to each participant. The notification includes an order confirmation and an estimated delivery time.
[2056] Step 9:
[2057] The user accesses the total cost settlement screen and enters the payment percentage. The server calculates the payment amount for each participant based on the total cost and processes the payment using the Stripe API. The payment information is sent to the terminal, and a payment confirmation message is displayed to each participant.
[2058] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[2059] MODE FOR CARRYING OUT THE INVENTION
[2060] This invention provides a system that streamlines the procedures (scheduling, restaurant selection, team division, and payment) required when a user holds a social gathering such as a year-end party or a welcome party. This system is implemented as a web or mobile application and is equipped with an emotion engine that recognizes the user's emotions. By taking the user's emotional state into account at each stage of the event planning process, the emotion engine can provide more appropriate suggestions and results.
[2061] Schedule adjustment
[2062] When a user opens the application and selects the "Schedule Adjustment" menu, the device displays a schedule entry screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which uses the analysis results to propose the optimal schedule that will most satisfy the participants. The proposed schedule is displayed on the device, and once the user confirms the schedule, the server saves it in a database.
[2063] For example, if a user wants to arrange a date for a year-end party, they input the free dates of all participants through the application, and the emotion engine analyzes the user's level of tension and stress. Based on this information, the server proposes an optimal date and displays it to the user. The optimal date is determined when the user confirms and confirms the proposed date.
[2064] Choosing a restaurant
[2065] When a user opens the application and selects the "Select Restaurant" menu, the device displays a screen for entering criteria. The user enters criteria such as desired area, budget, and cuisine, and the emotion engine analyzes the user's current emotional state. The device then sends this information to the server, which uses the analysis results to obtain information on restaurants that will best satisfy the user and presents it on the device.
[2066] For example, if a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they input that criteria, and the emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious). Based on that information, the server creates a list of restaurants that best fit the criteria and displays it to the user.
[2067] Team Division
[2068] When a user opens the application and selects the "Team Assignment" menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's current emotional state. The device sends this information to the server, which then assigns the participants to teams randomly or based on specified criteria (e.g., emotional balance) based on the analysis results, and displays the results on the device.
[2069] For example, if you want to randomly divide 30 participants into 5 tables, the user inputs the participant list, and the emotion engine analyzes the user's emotional state. Based on that information, the server generates teams that take into account the emotional balance within the group, and displays the results to the user.
[2070] settlement
[2071] When a user opens the application and selects the "Payment" menu, the terminal displays the payment entry screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's current emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays them on the terminal.
[2072] As a concrete example, if the total membership fee is 15,000 yen and 15 people participate, the user inputs the total amount, and the emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied). Based on that information, the server calculates the fair and satisfying payment amount and displays the result to the user.
[2073] As described above, the system of the present invention provides various support functions that take into consideration the user's feelings, and not only reduces the burden on the organizer but also increases user satisfaction.
[2074] The processing flow will be explained below.
[2075] Schedule adjustment process
[2076] Step 1:
[2077] The user accesses the appointment entry screen.
[2078] The user opens the application and selects the "Schedule" menu.
[2079] Step 2:
[2080] The server retrieves and displays existing schedule data.
[2081] The server retrieves the participants' existing schedule data from the database and sends it to the terminal, which then displays the retrieved schedule data in a calendar format.
[2082] Step 3:
[2083] The user inputs the available dates for each participant.
[2084] The user selects the available dates for each participant by clicking on the calendar. The device sends the selected dates to the server.
[2085] Step 4:
[2086] The emotion engine analyzes the user's emotions.
[2087] The terminal sends the user's emotional state along with the entered schedule information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., stress level, relaxation level) to the server.
[2088] Step 5:
[2089] The server analyzes everyone's available dates and suggests the best schedule.
[2090] The server analyzes the free schedule data of all participants and the emotion data obtained from the emotion engine, proposes the most satisfying schedule, and sends the calculation results to the terminal.
[2091] Step 6:
[2092] The user confirms and confirms the proposed dates.
[2093] The terminal displays the proposed schedule to the user. The user confirms the proposed schedule and presses the confirm button. The terminal sends the confirmed schedule to the server. The server saves the schedule in a database.
[2094] Shop selection process
[2095] Step 1:
[2096] The user accesses the condition input screen.
[2097] The user opens the application and selects the "Store Selection" menu.
[2098] Step 2:
[2099] The server displays a condition input screen.
[2100] The server sends the condition input screen to the terminal, which displays the condition input screen.
[2101] Step 3:
[2102] The user inputs the desired area, budget, cuisine, etc.
[2103] The user inputs conditions such as the desired area, budget, cuisine genre, etc. The device then sends the input conditions to the server.
[2104] Step 4:
[2105] The emotion engine analyzes the user's emotions.
[2106] The terminal sends the user's emotional state along with the input condition information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., expectation, stress level) to the server.
[2107] Step 5:
[2108] The server retrieves and filters store information from a database or external API.
[2109] The server calls a database or external API to retrieve the best store information based on the conditions and sentiment data, then filters the retrieved store information to generate the most suitable store list.
[2110] Step 6:
[2111] Display the best store for the user.
[2112] The server sends a list of stores to the terminal, which then displays a list of stores suitable for the user.
[2113] Team assignment process
[2114] Step 1:
[2115] The user accesses the participant list input screen.
[2116] The user opens the application and selects the "Teaming" menu.
[2117] Step 2:
[2118] The server displays a participant list input screen.
[2119] The server sends a participant list input screen to the terminal, which displays the input screen.
[2120] Step 3:
[2121] The user enters the participant's name.
[2122] The user inputs the participant's name. The device sends the input name to the server.
[2123] Step 4:
[2124] The emotion engine analyzes the user's emotions.
[2125] The terminal sends the user's emotional state along with the entered participant information to the emotion engine. The emotion engine analyzes the emotional data and sends the user's current emotional state (e.g., excitement level, tension level) to the server.
[2126] Step 5:
[2127] The server will automatically generate teams randomly or based on specified conditions.
[2128] The server runs an algorithm to divide the input participant list into teams randomly or according to specified conditions (e.g., emotional balance) based on emotional data, and sends the generated team information to the terminal.
[2129] Step 6:
[2130] Display team division results to the user.
[2131] The terminal displays the team division results to the user.
[2132] Processing of settlement
[2133] Step 1:
[2134] The user accesses the payment entry screen.
[2135] The user opens the application and selects the "Checkout" menu.
[2136] Step 2:
[2137] The server displays the payment entry screen.
[2138] The server sends the payment input screen to the terminal, which displays the input screen.
[2139] Step 3:
[2140] The user enters the total cost and each participant's share of the payment.
[2141] The user inputs the total cost and each participant's share of the payment. The terminal sends the input data to the server.
[2142] Step 4:
[2143] The emotion engine analyzes the user's emotions.
[2144] The terminal sends the user's emotional state along with the entered payment information to the emotion engine, which analyzes the emotion data and sends the user's current emotional state (e.g., satisfaction level, stress level) to the server.
[2145] Step 5:
[2146] The server automatically calculates the payment amount for each participant based on the total cost, payment rate, and emotional data.
[2147] The server calculates the payment amount for each participant based on the total cost, payment percentage, and emotion data, and sends the calculation results to the terminal.
[2148] Step 6:
[2149] Display billing information for each participant to the user.
[2150] The terminal displays each participant's billing information to the user.
[2151] The above is a specific flow of processing based on the present invention.
[2152] Example 2
[2153] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2154] In the past, planning and hosting social gatherings required manual processes such as scheduling, selecting restaurants, dividing teams, and settling bills, which took a lot of time and effort. It was also difficult to consider the emotions and satisfaction of participants, making it difficult to achieve a result that satisfied all participants. There is a need to solve these issues and realize efficient and satisfying social gatherings.
[2155] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[2156] In this invention, the server includes means for displaying an input screen for adjusting a user's schedule, means for acquiring schedule information entered by the user and analyzing the user's emotional state using an emotion engine, means for proposing an optimal schedule based on the analysis, and means for having the user confirm and save the proposed schedule. This enables optimal schedule proposals that take the user's emotions into consideration. The server also includes means for displaying a screen for entering user-desired conditions, means for acquiring appropriate store information based on the conditions, and means for analyzing the user's emotional state using an emotion engine and presenting the acquired store information to the user. This enables store selection that takes the user's emotions into consideration. Additionally, the server includes means for displaying a screen for entering a participant list, means for analyzing the user's emotional state using an emotion engine based on the entered participant information, and dividing the team randomly or according to specified conditions, and means for presenting the divided team information to the user. This enables team division that takes the user's emotions into consideration.
[2157] "User" refers to an individual or organization that uses this system to plan and manage social gatherings.
[2158] "Scheduling" refers to the process of coordinating dates that are convenient for all participants and determining the optimal date.
[2159] An "emotion engine" refers to a software or hardware mechanism for analyzing a user's emotional state.
[2160] "Input screen" refers to an interface for the user to input required information.
[2161] "Analysis" refers to the process of calculation and judgment that processes input data and information on the user's emotional state to arrive at the optimal result.
[2162] The "optimal date" refers to the date that will satisfy all participants the most.
[2163] "Store information" refers to store information based on the conditions desired by the user.
[2164] "Teaming" refers to the process of dividing participants into multiple groups based on the input participant list.
[2165] "Database" refers to a digital storage system for managing and storing necessary information.
[2166] This invention is a system for planning and managing social gatherings efficiently, implemented as a web or mobile application. This system analyzes the user's emotions and makes optimal suggestions during each process: scheduling, restaurant selection, team assignment, and payment.
[2167] Schedule adjustment
[2168] When a user opens the application and selects the schedule adjustment menu, the device displays the schedule input screen. The user enters the free dates of the participants, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then proposes the most suitable date based on the analysis results. The proposed date is displayed on the device, and once the user confirms the date, the server saves it in a database.
[2169] Examples:
[2170] When a user wants to arrange the date of a year-end party, the user inputs the free dates of all the participants through the application.
[2171] The emotion engine analyzes the user's level of tension and stress.
[2172] The server uses this information to suggest the best schedule and displays it to the user.
[2173] The optimal schedule is determined by the user confirming and confirming the proposed schedule.
[2174] Choosing a restaurant
[2175] When a user opens the application and selects the restaurant selection menu, the device displays a criteria input screen. The user enters criteria such as desired area, budget, and cuisine type, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then retrieves the most suitable restaurant information based on the analysis results and presents it to the user.
[2176] Examples:
[2177] If a user wants to find an Italian restaurant in the Shinjuku area with a budget of 3,000 to 5,000 yen, they enter that criteria.
[2178] The emotion engine analyzes the user's emotional state (e.g., whether they are relaxed or anxious).
[2179] Based on this information, the server creates a list of the best stores that meet the criteria and displays it to the user.
[2180] Team Division
[2181] When a user opens the application and selects the team assignment menu, the device displays a participant list entry screen. The user enters the participant list, and the emotion engine analyzes the user's emotional state. The device sends this information to the server, which then assigns teams based on the analysis results, either randomly or according to specified criteria, and presents the results to the user.
[2182] Examples:
[2183] If the user wants to randomly divide 30 participants into 5 tables, enter the participant list.
[2184] An emotion engine analyzes the user's emotional state.
[2185] The server generates a team based on this information, taking into account the emotional balance within the group, and displays the results to the user.
[2186] settlement
[2187] When a user opens the application and selects the payment menu, the terminal displays the payment input screen. The user enters the total cost and each participant's payment percentage, and the emotion engine analyzes the user's emotional state. The terminal sends this information to the server, which automatically calculates each participant's payment based on the analysis results and displays the results on the terminal.
[2188] Examples:
[2189] If the total membership fee is 15,000 yen and 15 people are participating, the user enters the total amount.
[2190] An emotion engine analyzes the user's emotional state regarding the payment (e.g., low stress, satisfied).
[2191] The server calculates a fair and satisfactory payment amount based on that information and displays the result to the user.
[2192] In this way, the user uses the application at each stage of the process, the emotion engine analyzes the user's emotional state, and the server makes optimal suggestions, thereby streamlining the planning and management of social gatherings and increasing participant satisfaction.
[2193] The flow of the identification process in the second embodiment will be described with reference to FIG.
[2194] Schedule adjustment
[2195] Step 1:
[2196] The user opens the application on their smartphone or PC and selects the "Schedule Adjustment" menu.
[2197] Input: User-initiated application launch and menu selection
[2198] Output: The schedule entry screen is displayed.
[2199] Step 2:
[2200] The device displays the schedule entry screen.
[2201] Input: Based on user menu selection
[2202] Output: Input fields such as start date / time, end date / time, and participant list are displayed.
[2203] Step 3:
[2204] The user inputs the available dates of the participants.
[2205] Input: Available dates for each participant
[2206] Output: Dataset containing the input schedule information
[2207] Step 4:
[2208] An emotion engine analyzes the user's current emotional state.
[2209] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[2210] Output: Emotional state data as analysis results (e.g., stress level)
[2211] Step 5:
[2212] The terminal transmits this information to the server.
[2213] Input: User-entered schedule information and emotional state data
[2214] Output: Data sent to the server
[2215] Step 6:
[2216] The server will suggest the optimal schedule based on the analysis results.
[2217] Input: Received schedule information and emotional state data
[2218] Output: Calculated optimal schedule data
[2219] Step 7:
[2220] The device will display the suggested dates.
[2221] Input: Optimal schedule data received from the server
[2222] Output: The proposed dates are displayed.
[2223] Step 8:
[2224] Once the user confirms the date, the server stores the date in a database.
[2225] Input: Confirmed schedule data
[2226] Output: Schedule data saved in the database
[2227] Choosing a restaurant
[2228] Step 1:
[2229] The user opens the application and selects the "Store Selection" menu.
[2230] Input: User-operated menu selection
[2231] Output: The condition input screen is displayed.
[2232] Step 2:
[2233] The terminal displays a screen for entering conditions.
[2234] Input: Based on user menu selection
[2235] Output: Input fields such as area, budget, cuisine, etc. are displayed.
[2236] Step 3:
[2237] The user inputs the desired conditions.
[2238] Input: desired area, budget, cuisine, etc.
[2239] Output: Data set that stores the input condition data
[2240] Step 4:
[2241] An emotion engine analyzes the user's current emotional state.
[2242] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[2243] Output: Emotional state data as the analysis result (e.g., relaxation level)
[2244] Step 5:
[2245] The terminal transmits this information to the server.
[2246] Input: Input condition data and emotional state data
[2247] Output: Data sent to the server
[2248] Step 6:
[2249] The server will suggest the most suitable store based on the analysis results.
[2250] Input: Received condition data and emotional state data
[2251] Output: Best store information that matches the criteria
[2252] Step 7:
[2253] The device will display suggested store information.
[2254] Input: Store information received from the server
[2255] Output: Suggested store information is displayed.
[2256] Team Division
[2257] Step 1:
[2258] The user opens the application and selects the "Teaming" menu.
[2259] Input: User-operated menu selection
[2260] Output: The participant list entry screen is displayed
[2261] Step 2:
[2262] The terminal displays a participant list input screen.
[2263] Input: Based on user menu selection
[2264] Output: Participant information input fields are displayed
[2265] Step 3:
[2266] The user enters the participant list.
[2267] Input: List of participants' names, number of participants, etc.
[2268] Output: A dataset containing the entered participant list data
[2269] Step 4:
[2270] An emotion engine analyzes the user's current emotional state.
[2271] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[2272] Output: Emotional state data as the analysis result (e.g., excitement level)
[2273] Step 5:
[2274] The terminal transmits this information to the server.
[2275] Input: Entered participant list data and emotional state data
[2276] Output: Data sent to the server
[2277] Step 6:
[2278] The server will assign teams based on the analysis results.
[2279] Input: Received participant list data and emotional state data
[2280] Output: Team-based results data
[2281] Step 7:
[2282] The device will display the team results.
[2283] Input: Team division result data received from the server
[2284] Output: Team division results are displayed
[2285] settlement
[2286] Step 1:
[2287] The user opens the application and selects the "Checkout" menu.
[2288] Input: User-operated menu selection
[2289] Output: The payment entry screen is displayed.
[2290] Step 2:
[2291] The terminal displays the payment entry screen.
[2292] Input: Based on user menu selection
[2293] Output: Total cost and payment percentage input fields are displayed.
[2294] Step 3:
[2295] The user enters the total cost and each participant's share of the payment.
[2296] Inputs: Total cost and each participant's payment percentage
[2297] Output: A dataset containing the total cost and payment rate data entered
[2298] Step 4:
[2299] An emotion engine analyzes the user's emotional state.
[2300] Input: User's facial expressions and tone of voice data via the device's built-in camera and microphone
[2301] Output: Emotional state data as the analysis result (e.g., satisfaction level)
[2302] Step 5:
[2303] The terminal transmits this information to the server.
[2304] Input: Total cost data, payment rate data, and emotional state data
[2305] Output: Data sent to the server
[2306] Step 6:
[2307] The server calculates the payment amount for each participant based on the analysis results.
[2308] Input: Received total cost data, payment rate data, emotional state data
[2309] Output: Payment data for each participant
[2310] Step 7:
[2311] The terminal displays the calculation results.
[2312] Input: Payment data received from the server
[2313] Output: Shows the payment amount for each participant
[2314] (Application example 2)
[2315] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2316] Modern self-driving vehicles lack the means to enhance the comfort and satisfaction of users during their journeys. Especially during long journeys, it is necessary to properly recognize the user's emotional state and respond appropriately. However, conventional systems are unable to perform emotion analysis. Therefore, even when a user feels fatigued or stressed, it is difficult to recommend facilities that address the user's needs, limiting the user's experience.
[2317] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[2318] In this invention, the server includes emotion analysis means for analyzing the emotional state of the user while riding, recommendation means for recommending facilities near the current location based on the analysis results, and means for presenting information about the recommended facilities to the user. This makes it possible to recognize the emotional state of the user in real time and recommend the most appropriate facility accordingly.
[2319] An "autonomous vehicle" is a vehicle that can perform driving operations autonomously.
[2320] A "user" is a person who uses an autonomous vehicle.
[2321] "Emotion analysis means" refers to a system or software for recognizing and analyzing a user's emotional state.
[2322] The "recommendation means" is a means for selecting and recommending appropriate facilities and stores based on the analyzed emotional state and user preferences.
[2323] "Facility information" is information about places and services that can be provided to users, such as restaurants, cafes, and rest areas.
[2324] An "input screen" is an interface for a user to input information.
[2325] "Means for presenting to the user" refers to a display or notification system that shows the analysis results and recommended information to the user.
[2326] A "participant list" is a list containing names and information about people participating in an event or activity.
[2327] A "grouping means" is a method or program for forming groups based on a participant list, either randomly or according to specific conditions.
[2328] The present invention is a system developed to improve user comfort and satisfaction in autonomous vehicles. This system utilizes emotion analysis and recommendation means installed in the autonomous vehicle to recommend facilities based on the user's emotional state.
[2329] 1. Emotion analysis means:
[2330] Cameras and sensors inside the autonomous vehicle collect video and biometric data of the user. This data is analyzed by an emotion analysis module (e.g., sentiment_analysis_module) to determine the user's real-time emotional state. The analysis uses machine learning algorithms to determine, for example, whether the user is tired, relaxed, or stressed.
[2331] 2. Recommendation method:
[2332] Based on the results of the sentiment analysis, the system provides users with information about recommended facilities near their current location. To do this, a restaurant recommendation module (e.g., restaurant_recommender_module) runs, searches for relevant facilities, and lists appropriate candidates. The recommendation mechanism takes into account the user's current location information (GPS data) and preferences (pre-set cuisine genre and budget) to suggest the most suitable facilities.
[2333] 3. System operation steps:
[2334] An example of the system's operation procedure is the following process: For example, if the user feels tired after a long drive, the system recommends a facility where the user can relax.
[2335] For example, if a user is driving in the Shibuya area of Tokyo, tired from a long drive, and wants to find a relaxing Italian restaurant:
[2336] Example prompt sentence:
[2337] plaintext
[2338] User ID: 1
[2339] Recent activity: Long drive
[2340] Current Location: Shibuya, Tokyo
[2341] Preferences: Italian food, mid-range budget
[2342] Emotional state: Tired
[2343] Based on this, the system will recommend relaxing Italian restaurants in the Shibuya area, providing results such as "Restaurant Name: La Bocca, Address: Udagawacho, Rating: 4.5 stars."
[2344] The hardware includes the navigation system, cameras, sensors, and displays within the autonomous vehicle, while the software includes an emotion analysis module and a restaurant recommendation module, which can recognize the user's emotional state in real time and recommend the most suitable establishments, improving the user experience.
[2345] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2346] Step 1:
[2347] A user gets into an autonomous vehicle and the system collects the user's biometric and video data.
[2348] Input: User images and biometric signals (e.g., heart rate, facial expressions, etc.)
[2349] Output: Collected biometric and video data
[2350] Specific operation: Cameras and sensors installed in the vehicle capture biometric data such as the user's facial expressions and heart rate in real time and transmit it to the system.
[2351] Step 2:
[2352] The server inputs the received user data into an em...
Claims
1. means for displaying an input screen for adjusting a user's schedule; means for acquiring and analyzing schedule information input by a user; A means of proposing optimal schedules based on analysis; a means for allowing the user to confirm and save the proposed itinerary; A system including:
2. means for displaying a screen for a user to input desired conditions; A means for obtaining appropriate store information based on conditions; means for presenting the acquired store information to a user; The system of claim 1 further comprising:
3. means for displaying a screen for inputting a participant list; A means of dividing teams randomly or according to specified conditions based on the participant information entered; a means for presenting the divided team information to a user; The system of claim 1 further comprising:
4. means for displaying a screen for inputting the total cost and each participant's payment percentage; A means to automatically calculate each participant's share of the payment based on the total cost and payment percentage; means for presenting the calculation results to a user; The system of claim 1 further comprising:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A