System
A system automates meeting planning by inputting details, searching for suitable venues, and handling changes, addressing the inefficiencies of manual event organization and participant accommodation.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2026-03-04
Smart Images

Figure 2026035451000001_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] The work of organizing meetings and events not only requires a great deal of time and effort, but also places a heavy burden on the organizer, as they are required to respond to various requests from participants. Furthermore, it is difficult to proceed smoothly because of the need to rearrange reservations when they cannot be made, and to take into account participants' food allergies and preferences. There is a need for a system that solves these problems, reduces the organizer's burden, and allows all participants to enjoy the event. [Means for solving the problem]
[0005] The present invention solves these problems by providing a system including: means for inputting the purpose, date and time of the meeting, budget, and participant profiles; means for receiving and analyzing the input data; means for searching for the most suitable restaurant based on the analyzed data; means for sending the search results to a user's terminal and re-receiving the restaurant selected by the user; means for automatically making a reservation at the restaurant selected by the user; means for notifying participants of reservation information after the reservation is completed; and means for receiving additions or changes after the reservation, re-processing the reservation, and re-notifying participants of the updated information. In particular, the participant profiles can include information on food allergies and dietary preferences, making it possible to select and reserve the most suitable restaurant according to the needs of each individual participant.
[0006] "Purpose of the meeting" is information that indicates the purpose and content of the event or gathering.
[0007] "Date and time" is information that indicates the specific date and time when a meeting or event will be held.
[0008] "Budget" is information that indicates the maximum cost per person for a meeting or event.
[0009] "Participant profile" refers to information about each individual participating in the meeting, including, for example, age group, food allergies, food preferences, and location.
[0010] "Input means" refers to the interface or mechanism by which a user inputs meeting information into the application.
[0011] "Means for receiving and analyzing" refers to a device or program that has the function of taking in input data, analyzing it, and extracting the necessary information.
[0012] "Means for searching for stores" refers to algorithms or systems that search the database for the most suitable stores based on analyzed data.
[0013] "Means for transmitting to the user's terminal" refers to the communication functions and protocols for providing search results to the user's terminal.
[0014] The "re-receiving means" refers to a function or device for receiving the store information selected by the user again.
[0015] "Means for automatically making reservations" refers to a program or system that has the function of automatically making reservations for selected stores.
[0016] "Means for notifying participants of reservation information" refers to the communication functions and protocols for transmitting information to all participants after a reservation is completed.
[0017] "Means for receiving additions and changes, re-processing reservations, and re-notifying updated information" refers to a system or program for receiving additions and changes that occur after a reservation, re-processing reservations, and notifying participants of the latest information. [Brief explanation of the drawings]
[0018] [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
[0019] 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.
[0020] First, the terms used in the following description will be explained.
[0021] 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).
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 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.
[0029] 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).
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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."
[0039] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on the information. Specific embodiments of the system are described below.
[0040] 1. User Input:
[0041] The user starts the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). This information is saved on the device and sent to the server by pressing the send button.
[0042] 2. Data reception and analysis:
[0043] The server receives the data sent from the device. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis enables the optimal store search based on the conditions.
[0044] 3. Store Locator:
[0045] The server searches for the most suitable store based on the analyzed data. A store database is pre-registered on the server, and an AI algorithm evaluates stores that meet the meeting conditions and creates a list of stores with the highest priority.
[0046] 4. Store suggestions and selection:
[0047] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0048] 5. Automatic booking:
[0049] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device.
[0050] 6. Booking Confirmation and Notification:
[0051] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0052] 7. Additions and Changes:
[0053] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes these changes and, if necessary, searches for stores again, cancels existing reservations, and makes new reservations. The latest information after the changes is automatically notified to all participants again.
[0054] As a concrete example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party and information about the participants, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server would then automatically confirm the reservation for this restaurant, and a reservation confirmation email would be sent to the user and all participants. If additional participants are added later, they would simply enter the changes again through the app, and the new restaurant reservation would be automatically processed by the AI. As a result, the burden on the organizer would be significantly reduced, and the meeting would run more smoothly.
[0055] The processing flow will be explained below.
[0056] Step 1:
[0057] User: Launches the application and enters the purpose of the meeting (e.g., year-end party), the date and time of the meeting (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, living in Shinjuku Ward).
[0058] Step 2:
[0059] Terminal: Saves the entered information and sends it to the server when the send button is pressed.
[0060] Step 3:
[0061] Server: Analyzes the received data and extracts each item (purpose, date and time, budget, participant profile, etc.). Based on the results of this analysis, it generates search criteria for stores that match the conditions.
[0062] Step 4:
[0063] Server: Based on the analyzed data, it searches for the most suitable store from the store database. It uses an AI algorithm to evaluate the search results and generate a list of stores with high priority.
[0064] Step 5:
[0065] Server: Sends the generated optimal store list to the terminal.
[0066] Terminal: Displays a list of stores to the user.
[0067] Step 6:
[0068] User: Select the desired store from the displayed store list and press the confirm button. The selected store information is sent to the server.
[0069] Step 7:
[0070] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0071] Step 8:
[0072] Server: Receives reservation confirmation information. After receiving it, the reservation information is sent to all participants by email.
[0073] Step 9:
[0074] User: When adding or changing participants after a reservation, the changes are entered through the application and sent to the server.
[0075] Step 10:
[0076] Server: Analyzes the changes and performs a new store search based on the new criteria, canceling existing reservations and confirming new reservations as necessary.
[0077] Step 11:
[0078] Server: Generates the latest reservation information after the change and notifies all participants again.
[0079] Example 1
[0080] 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."
[0081] In today's society, planning and managing a meeting smoothly is important in our busy daily lives. However, when planning a meeting, coordinating the schedules of participants, selecting an appropriate venue, securing reservations, and even accommodating specific needs of participants (such as allergies or dietary preferences) can be challenging. These procedures require time and effort, increasing the burden on organizers.
[0082] 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.
[0083] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and personal information of the participants, a means for receiving and analyzing the input data, a means for searching for the optimal location based on the analyzed data, and a means for evaluating the search means using an artificial intelligence model. This allows users to easily search for the optimal meeting location, make reservations, and automatically manage any necessary changes. Specifically, the location search is automated, taking into account the allergy information and food preferences of the participants, allowing for efficient and professional planning.
[0084] The "purpose of the meeting" is information that indicates the purpose for which the meeting is being held.
[0085] "Date and time" is information indicating the specific date and time when the meeting will start.
[0086] "Budget" is information that indicates the maximum amount of money that can be spent per person or for the entire meeting.
[0087] "Participant personal information" refers to individual information about people attending the meeting, such as their age, food allergies, food preferences, and location.
[0088] "Input means" refers to a device or software that provides an interface for a user to provide the required information to the system.
[0089] The "receiving and analyzing means" is a device or software that receives data sent from a user and analyzes its content.
[0090] The "means for searching for the best location" is a device or software that finds a suitable meeting place based on the received data.
[0091] The "means for transmitting search results to the user's terminal" refers to a device or software for transferring the search results to the terminal used by the user.
[0092] The "means for automatically making a reservation" is a device or software that allows the system to automatically make a reservation for a location selected by the user.
[0093] "Means for notifying" refers to a device or software for communicating information to participants after a reservation is completed.
[0094] "Means for receiving additions and changes, re-processing reservations, and notifying updated information" refers to a device or software that accepts changes that occur after a reservation, makes a new reservation, and notifies participants of the results.
[0095] "Means for evaluating the search means using an artificial intelligence model" refers to a device or software that uses machine learning or AI technology to evaluate search results based on received data and improve their accuracy.
[0096] The system of the present invention allows users to input the purpose, date, time, budget, and personal information of participants, and then automatically searches for the optimal location, makes reservations, contacts, and handles changes based on that information. This system is implemented using a user's device, a cloud server, and an artificial intelligence model.
[0097] Hardware and software used
[0098] The user's device is a smartphone or personal computer, which includes software for running mobile applications and a web browser. The cloud server is equipped with a Python (registered trademark)-based processing system and a database management system (e.g., MySQL (registered trademark)) for data analysis, store searches, and reservation processing.
[0099] Specifically, the following software and libraries are used:
[0100] NLP libraries: Use spaCy or NLTK to analyze data received from users.
[0101] Database management system: Use MySQL or PostgreSQL to manage store information and user data.
[0102] Machine learning libraries: Use Scikit-learn and TENSORFLOW (registered trademark) to build AI models for store evaluation.
[0103] Email Sending API: Use SendGrid or Amazon SES to automatically send reservation confirmation emails.
[0104] Program processing explanation
[0105] The user launches the smartphone application and enters the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the personal information of the participants (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, Shinjuku Ward). This information is saved on the device and sent to the cloud server by pressing the send button.
[0106] The server receives and analyzes the data sent from the device using Natural Language Processing (NLP) technology to extract information such as the purpose of the meeting, date and time, budget, and personal information.
[0107] The server then uses the analyzed data to search for the best store. It generates a database query to extract stores that match the criteria, and uses machine learning algorithms to evaluate the criteria and create a list of stores with the highest priority.
[0108] The search results are sent to the user's device, and the application displays a list of suggested stores to the user. When the user selects the desired store, the selection is sent back to the server.
[0109] The server automatically makes a reservation at the selected store. The reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device. In addition, reservation confirmation information is automatically sent by email to all participants.
[0110] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes the changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the change is automatically notified to all participants again.
[0111] Specific examples
[0112] For example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party, the date and time (December 20th, 7:00 PM), a budget of 5,000 yen per person, and personal information such as "30s, one person with shellfish allergy, Japanese food lover, Shinjuku ward." The input data is sent to the server, and the AI searches for the most suitable restaurant. From the list of suggested restaurants, the user selects a Japanese izakaya in Shinjuku, and the server automatically makes the reservation. A reservation confirmation email is then sent to the user and all participants. If additional participants are added, the changes can be sent to the server via the app, and a new restaurant reservation is automatically processed. This system significantly reduces the burden on organizers and ensures smooth meeting times.
[0113] Prompt Sentence Examples
[0114] "Please create a system that inputs the purpose of the meeting, date and time, budget, and participant profiles, and based on that, searches for and reserves the best venue for the year-end party in Shinjuku, and also automates communication and changes."
[0115] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0116] Processing flow
[0117] Step 1:
[0118] The user starts the smartphone application and inputs the purpose of the meeting, the date and time, the budget, and the personal information of the participants. This input information is saved in the smartphone's local storage. For example,
[0119] Purpose of the meeting: Year-end party
[0120] Date and time: December 20th, 7:00 PM
[0121] Budget: 5,000 yen per person
[0122] Participant personal information: 30s, one person with shellfish allergy, likes Japanese food, Shinjuku Ward
[0123] The user presses the "Send" button to send this information to the server.
[0124] Step 2:
[0125] The server receives data sent from the user's device. The received data is first analyzed using an NLP (Natural Language Processing) library. Specifically, spaCy is used to tokenize the received data and extract the purpose of the meeting, date and time, budget, and personal information. Based on the results of this analysis, structured data is generated for further processing. The input is the data sent by the user, and the output is the analyzed structured data.
[0126] Step 3:
[0127] The server searches for the most suitable stores based on the analyzed data. It generates a database query and extracts stores that match the criteria from a pre-registered store information database. It uses a machine learning model (e.g., Scikit-learn's RandomForestClassifier) to evaluate the extracted stores and create a list of the highest priority stores. The input is the analyzed structured data, and the output is a list of the most suitable stores.
[0128] Step 4:
[0129] The server sends the generated list of optimal stores to the user's device. Specifically, this list is converted into JSON format and displayed in real time on the user's mobile application. The user selects the desired store from the displayed list of stores. The input is the list of optimal stores, and the output is the user's selection data.
[0130] Step 5:
[0131] When the user selects the desired store and presses the "Confirm" button, the selection is sent back to the server. The server then makes a reservation for the selected store via the automated reservation system. Specifically, it accesses the store's reservation API, sends the necessary data, and receives a response indicating that the reservation is complete. The input is the user's selected data, and the output is reservation confirmation information.
[0132] Step 6:
[0133] When the server receives the reservation confirmation information, it generates an email containing the reservation details (store name, address, date and time, reservation number) and automatically sends it to all participants. As a specific example, the email is sent using the SendGrid API. The input is the reservation confirmation information, and the output is a notification that the email has been sent.
[0134] Step 7:
[0135] If the user adds more participants or changes information after making a reservation, the changes are entered through the application. This information is sent back to the server. The server analyzes these changes, searches for new stores and makes new reservations as needed, and generates new reservation information. The changed information is automatically notified again to all participants. The input is the user's changed data, and the output is the updated reservation information.
[0136] (Application example 1)
[0137] 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."
[0138] Conventional meeting planning and reservation methods require organizers to manually search for and reserve restaurants, which requires a great deal of effort and time. Also, selecting a restaurant that is suitable for everyone while accommodating allergies and food preferences is complicated and difficult to do efficiently. Furthermore, if there are additions or changes made after a reservation is made, the time and effort required to search for a restaurant again and make a new reservation is a major issue.
[0139] 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.
[0140] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and the participant profiles, a means for receiving and analyzing the input data, and a means for searching for the most suitable physical store based on the analyzed data. This allows the smartphone application to suggest the most suitable store based on the meeting conditions and automatically make a reservation. Furthermore, by automating notifications and changes after the reservation is completed, the burden on the organizer is significantly reduced, allowing the meeting to be held smoothly.
[0141] The "purpose of the meeting" is a summary of the purpose or content for which a particular meeting is being held.
[0142] "Date and Time" means the date and time at which the meeting will take place.
[0143] A "budget" is the maximum amount of money that can be spent by each individual or the entire group of participants in a meeting.
[0144] A "participant profile" is detailed individual information about people attending a meeting, such as their age, food preferences, allergy information, and location.
[0145] The "means for inputting" is an interface that allows a user to input the purpose, date and time of the meeting, the budget, and the profiles of the participants into the application.
[0146] "Means for receiving and analyzing" refers to the process by which the server receives the input data and breaks it down into individual items for understanding.
[0147] The "searching method" is a method in which the server selects the most suitable physical store from a pre-registered store database based on the analyzed data.
[0148] The "sending and receiving means" refers to the way in which the server sends search results to the user and receives the user's selections back.
[0149] The "means for automatically making a reservation" is a process in which the server automatically completes the reservation procedure for the store selected by the user.
[0150] "Means of notification" refers to a method for automatically notifying all participants of reservation completion information and change information.
[0151] The "means for receiving additions and changes, reprocessing reservations, and re-notifying updated information" refers to the process of receiving additions and changes requests from users, re-making new reservations based on those requests, and re-notifying all participants of the updated information.
[0152] A "smartphone application" is software that runs on a smartphone and allows users to enter meeting details, view search results, and manage reservations.
[0153] "Conditions" refers to user-entered data such as the purpose of the meeting, date and time, budget, and participant profiles.
[0154] "Suggested stores" are candidate stores suitable for meetings, selected by the server based on the user's conditions.
[0155] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable physical store based on the information, and then automatically makes reservations, contacts, and handles changes. Specific embodiments for implementing the present invention are described in detail below.
[0156] 1. User Input:
[0157] The user starts the smartphone application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward). This information is saved on the smartphone application and sent to the server by pressing the send button.
[0158] 2. Data reception and analysis:
[0159] The server receives the data sent from the smartphone. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis makes it possible to search for the best brick-and-mortar store that meets the criteria. Natural language processing technology and statistical analysis algorithms are used for the analysis.
[0160] 3. Store Locator:
[0161] The server then searches for the most suitable store from a pre-registered store database based on the analyzed data. This server is equipped with an AI algorithm that evaluates the stores that best meet the criteria and creates a list of stores with the highest priority.
[0162] 4. Store suggestions and selection:
[0163] The server transmits the generated optimal store list to the smartphone terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0164] 5. Automatic booking:
[0165] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the smartphone device.
[0166] 6. Booking Confirmation and Notification:
[0167] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0168] 7. Additions and Changes:
[0169] If there are any additions or changes to participants after a reservation is made, the user sends the changes to the server via the smartphone application. The server analyzes these changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the changes is automatically notified to all participants again.
[0170] As a concrete example, if a user is planning a year-end party in Shinjuku, they first enter the purpose of the party and information about the participants into a smartphone application, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server automatically confirms the reservation for this restaurant, and a reservation confirmation email is sent to the user and all participants. If additional participants are added later, they can enter the changes again through the app, and the new restaurant reservation will be automatically processed by the AI.
[0171] Here are some example prompts for a generative AI model:
[0172] text
[0173] Please use the information below to suggest the best venue for your meeting.
[0174] Purpose of the meeting: {{purpose}}
[0175] Date and time: {{date}}
[0176] Budget: {{budget}}
[0177] Participant Profiles: {{profiles}}
[0178] Please let me know the store information you have proposed.
[0179] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0180] Step 1:
[0181] The user starts the smartphone application and inputs the purpose of the meeting, date and time, budget, and participant profiles (e.g., age, allergy information, food preferences, location). This input data is temporarily saved in the application.
[0182] Step 2:
[0183] The terminal sends the saved input data to the server. The server receives it and starts analyzing the data. It classifies and analyzes the input data (purpose, date and time, budget, profile) and extracts each item. The analysis results are saved in the server's internal database.
[0184] Step 3:
[0185] The server searches for stores based on the analyzed data. From a pre-registered store database, an AI algorithm evaluates the most suitable store based on the conditions, and creates a list of stores with the highest priority. This list is generated internally by the server.
[0186] Step 4:
[0187] The server sends the generated optimal store list to the user's smartphone. The device displays the received store list to the user. The user then selects the desired store from the suggested store list.
[0188] Step 5:
[0189] The store information selected by the user is sent back to the server. The server then makes a reservation for this store using an automatic reservation system. The reservation system automatically matches the input data with the store's reservation system and completes the reservation procedure.
[0190] Step 6:
[0191] After the reservation is completed, the server generates reservation information (store name, address, date and time, reservation number) and returns it to the user's smartphone. The device displays the received reservation information to the user. The server also automatically sends email notifications to all participants at the same time.
[0192] Step 7:
[0193] If the user needs to add or change participants after making a reservation, they send the changes to the server through the application. The server receives the changes and re-analyzes them. If necessary, they can search for stores again, cancel existing reservations, and make new reservations. The final updated information is automatically notified again by the server to all participants.
[0194] 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.
[0195] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on that information. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and suggests the most suitable restaurant based on those emotions, the system realizes meeting planning with higher user satisfaction.
[0196] 1. User Input and Emotion Recognition:
[0197] The user launches the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participants' profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward).The application is equipped with an emotion engine that recognizes the user's emotions in real time based on the input and also collects that emotion data.
[0198] 2. Data reception and analysis:
[0199] The device saves the entered information and, when the user presses the send button, sends it to the server. The server receives the data sent from the device and analyzes the purpose of the meeting, date and time, budget, participant profiles, and emotional data. Based on the analysis results, it generates optimal store search criteria that take the user's emotions into consideration.
[0200] 3. Store Locator:
[0201] The server searches for the most suitable store from the store database based on the analyzed data. At this time, the emotion engine also takes into account the user's emotional state (e.g., wanting to relax, wanting to have fun, wanting to spend quiet time), and generates a list of high-priority stores by taking into account the evaluation scores of stores corresponding to the emotion.
[0202] 4. Store suggestions and selection:
[0203] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0204] 5. Automatic booking:
[0205] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and sent to the terminal.
[0206] 6. Booking Confirmation and Notification:
[0207] Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion, and then sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email. For example, a message reflecting the user's emotion, such as "Have a great time!", is attached.
[0208] 7. Additions and Changes:
[0209] If a user adds or changes participants after making a reservation, they enter the changes through the application and send them to the server. The server analyzes these changes and performs a new store search based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is automatically notified to all participants, along with a message generated again using the emotion engine.
[0210] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." The AI searches for restaurants and suggests Japanese izakayas with a relaxing atmosphere. Once the restaurant is selected and the reservation is completed, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, the changes can be entered through the app, and the new restaurant reservation will be automatically processed by the AI. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held in accordance with the emotions of the participants.
[0211] The processing flow will be explained below.
[0212] Step 1:
[0213] User: Launches the application. On the opening screen, the user enters the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), budget (e.g., 5,000 yen per person), and participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). During this process, the emotion engine analyzes the user's input, facial expressions, voice, etc., and recognizes emotional data (e.g., wanting to relax, wanting to have fun).
[0214] Step 2:
[0215] Terminal: Stores the information and emotion data entered by the user, and sends the data to the server when the send button is pressed.
[0216] Step 3:
[0217] Server: Receives data sent from the device. Analyzes the received data and extracts and analyzes each item (purpose, date and time, budget, participant profile, emotional data). Generates search criteria based on the analysis results.
[0218] Step 4:
[0219] Server: Based on the analyzed data, the AI algorithm searches for the most suitable store from the store database. At this time, it takes into account the emotional data provided by the emotion engine and prioritizes a list of stores that match the emotion. This list also includes evaluation criteria such as the atmosphere of the seating area, music, and store reviews.
[0220] Step 5:
[0221] Server: Sends the generated optimal store list to the terminal.
[0222] Device: Displays a list of stores to the user, including store name, rating, address, photo, and sentiment-based recommendations.
[0223] Step 6:
[0224] User: Select the desired store from the displayed store list and press the Confirm button. The selected store information will be resent to the server.
[0225] Step 7:
[0226] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0227] Step 8:
[0228] Server: Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion. For example, if the emotion of wanting to have fun is recognized, a message such as "Have a great time!" is generated. The server then sends the reservation information and a message based on the emotion to all participants via email.
[0229] Step 9:
[0230] User: If any additions or changes to participants occur after a reservation is made, the changes are entered through the application and sent to the server.
[0231] Step 10:
[0232] Server: Receives and analyzes the changes, performs a new store search based on the new conditions, cancels existing reservations and confirms new reservations as necessary.
[0233] Step 11:
[0234] Server: Generates updated reservation information after the changes and creates appropriate messages using the emotion engine. This information is then re-notified to all participants. For example, if a new participant joins and the emotion of anticipating a lively gathering is recognized, a message such as "A fun time with lots of people awaits!" is attached.
[0235] As a result, a system is provided that consistently selects the optimal store, makes reservations, and communicates with the user, taking into account the user's emotions.
[0236] Example 2
[0237] 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."
[0238] Conventional meeting planning systems select restaurants without considering the user's emotions, making it impossible to suggest the most suitable restaurant based on the user's emotions, and improving user satisfaction was an issue. Also, when participants were added or changed after the reservation was made, it was complicated to handle the situation, placing a heavy burden on the organizer.
[0239] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes: means for inputting the purpose, date and time of the meeting, budget, and participant profiles and emotion data; means for receiving the input data and analyzing it using natural language processing software and a machine learning model; means for searching for the optimal commercial facility based on the analyzed data, taking the user's emotional state into consideration; means for sending the search results to the user's terminal and re-receiving the commercial facility selected by the user; means for automatically making a reservation at the commercial facility selected by the user; means for generating a message corresponding to the emotion of the reservation information after the reservation is completed and notifying the participants; and means for receiving additions or changes made after the reservation, processing the reservation again, and re-notifying the participants of the updated information together with a message corresponding to the emotion. This makes it possible to suggest the optimal restaurant taking the user's emotion into consideration, and allows additions or changes made after the reservation to be quickly handled, significantly reducing the burden on the organizer.
[0240] A "meeting" refers to a gathering or event where multiple participants come together for a specific purpose.
[0241] "Purpose" refers to the objective or theme you want to achieve at the meeting.
[0242] "Date and Time" refers to the specific date and time that the meeting will be held.
[0243] "Budget" refers to the amount of money allocated per participant for the meeting.
[0244] A "participant profile" contains information about each individual attending a meeting, including age, allergy information, and food preferences.
[0245] "Emotion data" refers to the user's emotional state, and refers to data representing emotions such as joy, relief, and excitement felt by the user during the process of planning and booking a meeting.
[0246] "Terminal" refers to an electronic device used by a user, including a smartphone, tablet, or PC.
[0247] "Server" refers to a computer system that stores, processes, and provides data over a network.
[0248] "Natural language processing software" means software for processing text data entered by a user and analyzing its content.
[0249] A "machine learning model" refers to a collection of algorithms that learn from data and make predictions and classifications, and is used to analyze data and make optimal suggestions.
[0250] "Commercial facility" means a building or place that provides specific services or goods to consumers, such as a restaurant or retail store.
[0251] "Reservation System" means a system for managing and executing reservations for commercial facilities.
[0252] "Notification" means the act of informing a user or participant of specific information, including email and in-app notifications.
[0253] "Message" refers to textual information used to convey specific information or emotions.
[0254] "Additions and changes" refers to adding new participants or modifying existing conditions to the content of a meeting that has already been decided.
[0255] The system of the present invention is designed to make meeting planning more efficient and increase user satisfaction. This system uses a combination of hardware and software to input the purpose of the meeting, date and time, budget, and participant profiles and emotional data, and then analyzes this information to automatically search for the most suitable commercial facility, make reservations, notify users, and handle changes.
[0256] User Input and Emotion Recognition
[0257] Users turn on their smartphone, tablet, PC, or other device and use a dedicated application to enter detailed information about the meeting, including the purpose of the meeting (e.g., a year-end party), the date and time, the budget, and the participants' profiles (age, allergy information, food preferences, etc.). The application is equipped with an emotion engine that collects user emotional data in real time based on the input content and input speed.
[0258] Data reception and analysis
[0259] The device sends the information and emotional data entered by the user to a server, which then analyzes the data using natural language processing software (e.g., SpaCy or NLTK) and machine learning models (e.g., TensorFlow or PyTorch). This analysis helps understand the user's intent and desires, and also analyzes the emotional data to understand the user's emotional state.
[0260] Store Locator and Suggestions
[0261] The server searches for the most suitable commercial facility based on the analyzed data. Specifically, it extracts facilities that match the criteria from a commercial facility database (e.g., MySQL or PostgreSQL). The emotion engine considers the user's emotional state and assigns an evaluation score to the most suitable facilities, ranking them accordingly. As a result, a list of facilities that match the user's emotions, such as facilities with a smooth and relaxing atmosphere, is created.
[0262] Automatic booking and notifications
[0263] The terminal displays a list of optimal commercial facilities suggested by the server to the user. The user selects the desired facility and confirms the reservation. The selection information is resent to the server, which then reserves the facility using an automatic reservation system (e.g., OpenTable API or Gurunavi API). If the reservation is successful, reservation information (e.g., facility name, address, date and time, reservation number) is generated and notified to all participants along with a message generated by the emotion engine. An SMTP server (e.g., Postfix or SendGrid) is used for notification.
[0264] Additions and changes after booking
[0265] If a user makes additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and performs a new search based on the new conditions. If necessary, it cancels the existing reservation and confirms the new reservation. The latest reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0266] Examples of concrete examples and prompts
[0267] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." Then, using AI to search for commercial facilities, it suggests a Japanese izakaya with a relaxing atmosphere. After selecting that facility and completing the reservation, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, they can enter the changes through the app, and the AI will automatically process the new facility reservation. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held that reflects the participants' emotions.
[0268] An example of a prompt sentence is, "Purpose of the meeting: year-end party, Date and time: December 20th, 7:00 PM, Budget: 5,000 yen per person, Participant profile: 30s, one person has a shellfish allergy, likes Japanese food, Shinjuku Ward. Please enter this information and we would like you to suggest the best restaurant for those in a relaxed mood. We would also like the system to automatically handle reservation changes if additional participants arrive."
[0269] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0270] Processing steps of this system's program
[0271] Step 1: User Input and Emotion Recognition
[0272] The user launches the application and enters the purpose of the meeting, the date and time, the budget, and the participant profiles. The input information includes the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), the budget per person (e.g., 5,000 yen), food allergy information (e.g., one person has a shellfish allergy), food preferences (e.g., prefers Japanese food), and location (e.g., Shinjuku Ward). As the information is being input, the emotion engine built into the application analyzes the user's input speed and the strength of their touch gestures to collect emotion data in real time. Once the input data and emotion data are collected, this information is saved on the device.
[0273] Input: User input (meeting details, emotion data)
[0274] Output: Saved input data and emotion data
[0275] Step 2: Data reception and analysis
[0276] When the user presses the "send" button, the device sends the entered information and emotional data to the server. The server then analyzes the received data, using natural language processing software (e.g., SpaCy, NLTK) and machine learning models (e.g., TensorFlow, PyTorch) to understand the purpose and requests of the meeting, and then uses an emotional engine to analyze the emotional data. As a result, the specific requirements for the meeting and the user's emotional state are obtained as the analysis results.
[0277] Input: Input data and emotion data sent from the device
[0278] Output: Analysis results (specific requirements for the meeting, user's emotional state)
[0279] Step 3: Store Locator
[0280] Based on the analysis results, the server searches for the most suitable commercial facility from a commercial facility database (e.g., MySQL, PostgreSQL). The user's emotional state (e.g., wanting to relax or wanting to have fun) is also taken into consideration. The emotional engine ranks the facilities that are most suitable for the user with an evaluation score. The generated store list includes detailed information about each facility (e.g., name, address, atmosphere, budget, menu).
[0281] Input: Analysis results (specific requirements for the meeting, user's emotional state)
[0282] Output: List of stores with rating scores
[0283] Step 4: Store proposal and selection
[0284] The server sends the generated optimal store list to the user's device. The device displays the suggested store list to the user, allowing the user to select the desired store. Specifically, detailed information and evaluation scores for each store are displayed, allowing the user to select the most suitable facility from among them. The selected store information is also saved on the device.
[0285] Input: List of stores with rating scores
[0286] Output: Store information selected by the user
[0287] Step 5: Automated booking
[0288] The user selects the desired restaurant and presses the reservation confirmation button. This information is sent from the terminal to the server. The server then uses an automated reservation system (e.g., OpenTable API, Gurunavi API) to make a reservation for the selected restaurant. If the reservation is successful, it generates reservation information (restaurant name, address, date and time, reservation number) and sends it to the terminal.
[0289] Input: Store information selected by the user
[0290] Output: Reservation confirmation information (store name, address, date and time, reservation number)
[0291] Step 6: Booking confirmation and notification
[0292] When the server receives the reservation confirmation information, it uses an emotion engine to generate a message that corresponds to the user's emotion. The reservation information is then notified to all participants along with the generated message (e.g., "Have a great time!"). Notifications are sent using an SMTP server (e.g., Postfix or SendGrid).
[0293] Input: Reservation confirmation information
[0294] Output: Notifications to all participants (message and reservation information)
[0295] Step 7: Additions and changes
[0296] If a user wants to make additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and searches for stores again based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0297] Input: Changes (new participant information and conditions)
[0298] Output: Updated reservation information, notification to participants (message and reservation information)
[0299] (Application example 2)
[0300] 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."
[0301] Conventional meeting planning systems are specialized in searching for and reserving physical locations, making them difficult to apply to planning and executing virtual meetings in an online environment. They also lack the ability to suggest optimal locations based on the emotions and atmosphere of the participants, making it difficult to improve user satisfaction. Furthermore, additions and changes after a reservation are often made manually, placing a heavy burden on the organizer. The present invention aims to solve these problems.
[0302] 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.
[0303] In this invention, the server includes means for inputting the purpose, date and time of the meeting, budget, and participant attributes, means for receiving and analyzing the input data, means for searching for the optimal virtual store based on the analyzed data and the user's emotions, means for sending the search results to the user's terminal and re-receiving the store selected by the user, means for automatically making a reservation at the store selected by the user, means for notifying participants of reservation information after the reservation is completed, means for receiving additions or changes after the reservation, processing the reservation again, and re-notifying participants of the updated information, and means for generating a message according to the user's emotions using an emotion engine. This automates the planning of online meetings, selection of virtual stores, reservations, and changes, and makes it possible to suggest the optimal store according to the emotions of the participants.
[0304] The "purpose of the meeting" refers to the purpose or theme of the meeting, such as the content of a year-end party, a launch party, or a conference.
[0305] "Date and Time" refers to the specific date and time at which the meeting will take place. For example, December 20, 2023 at 7:00 p.m.
[0306] A "budget" refers to the maximum cost of a meeting, usually set as a per person budget.
[0307] "Participant attributes" refers to the characteristics and conditions of the people attending the meeting, including age, food allergies, and food preferences.
[0308] An "emotion engine" is a technology that analyzes the user's input data and behavior, and recognizes and judges their emotional state at that time (e.g., wanting to relax, wanting to get excited, etc.).
[0309] "Virtual stores" refer to meeting places and services available online, such as a virtual Japanese restaurant or online gaming sessions.
[0310] "Means of analysis" refers to the technology or algorithms that analyze information based on input data and assign meaning to it.
[0311] "Means for searching for stores" refers to the function of finding the most suitable stores and services from a database based on the user's input data and emotions.
[0312] "Means for making a reservation" refers to a function that automatically proceeds with the reservation procedure for the store selected by the user.
[0313] "Means of notification" refers to the function of notifying participants of reservation information and updated information, including email and messaging.
[0314] "Means for receiving additions and changes" refers to the function of receiving information about additions and changes to participants that occur after a reservation and reflecting this information in the system.
[0315] "Means for generating a message" refers to a function that uses an emotion engine to automatically generate a message according to the user's emotions.
[0316] This invention is a system that efficiently searches for a virtual store desired by a user and automatically processes reservations and changes by using a means for inputting the purpose, date and time of the meeting, budget, and attributes of the participants. It also has a function that uses an emotion engine to generate and notify messages according to the user's emotions.
[0317] Overall system configuration:
[0318] The system of the present invention consists of a user terminal such as a smartphone or computer, and a server that performs data analysis, store searches, and reservation procedures. The server contains the following main modules:
[0319] 1. User Input and Emotion Recognition Module:
[0320] The user launches the application and enters meeting details (purpose, date and time, budget, and participant attributes). As the details are entered, the emotion engine runs and analyzes emotions in real time from the user's text and voice input. The software used is the Google (registered trademark) Cloud Natural Language API.
[0321] 2. Data Analysis Module:
[0322] The input data is sent from the device to a server where it is analyzed using the Python Django framework to evaluate the purpose, date and time of the meeting, budget, and participant attributes and emotional data.
[0323] 3. Virtual store locator module:
[0324] Based on the results of the data analysis, the optimal store is searched for from a virtual store database (PostgreSQL), and a list of high-priority stores is generated using a scoring algorithm (scikit-learn or TensorFlow).
[0325] 4. Store suggestion and selection module:
[0326] The search results are sent to the user's terminal, and the user selects the desired virtual store from the list. This information is then sent back to the server.
[0327] 5. Automated booking module:
[0328] The reservation process is automated based on the selected virtual store information, using APIs such as Twilio and IFTTT.
[0329] 6. Notification module:
[0330] Once the reservation is complete, the reservation details are generated and notified to all participants via a cloud messaging service (Firebase Cloud Messaging). An emotion engine is also used to generate messages that correspond to the user's emotions.
[0331] 7. Change response module:
[0332] If any changes or additions to participants occur after a reservation is made, the user enters the changes and sends them back to the server. The server then performs the process again, from data analysis to store search and reservation, based on the updated information, and notifies the user of the latest reservation information.
[0333] Examples:
[0334] Here is an example prompt for a user planning an "online year-end party."
[0335] Example prompt:
[0336] "I'm in my 30s and would like to host an online year-end party in a relaxed atmosphere. The budget is 5,000 yen per person, and the event will be held on December 20th at 7:00 PM. Please recommend a virtual venue."
[0337] This system streamlines the entire process by automatically searching for and reserving the best venue for the virtual meeting the user is planning, and sending messages based on the emotions of the participants.
[0338] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0339] Step 1:
[0340] User Input and Emotion Recognition
[0341] Users launch the application using a smartphone or computer and input the purpose of the meeting, date and time, budget, and participant attributes. The input is received by the device, and the emotion engine runs to analyze the user's emotions in real time. Input is in the form of text or voice, and emotion recognition is performed using the Google Cloud Natural Language API. Input data includes participants' names, ages, allergy information, food preferences, etc. Analyzed emotion data is generated as output.
[0342] Step 2:
[0343] Data transmission
[0344] The entered data is sent from the device to a server, including meeting details (purpose, date, and budget), participant profiles, and analyzed emotional data. The data is securely transmitted to the server via the Internet.
[0345] Step 3:
[0346] Data analysis
[0347] The server analyzes the received data, using the Python Django framework. The data analysis evaluates the purpose of the meeting, date and time, budget, participant attributes (e.g., food allergy information, food preferences), and emotional data to understand the user's needs. The optimal search criteria are generated as output. For example, if the user wants to relax, the system will prioritize suggesting virtual stores where they can relax.
[0348] Step 4:
[0349] Virtual store locator
[0350] The server searches a virtual store database based on the results of the analysis. This database uses PostgreSQL and stores store names, service details, ratings, etc. Using a scoring algorithm (scikit-learn or TensorFlow), it matches the user's emotional state with store data and generates a list of stores with high priority. A list of suggested stores is generated as the output.
[0351] Step 5:
[0352] Send store list
[0353] The server sends the generated store list to the user's device. The user's device receives the proposed store list and displays it on the screen. The user selects the desired store from the displayed store list.
[0354] Step 6:
[0355] Store selection and resubmission
[0356] The user selects the desired store and retransmits the selection result to the server via the terminal, and the selected store information is received by the server.
[0357] Step 7:
[0358] Automatic booking
[0359] The server automatically makes a reservation at the selected store. For automatic reservations, APIs such as Twilio and IFTTT are used. If the reservation is successful, the server generates reservation details (store name, address, date and time, reservation number) and sends them to the user's device using a cloud messaging service (Firebase Cloud Messaging).
[0360] Step 8:
[0361] Reservation information notification
[0362] After the reservation is confirmed, the server generates a message according to the reservation details and emotion. Using the emotion engine, it generates a message according to the user's emotion (e.g., "Enjoy a relaxing time") and notifies all participants along with the reservation information. Notifications are sent via email or in-app messages.
[0363] Step 9:
[0364] Change response
[0365] If a user wants to add or change participants after making a reservation, they input the changes on their device and send them to the server. The server analyzes the received changes and performs the entire process from data analysis to store search and reservation again based on the new conditions. The latest reservation information is then re-notified along with a message generated based on the emotion engine.
[0366] 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.
[0367] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (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.
[0368] 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.
[0369] [Second embodiment]
[0370] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0371] 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.
[0372] 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).
[0373] 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.
[0374] 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.
[0375] 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).
[0376] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0377] 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.
[0378] 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.
[0379] 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.
[0380] In the smart glasses 214, the 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.
[0381] 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."
[0382] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on the information. Specific embodiments of the system are described below.
[0383] 1. User Input:
[0384] The user starts the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). This information is saved on the device and sent to the server by pressing the send button.
[0385] 2. Data reception and analysis:
[0386] The server receives the data sent from the device. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis enables the optimal store search based on the conditions.
[0387] 3. Store Locator:
[0388] The server searches for the most suitable store based on the analyzed data. A store database is pre-registered on the server, and an AI algorithm evaluates stores that meet the meeting conditions and creates a list of stores with the highest priority.
[0389] 4. Store suggestions and selection:
[0390] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0391] 5. Automatic booking:
[0392] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device.
[0393] 6. Booking Confirmation and Notification:
[0394] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0395] 7. Additions and Changes:
[0396] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes these changes and, if necessary, searches for stores again, cancels existing reservations, and makes new reservations. The latest information after the changes is automatically notified to all participants again.
[0397] As a concrete example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party and information about the participants, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server would then automatically confirm the reservation for this restaurant, and a reservation confirmation email would be sent to the user and all participants. If additional participants are added later, they would simply enter the changes again through the app, and the new restaurant reservation would be automatically processed by the AI. As a result, the burden on the organizer would be significantly reduced, and the meeting would run more smoothly.
[0398] The processing flow will be explained below.
[0399] Step 1:
[0400] User: Launches the application and enters the purpose of the meeting (e.g., year-end party), the date and time of the meeting (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, living in Shinjuku Ward).
[0401] Step 2:
[0402] Terminal: Saves the entered information and sends it to the server when the send button is pressed.
[0403] Step 3:
[0404] Server: Analyzes the received data and extracts each item (purpose, date and time, budget, participant profile, etc.). Based on the results of this analysis, it generates search criteria for stores that match the conditions.
[0405] Step 4:
[0406] Server: Based on the analyzed data, it searches for the most suitable store from the store database. It uses an AI algorithm to evaluate the search results and generate a list of stores with high priority.
[0407] Step 5:
[0408] Server: Sends the generated optimal store list to the terminal.
[0409] Terminal: Displays a list of stores to the user.
[0410] Step 6:
[0411] User: Select the desired store from the displayed store list and press the confirm button. The selected store information is sent to the server.
[0412] Step 7:
[0413] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0414] Step 8:
[0415] Server: Receives reservation confirmation information. After receiving it, the reservation information is sent to all participants by email.
[0416] Step 9:
[0417] User: When adding or changing participants after a reservation, the changes are entered through the application and sent to the server.
[0418] Step 10:
[0419] Server: Analyzes the changes and performs a new store search based on the new criteria, canceling existing reservations and confirming new reservations as necessary.
[0420] Step 11:
[0421] Server: Generates the latest reservation information after the change and notifies all participants again.
[0422] Example 1
[0423] 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."
[0424] In today's society, planning and managing a meeting smoothly is important in our busy daily lives. However, when planning a meeting, coordinating the schedules of participants, selecting an appropriate venue, securing reservations, and even accommodating specific needs of participants (such as allergies or dietary preferences) can be challenging. These procedures require time and effort, increasing the burden on organizers.
[0425] 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.
[0426] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and personal information of the participants, a means for receiving and analyzing the input data, a means for searching for the optimal location based on the analyzed data, and a means for evaluating the search means using an artificial intelligence model. This allows users to easily search for the optimal meeting location, make reservations, and automatically manage any necessary changes. Specifically, the location search is automated, taking into account the allergy information and food preferences of the participants, allowing for efficient and professional planning.
[0427] The "purpose of the meeting" is information that indicates the purpose for which the meeting is being held.
[0428] "Date and time" is information indicating the specific date and time when the meeting will start.
[0429] "Budget" is information that indicates the maximum amount of money that can be spent per person or for the entire meeting.
[0430] "Participant personal information" refers to individual information about people attending the meeting, such as their age, food allergies, food preferences, and location.
[0431] "Input means" refers to a device or software that provides an interface for a user to provide the required information to the system.
[0432] The "receiving and analyzing means" is a device or software that receives data sent from a user and analyzes its content.
[0433] The "means for searching for the best location" is a device or software that finds a suitable meeting place based on the received data.
[0434] The "means for transmitting search results to the user's terminal" refers to a device or software for transferring the search results to the terminal used by the user.
[0435] The "means for automatically making a reservation" is a device or software that allows the system to automatically make a reservation for a location selected by the user.
[0436] "Means for notifying" refers to a device or software for communicating information to participants after a reservation is completed.
[0437] "Means for receiving additions and changes, re-processing reservations, and notifying updated information" refers to a device or software that accepts changes that occur after a reservation, makes a new reservation, and notifies participants of the results.
[0438] "Means for evaluating the search means using an artificial intelligence model" refers to a device or software that uses machine learning or AI technology to evaluate search results based on received data and improve their accuracy.
[0439] The system of the present invention allows users to input the purpose, date, time, budget, and personal information of participants, and then automatically searches for the optimal location, makes reservations, contacts, and handles changes based on that information. This system is implemented using a user's device, a cloud server, and an artificial intelligence model.
[0440] Hardware and software used
[0441] The user's device is a smartphone or personal computer, which includes software for running the mobile application and a web browser. The cloud server is equipped with a Python-based processing system and a database management system (e.g., MySQL) for data analysis, store searches, and reservation processing.
[0442] Specifically, the following software and libraries are used:
[0443] NLP libraries: Use spaCy or NLTK to analyze data received from users.
[0444] Database management system: Use MySQL or PostgreSQL to manage store information and user data.
[0445] Machine learning libraries: Use Scikit-learn and TensorFlow to build AI models for store valuation.
[0446] Email Sending API: Use SendGrid or Amazon SES to automatically send reservation confirmation emails.
[0447] Program processing explanation
[0448] The user launches the smartphone application and enters the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the personal information of the participants (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, Shinjuku Ward). This information is saved on the device and sent to the cloud server by pressing the send button.
[0449] The server receives and analyzes the data sent from the device using Natural Language Processing (NLP) technology to extract information such as the purpose of the meeting, date and time, budget, and personal information.
[0450] The server then uses the analyzed data to search for the best store. It generates a database query to extract stores that match the criteria, and uses machine learning algorithms to evaluate the criteria and create a list of stores with the highest priority.
[0451] The search results are sent to the user's device, and the application displays a list of suggested stores to the user. When the user selects the desired store, the selection is sent back to the server.
[0452] The server automatically makes a reservation at the selected store. The reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device. In addition, reservation confirmation information is automatically sent by email to all participants.
[0453] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes the changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the change is automatically notified to all participants again.
[0454] Specific examples
[0455] For example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party, the date and time (December 20th, 7:00 PM), a budget of 5,000 yen per person, and personal information such as "30s, one person with shellfish allergy, Japanese food lover, Shinjuku ward." The input data is sent to the server, and the AI searches for the most suitable restaurant. From the list of suggested restaurants, the user selects a Japanese izakaya in Shinjuku, and the server automatically makes the reservation. A reservation confirmation email is then sent to the user and all participants. If additional participants are added, the changes can be sent to the server via the app, and a new restaurant reservation is automatically processed. This system significantly reduces the burden on organizers and ensures smooth meeting times.
[0456] Prompt Sentence Examples
[0457] "Please create a system that inputs the purpose of the meeting, date and time, budget, and participant profiles, and based on that, searches for and reserves the best venue for the year-end party in Shinjuku, and also automates communication and changes."
[0458] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0459] Processing flow
[0460] Step 1:
[0461] The user starts the smartphone application and inputs the purpose of the meeting, the date and time, the budget, and the personal information of the participants. This input information is saved in the smartphone's local storage. For example,
[0462] Purpose of the meeting: Year-end party
[0463] Date and time: December 20th, 7:00 PM
[0464] Budget: 5,000 yen per person
[0465] Participant personal information: 30s, one person with shellfish allergy, likes Japanese food, Shinjuku Ward
[0466] The user presses the "Send" button to send this information to the server.
[0467] Step 2:
[0468] The server receives data sent from the user's device. The received data is first analyzed using an NLP (Natural Language Processing) library. Specifically, spaCy is used to tokenize the received data and extract the purpose of the meeting, date and time, budget, and personal information. Based on the results of this analysis, structured data is generated for further processing. The input is the data sent by the user, and the output is the analyzed structured data.
[0469] Step 3:
[0470] The server searches for the most suitable stores based on the analyzed data. It generates a database query and extracts stores that match the criteria from a pre-registered store information database. It uses a machine learning model (e.g., Scikit-learn's RandomForestClassifier) to evaluate the extracted stores and create a list of the highest priority stores. The input is the analyzed structured data, and the output is a list of the most suitable stores.
[0471] Step 4:
[0472] The server sends the generated list of optimal stores to the user's device. Specifically, this list is converted into JSON format and displayed in real time on the user's mobile application. The user selects the desired store from the displayed list of stores. The input is the list of optimal stores, and the output is the user's selection data.
[0473] Step 5:
[0474] When the user selects the desired store and presses the "Confirm" button, the selection is sent back to the server. The server then makes a reservation for the selected store via the automated reservation system. Specifically, it accesses the store's reservation API, sends the necessary data, and receives a response indicating that the reservation is complete. The input is the user's selected data, and the output is reservation confirmation information.
[0475] Step 6:
[0476] When the server receives the reservation confirmation information, it generates an email containing the reservation details (store name, address, date and time, reservation number) and automatically sends it to all participants. As a specific example, the email is sent using the SendGrid API. The input is the reservation confirmation information, and the output is a notification that the email has been sent.
[0477] Step 7:
[0478] If the user adds more participants or changes information after making a reservation, the changes are entered through the application. This information is sent back to the server. The server analyzes these changes, searches for new stores and makes new reservations as needed, and generates new reservation information. The changed information is automatically notified again to all participants. The input is the user's changed data, and the output is the updated reservation information.
[0479] (Application example 1)
[0480] 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."
[0481] Conventional meeting planning and reservation methods require organizers to manually search for and reserve restaurants, which requires a great deal of effort and time. Also, selecting a restaurant that is suitable for everyone while accommodating allergies and food preferences is complicated and difficult to do efficiently. Furthermore, if there are additions or changes made after a reservation is made, the time and effort required to search for a restaurant again and make a new reservation is a major issue.
[0482] 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.
[0483] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and the participant profiles, a means for receiving and analyzing the input data, and a means for searching for the most suitable physical store based on the analyzed data. This allows the smartphone application to suggest the most suitable store based on the meeting conditions and automatically make a reservation. Furthermore, by automating notifications and changes after the reservation is completed, the burden on the organizer is significantly reduced, allowing the meeting to be held smoothly.
[0484] The "purpose of the meeting" is a summary of the purpose or content for which a particular meeting is being held.
[0485] "Date and Time" means the date and time at which the meeting will take place.
[0486] A "budget" is the maximum amount of money that can be spent by each individual or the entire group of participants in a meeting.
[0487] A "participant profile" is detailed individual information about people attending a meeting, such as their age, food preferences, allergy information, and location.
[0488] The "means for inputting" is an interface that allows a user to input the purpose, date and time of the meeting, the budget, and the profiles of the participants into the application.
[0489] "Means for receiving and analyzing" refers to the process by which the server receives the input data and breaks it down into individual items for understanding.
[0490] The "searching method" is a method in which the server selects the most suitable physical store from a pre-registered store database based on the analyzed data.
[0491] The "sending and receiving means" refers to the way in which the server sends search results to the user and receives the user's selections back.
[0492] The "means for automatically making a reservation" is a process in which the server automatically completes the reservation procedure for the store selected by the user.
[0493] "Means of notification" refers to a method for automatically notifying all participants of reservation completion information and change information.
[0494] The "means for receiving additions and changes, reprocessing reservations, and re-notifying updated information" refers to the process of receiving additions and changes requests from users, re-making new reservations based on those requests, and re-notifying all participants of the updated information.
[0495] A "smartphone application" is software that runs on a smartphone and allows users to enter meeting details, view search results, and manage reservations.
[0496] "Conditions" refers to user-entered data such as the purpose of the meeting, date and time, budget, and participant profiles.
[0497] "Suggested stores" are candidate stores suitable for meetings, selected by the server based on the user's conditions.
[0498] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable physical store based on the information, and then automatically makes reservations, contacts, and handles changes. Specific embodiments for implementing the present invention are described in detail below.
[0499] 1. User Input:
[0500] The user starts the smartphone application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward). This information is saved on the smartphone application and sent to the server by pressing the send button.
[0501] 2. Data reception and analysis:
[0502] The server receives the data sent from the smartphone. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis makes it possible to search for the best brick-and-mortar store that meets the criteria. Natural language processing technology and statistical analysis algorithms are used for the analysis.
[0503] 3. Store Locator:
[0504] The server then searches for the most suitable store from a pre-registered store database based on the analyzed data. This server is equipped with an AI algorithm that evaluates the stores that best meet the criteria and creates a list of stores with the highest priority.
[0505] 4. Store suggestions and selection:
[0506] The server transmits the generated optimal store list to the smartphone terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0507] 5. Automatic booking:
[0508] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the smartphone device.
[0509] 6. Booking Confirmation and Notification:
[0510] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0511] 7. Additions and Changes:
[0512] If there are any additions or changes to participants after a reservation is made, the user sends the changes to the server via the smartphone application. The server analyzes these changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the changes is automatically notified to all participants again.
[0513] As a concrete example, if a user is planning a year-end party in Shinjuku, they first enter the purpose of the party and information about the participants into a smartphone application, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server automatically confirms the reservation for this restaurant, and a reservation confirmation email is sent to the user and all participants. If additional participants are added later, they can enter the changes again through the app, and the new restaurant reservation will be automatically processed by the AI.
[0514] Here are some example prompts for a generative AI model:
[0515] text
[0516] Please use the information below to suggest the best venue for your meeting.
[0517] Purpose of the meeting: {{purpose}}
[0518] Date and time: {{date}}
[0519] Budget: {{budget}}
[0520] Participant Profiles: {{profiles}}
[0521] Please let me know the store information you have proposed.
[0522] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0523] Step 1:
[0524] The user starts the smartphone application and inputs the purpose of the meeting, date and time, budget, and participant profiles (e.g., age, allergy information, food preferences, location). This input data is temporarily saved in the application.
[0525] Step 2:
[0526] The terminal sends the saved input data to the server. The server receives it and starts analyzing the data. It classifies and analyzes the input data (purpose, date and time, budget, profile) and extracts each item. The analysis results are saved in the server's internal database.
[0527] Step 3:
[0528] The server searches for stores based on the analyzed data. From a pre-registered store database, an AI algorithm evaluates the most suitable store based on the conditions, and creates a list of stores with the highest priority. This list is generated internally by the server.
[0529] Step 4:
[0530] The server sends the generated optimal store list to the user's smartphone. The device displays the received store list to the user. The user then selects the desired store from the suggested store list.
[0531] Step 5:
[0532] The store information selected by the user is sent back to the server. The server then makes a reservation for this store using an automatic reservation system. The reservation system automatically matches the input data with the store's reservation system and completes the reservation procedure.
[0533] Step 6:
[0534] After the reservation is completed, the server generates reservation information (store name, address, date and time, reservation number) and returns it to the user's smartphone. The device displays the received reservation information to the user. The server also automatically sends email notifications to all participants at the same time.
[0535] Step 7:
[0536] If the user needs to add or change participants after making a reservation, they send the changes to the server through the application. The server receives the changes and re-analyzes them. If necessary, they can search for stores again, cancel existing reservations, and make new reservations. The final updated information is automatically notified again by the server to all participants.
[0537] 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.
[0538] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on that information. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and suggests the most suitable restaurant based on those emotions, the system realizes meeting planning with higher user satisfaction.
[0539] 1. User Input and Emotion Recognition:
[0540] The user launches the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participants' profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward).The application is equipped with an emotion engine that recognizes the user's emotions in real time based on the input and also collects that emotion data.
[0541] 2. Data reception and analysis:
[0542] The device saves the entered information and, when the user presses the send button, sends it to the server. The server receives the data sent from the device and analyzes the purpose of the meeting, date and time, budget, participant profiles, and emotional data. Based on the analysis results, it generates optimal store search criteria that take the user's emotions into consideration.
[0543] 3. Store Locator:
[0544] The server searches for the most suitable store from the store database based on the analyzed data. At this time, the emotion engine also takes into account the user's emotional state (e.g., wanting to relax, wanting to have fun, wanting to spend quiet time), and generates a list of high-priority stores by taking into account the evaluation scores of stores corresponding to the emotion.
[0545] 4. Store suggestions and selection:
[0546] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0547] 5. Automatic booking:
[0548] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and sent to the terminal.
[0549] 6. Booking Confirmation and Notification:
[0550] Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion, and then sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email. For example, a message reflecting the user's emotion, such as "Have a great time!", is attached.
[0551] 7. Additions and Changes:
[0552] If a user adds or changes participants after making a reservation, they enter the changes through the application and send them to the server. The server analyzes these changes and performs a new store search based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is automatically notified to all participants, along with a message generated again using the emotion engine.
[0553] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." The AI searches for restaurants and suggests Japanese izakayas with a relaxing atmosphere. Once the restaurant is selected and the reservation is completed, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, the changes can be entered through the app, and the new restaurant reservation will be automatically processed by the AI. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held in accordance with the emotions of the participants.
[0554] The processing flow will be explained below.
[0555] Step 1:
[0556] User: Launches the application. On the opening screen, the user enters the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), budget (e.g., 5,000 yen per person), and participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). During this process, the emotion engine analyzes the user's input, facial expressions, voice, etc., and recognizes emotional data (e.g., wanting to relax, wanting to have fun).
[0557] Step 2:
[0558] Terminal: Stores the information and emotion data entered by the user, and sends the data to the server when the send button is pressed.
[0559] Step 3:
[0560] Server: Receives data sent from the device. Analyzes the received data and extracts and analyzes each item (purpose, date and time, budget, participant profile, emotional data). Generates search criteria based on the analysis results.
[0561] Step 4:
[0562] Server: Based on the analyzed data, the AI algorithm searches for the most suitable store from the store database. At this time, it takes into account the emotional data provided by the emotion engine and prioritizes a list of stores that match the emotion. This list also includes evaluation criteria such as the atmosphere of the seating area, music, and store reviews.
[0563] Step 5:
[0564] Server: Sends the generated optimal store list to the terminal.
[0565] Device: Displays a list of stores to the user, including store name, rating, address, photo, and sentiment-based recommendations.
[0566] Step 6:
[0567] User: Select the desired store from the displayed store list and press the Confirm button. The selected store information will be resent to the server.
[0568] Step 7:
[0569] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0570] Step 8:
[0571] Server: Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion. For example, if the emotion of wanting to have fun is recognized, a message such as "Have a great time!" is generated. The server then sends the reservation information and a message based on the emotion to all participants via email.
[0572] Step 9:
[0573] User: If any additions or changes to participants occur after a reservation is made, the changes are entered through the application and sent to the server.
[0574] Step 10:
[0575] Server: Receives and analyzes the changes, performs a new store search based on the new conditions, cancels existing reservations and confirms new reservations as necessary.
[0576] Step 11:
[0577] Server: Generates updated reservation information after the changes and creates appropriate messages using the emotion engine. This information is then re-notified to all participants. For example, if a new participant joins and the emotion of anticipating a lively gathering is recognized, a message such as "A fun time with lots of people awaits!" is attached.
[0578] As a result, a system is provided that consistently selects the optimal store, makes reservations, and communicates with the user, taking into account the user's emotions.
[0579] Example 2
[0580] 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."
[0581] Conventional meeting planning systems select restaurants without considering the user's emotions, making it impossible to suggest the most suitable restaurant based on the user's emotions, and improving user satisfaction was an issue. Also, when participants were added or changed after the reservation was made, it was complicated to handle the situation, placing a heavy burden on the organizer.
[0582] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes: means for inputting the purpose, date and time of the meeting, budget, and participant profiles and emotion data; means for receiving the input data and analyzing it using natural language processing software and a machine learning model; means for searching for the optimal commercial facility based on the analyzed data, taking the user's emotional state into consideration; means for sending the search results to the user's terminal and re-receiving the commercial facility selected by the user; means for automatically making a reservation at the commercial facility selected by the user; means for generating a message corresponding to the emotion of the reservation information after the reservation is completed and notifying the participants; and means for receiving additions or changes made after the reservation, processing the reservation again, and re-notifying the participants of the updated information together with a message corresponding to the emotion. This makes it possible to suggest the optimal restaurant taking the user's emotion into consideration, and allows additions or changes made after the reservation to be quickly handled, significantly reducing the burden on the organizer.
[0583] A "meeting" refers to a gathering or event where multiple participants come together for a specific purpose.
[0584] "Purpose" refers to the objective or theme you want to achieve at the meeting.
[0585] "Date and Time" refers to the specific date and time that the meeting will be held.
[0586] "Budget" refers to the amount of money allocated per participant for the meeting.
[0587] A "participant profile" contains information about each individual attending a meeting, including age, allergy information, and food preferences.
[0588] "Emotion data" refers to the user's emotional state, and refers to data representing emotions such as joy, relief, and excitement felt by the user during the process of planning and booking a meeting.
[0589] "Terminal" refers to an electronic device used by a user, including a smartphone, tablet, or PC.
[0590] "Server" refers to a computer system that stores, processes, and provides data over a network.
[0591] "Natural language processing software" means software for processing text data entered by a user and analyzing its content.
[0592] A "machine learning model" refers to a collection of algorithms that learn from data and make predictions and classifications, and is used to analyze data and make optimal suggestions.
[0593] "Commercial facility" means a building or place that provides specific services or goods to consumers, such as a restaurant or retail store.
[0594] "Reservation System" means a system for managing and executing reservations for commercial facilities.
[0595] "Notification" means the act of informing a user or participant of specific information, including email and in-app notifications.
[0596] "Message" refers to textual information used to convey specific information or emotions.
[0597] "Additions and changes" refers to adding new participants or modifying existing conditions to the content of a meeting that has already been decided.
[0598] The system of the present invention is designed to make meeting planning more efficient and increase user satisfaction. This system uses a combination of hardware and software to input the purpose of the meeting, date and time, budget, and participant profiles and emotional data, and then analyzes this information to automatically search for the most suitable commercial facility, make reservations, notify users, and handle changes.
[0599] User Input and Emotion Recognition
[0600] Users turn on their smartphone, tablet, PC, or other device and use a dedicated application to enter detailed information about the meeting, including the purpose of the meeting (e.g., a year-end party), the date and time, the budget, and the participants' profiles (age, allergy information, food preferences, etc.). The application is equipped with an emotion engine that collects user emotional data in real time based on the input content and input speed.
[0601] Data reception and analysis
[0602] The device sends the information and emotional data entered by the user to a server, which then analyzes the data using natural language processing software (e.g., SpaCy or NLTK) and machine learning models (e.g., TensorFlow or PyTorch). This analysis helps understand the user's intent and desires, and also analyzes the emotional data to understand the user's emotional state.
[0603] Store Locator and Suggestions
[0604] The server searches for the most suitable commercial facility based on the analyzed data. Specifically, it extracts facilities that match the criteria from a commercial facility database (e.g., MySQL or PostgreSQL). The emotion engine considers the user's emotional state and assigns an evaluation score to the most suitable facilities, ranking them accordingly. As a result, a list of facilities that match the user's emotions, such as facilities with a smooth and relaxing atmosphere, is created.
[0605] Automatic booking and notifications
[0606] The terminal displays a list of optimal commercial facilities suggested by the server to the user. The user selects the desired facility and confirms the reservation. The selection information is resent to the server, which then reserves the facility using an automatic reservation system (e.g., OpenTable API or Gurunavi API). If the reservation is successful, reservation information (e.g., facility name, address, date and time, reservation number) is generated and notified to all participants along with a message generated by the emotion engine. An SMTP server (e.g., Postfix or SendGrid) is used for notification.
[0607] Additions and changes after booking
[0608] If a user makes additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and performs a new search based on the new conditions. If necessary, it cancels the existing reservation and confirms the new reservation. The latest reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0609] Examples of concrete examples and prompts
[0610] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." Then, using AI to search for commercial facilities, it suggests a Japanese izakaya with a relaxing atmosphere. After selecting that facility and completing the reservation, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, they can enter the changes through the app, and the AI will automatically process the new facility reservation. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held that reflects the participants' emotions.
[0611] An example of a prompt sentence is, "Purpose of the meeting: year-end party, Date and time: December 20th, 7:00 PM, Budget: 5,000 yen per person, Participant profile: 30s, one person has a shellfish allergy, likes Japanese food, Shinjuku Ward. Please enter this information and we would like you to suggest the best restaurant for those in a relaxed mood. We would also like the system to automatically handle reservation changes if additional participants arrive."
[0612] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0613] Processing steps of this system's program
[0614] Step 1: User Input and Emotion Recognition
[0615] The user launches the application and enters the purpose of the meeting, the date and time, the budget, and the participant profiles. The input information includes the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), the budget per person (e.g., 5,000 yen), food allergy information (e.g., one person has a shellfish allergy), food preferences (e.g., prefers Japanese food), and location (e.g., Shinjuku Ward). As the information is being input, the emotion engine built into the application analyzes the user's input speed and the strength of their touch gestures to collect emotion data in real time. Once the input data and emotion data are collected, this information is saved on the device.
[0616] Input: User input (meeting details, emotion data)
[0617] Output: Saved input data and emotion data
[0618] Step 2: Data reception and analysis
[0619] When the user presses the "send" button, the device sends the entered information and emotional data to the server. The server then analyzes the received data, using natural language processing software (e.g., SpaCy, NLTK) and machine learning models (e.g., TensorFlow, PyTorch) to understand the purpose and requests of the meeting, and then uses an emotional engine to analyze the emotional data. As a result, the specific requirements for the meeting and the user's emotional state are obtained as the analysis results.
[0620] Input: Input data and emotion data sent from the device
[0621] Output: Analysis results (specific requirements for the meeting, user's emotional state)
[0622] Step 3: Store Locator
[0623] Based on the analysis results, the server searches for the most suitable commercial facility from a commercial facility database (e.g., MySQL, PostgreSQL). The user's emotional state (e.g., wanting to relax or wanting to have fun) is also taken into consideration. The emotional engine ranks the facilities that are most suitable for the user with an evaluation score. The generated store list includes detailed information about each facility (e.g., name, address, atmosphere, budget, menu).
[0624] Input: Analysis results (specific requirements for the meeting, user's emotional state)
[0625] Output: List of stores with rating scores
[0626] Step 4: Store proposal and selection
[0627] The server sends the generated optimal store list to the user's device. The device displays the suggested store list to the user, allowing the user to select the desired store. Specifically, detailed information and evaluation scores for each store are displayed, allowing the user to select the most suitable facility from among them. The selected store information is also saved on the device.
[0628] Input: List of stores with rating scores
[0629] Output: Store information selected by the user
[0630] Step 5: Automated booking
[0631] The user selects the desired restaurant and presses the reservation confirmation button. This information is sent from the terminal to the server. The server then uses an automated reservation system (e.g., OpenTable API, Gurunavi API) to make a reservation for the selected restaurant. If the reservation is successful, it generates reservation information (restaurant name, address, date and time, reservation number) and sends it to the terminal.
[0632] Input: Store information selected by the user
[0633] Output: Reservation confirmation information (store name, address, date and time, reservation number)
[0634] Step 6: Booking confirmation and notification
[0635] When the server receives the reservation confirmation information, it uses an emotion engine to generate a message that corresponds to the user's emotion. The reservation information is then notified to all participants along with the generated message (e.g., "Have a great time!"). Notifications are sent using an SMTP server (e.g., Postfix or SendGrid).
[0636] Input: Reservation confirmation information
[0637] Output: Notifications to all participants (message and reservation information)
[0638] Step 7: Additions and changes
[0639] If a user wants to make additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and searches for stores again based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0640] Input: Changes (new participant information and conditions)
[0641] Output: Updated reservation information, notification to participants (message and reservation information)
[0642] (Application example 2)
[0643] 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."
[0644] Conventional meeting planning systems are specialized in searching for and reserving physical locations, making them difficult to apply to planning and executing virtual meetings in an online environment. They also lack the ability to suggest optimal locations based on the emotions and atmosphere of the participants, making it difficult to improve user satisfaction. Furthermore, additions and changes after a reservation are often made manually, placing a heavy burden on the organizer. The present invention aims to solve these problems.
[0645] 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.
[0646] In this invention, the server includes means for inputting the purpose, date and time of the meeting, budget, and participant attributes, means for receiving and analyzing the input data, means for searching for the optimal virtual store based on the analyzed data and the user's emotions, means for sending the search results to the user's terminal and re-receiving the store selected by the user, means for automatically making a reservation at the store selected by the user, means for notifying participants of reservation information after the reservation is completed, means for receiving additions or changes after the reservation, processing the reservation again, and re-notifying participants of the updated information, and means for generating a message according to the user's emotions using an emotion engine. This automates the planning of online meetings, selection of virtual stores, reservations, and changes, and makes it possible to suggest the optimal store according to the emotions of the participants.
[0647] The "purpose of the meeting" refers to the purpose or theme of the meeting, such as the content of a year-end party, a launch party, or a conference.
[0648] "Date and Time" refers to the specific date and time at which the meeting will take place. For example, December 20, 2023 at 7:00 p.m.
[0649] A "budget" refers to the maximum cost of a meeting, usually set as a per person budget.
[0650] "Participant attributes" refers to the characteristics and conditions of the people attending the meeting, including age, food allergies, and food preferences.
[0651] An "emotion engine" is a technology that analyzes the user's input data and behavior, and recognizes and judges their emotional state at that time (e.g., wanting to relax, wanting to get excited, etc.).
[0652] "Virtual stores" refer to meeting places and services available online, such as a virtual Japanese restaurant or online gaming sessions.
[0653] "Means of analysis" refers to the technology or algorithms that analyze information based on input data and assign meaning to it.
[0654] "Means for searching for stores" refers to the function of finding the most suitable stores and services from a database based on the user's input data and emotions.
[0655] "Means for making a reservation" refers to a function that automatically proceeds with the reservation procedure for the store selected by the user.
[0656] "Means of notification" refers to the function of notifying participants of reservation information and updated information, including email and messaging.
[0657] "Means for receiving additions and changes" refers to the function of receiving information about additions and changes to participants that occur after a reservation and reflecting this information in the system.
[0658] "Means for generating a message" refers to a function that uses an emotion engine to automatically generate a message according to the user's emotions.
[0659] This invention is a system that efficiently searches for a virtual store desired by a user and automatically processes reservations and changes by using a means for inputting the purpose, date and time of the meeting, budget, and attributes of the participants. It also has a function that uses an emotion engine to generate and notify messages according to the user's emotions.
[0660] Overall system configuration:
[0661] The system of the present invention consists of a user terminal such as a smartphone or computer, and a server that performs data analysis, store searches, and reservation procedures. The server contains the following main modules:
[0662] 1. User Input and Emotion Recognition Module:
[0663] The user launches the application and enters meeting details (purpose, date and time, budget, and participant attributes). As the information is entered, the emotion engine works and analyzes emotions in real time from the user's text and voice input. The software used is the Google Cloud Natural Language API.
[0664] 2. Data Analysis Module:
[0665] The input data is sent from the device to a server where it is analyzed using the Python Django framework to evaluate the purpose, date and time of the meeting, budget, and participant attributes and emotional data.
[0666] 3. Virtual store locator module:
[0667] Based on the results of the data analysis, the optimal store is searched for from a virtual store database (PostgreSQL), and a list of high-priority stores is generated using a scoring algorithm (scikit-learn or TensorFlow).
[0668] 4. Store suggestion and selection module:
[0669] The search results are sent to the user's terminal, and the user selects the desired virtual store from the list. This information is then sent back to the server.
[0670] 5. Automated booking module:
[0671] The reservation process is automated based on the selected virtual store information, using APIs such as Twilio and IFTTT.
[0672] 6. Notification module:
[0673] Once the reservation is complete, the reservation details are generated and notified to all participants via a cloud messaging service (Firebase Cloud Messaging). An emotion engine is also used to generate messages that correspond to the user's emotions.
[0674] 7. Change response module:
[0675] If any changes or additions to participants occur after a reservation is made, the user enters the changes and sends them back to the server. The server then performs the process again, from data analysis to store search and reservation, based on the updated information, and notifies the user of the latest reservation information.
[0676] Examples:
[0677] Here is an example prompt for a user planning an "online year-end party."
[0678] Example prompt:
[0679] "I'm in my 30s and would like to host an online year-end party in a relaxed atmosphere. The budget is 5,000 yen per person, and the event will be held on December 20th at 7:00 PM. Please recommend a virtual venue."
[0680] This system streamlines the entire process by automatically searching for and reserving the best venue for the virtual meeting the user is planning, and sending messages based on the emotions of the participants.
[0681] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0682] Step 1:
[0683] User Input and Emotion Recognition
[0684] Users launch the application using a smartphone or computer and input the purpose of the meeting, date and time, budget, and participant attributes. The input is received by the device, and the emotion engine runs to analyze the user's emotions in real time. Input is in the form of text or voice, and emotion recognition is performed using the Google Cloud Natural Language API. Input data includes participants' names, ages, allergy information, food preferences, etc. Analyzed emotion data is generated as output.
[0685] Step 2:
[0686] Data transmission
[0687] The entered data is sent from the device to a server, including meeting details (purpose, date, and budget), participant profiles, and analyzed emotional data. The data is securely transmitted to the server via the Internet.
[0688] Step 3:
[0689] Data analysis
[0690] The server analyzes the received data, using the Python Django framework. The data analysis evaluates the purpose of the meeting, date and time, budget, participant attributes (e.g., food allergy information, food preferences), and emotional data to understand the user's needs. The optimal search criteria are generated as output. For example, if the user wants to relax, the system will prioritize suggesting virtual stores where they can relax.
[0691] Step 4:
[0692] Virtual store locator
[0693] The server searches a virtual store database based on the results of the analysis. This database uses PostgreSQL and stores store names, service details, ratings, etc. Using a scoring algorithm (scikit-learn or TensorFlow), it matches the user's emotional state with store data and generates a list of stores with high priority. A list of suggested stores is generated as the output.
[0694] Step 5:
[0695] Send store list
[0696] The server sends the generated store list to the user's device. The user's device receives the proposed store list and displays it on the screen. The user selects the desired store from the displayed store list.
[0697] Step 6:
[0698] Store selection and resubmission
[0699] The user selects the desired store and retransmits the selection result to the server via the terminal, and the selected store information is received by the server.
[0700] Step 7:
[0701] Automatic booking
[0702] The server automatically makes a reservation at the selected store. For automatic reservations, APIs such as Twilio and IFTTT are used. If the reservation is successful, the server generates reservation details (store name, address, date and time, reservation number) and sends them to the user's device using a cloud messaging service (Firebase Cloud Messaging).
[0703] Step 8:
[0704] Reservation information notification
[0705] After the reservation is confirmed, the server generates a message according to the reservation details and emotion. Using the emotion engine, it generates a message according to the user's emotion (e.g., "Enjoy a relaxing time") and notifies all participants along with the reservation information. Notifications are sent via email or in-app messages.
[0706] Step 9:
[0707] Change response
[0708] If a user wants to add or change participants after making a reservation, they input the changes on their device and send them to the server. The server analyzes the received changes and performs the entire process from data analysis to store search and reservation again based on the new conditions. The latest reservation information is then re-notified along with a message generated based on the emotion engine.
[0709] 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.
[0710] 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.
[0711] 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.
[0712] [Third embodiment]
[0713] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0714] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0715] 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).
[0716] 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.
[0717] 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.
[0718] 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).
[0719] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0720] 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.
[0721] 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.
[0722] 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.
[0723] 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.
[0724] 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."
[0725] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on the information. Specific embodiments of the system are described below.
[0726] 1. User Input:
[0727] The user starts the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). This information is saved on the device and sent to the server by pressing the send button.
[0728] 2. Data reception and analysis:
[0729] The server receives the data sent from the device. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis enables the optimal store search based on the conditions.
[0730] 3. Store Locator:
[0731] The server searches for the most suitable store based on the analyzed data. A store database is pre-registered on the server, and an AI algorithm evaluates stores that meet the meeting conditions and creates a list of stores with the highest priority.
[0732] 4. Store suggestions and selection:
[0733] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0734] 5. Automatic booking:
[0735] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device.
[0736] 6. Booking Confirmation and Notification:
[0737] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0738] 7. Additions and Changes:
[0739] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes these changes and, if necessary, searches for stores again, cancels existing reservations, and makes new reservations. The latest information after the changes is automatically notified to all participants again.
[0740] As a concrete example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party and information about the participants, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server would then automatically confirm the reservation for this restaurant, and a reservation confirmation email would be sent to the user and all participants. If additional participants are added later, they would simply enter the changes again through the app, and the new restaurant reservation would be automatically processed by the AI. As a result, the burden on the organizer would be significantly reduced, and the meeting would run more smoothly.
[0741] The processing flow will be explained below.
[0742] Step 1:
[0743] User: Launches the application and enters the purpose of the meeting (e.g., year-end party), the date and time of the meeting (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, living in Shinjuku Ward).
[0744] Step 2:
[0745] Terminal: Saves the entered information and sends it to the server when the send button is pressed.
[0746] Step 3:
[0747] Server: Analyzes the received data and extracts each item (purpose, date and time, budget, participant profile, etc.). Based on the results of this analysis, it generates search criteria for stores that match the conditions.
[0748] Step 4:
[0749] Server: Based on the analyzed data, it searches for the most suitable store from the store database. It uses an AI algorithm to evaluate the search results and generate a list of stores with high priority.
[0750] Step 5:
[0751] Server: Sends the generated optimal store list to the terminal.
[0752] Terminal: Displays a list of stores to the user.
[0753] Step 6:
[0754] User: Select the desired store from the displayed store list and press the confirm button. The selected store information is sent to the server.
[0755] Step 7:
[0756] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0757] Step 8:
[0758] Server: Receives reservation confirmation information. After receiving it, the reservation information is sent to all participants by email.
[0759] Step 9:
[0760] User: When adding or changing participants after a reservation, the changes are entered through the application and sent to the server.
[0761] Step 10:
[0762] Server: Analyzes the changes and performs a new store search based on the new criteria, canceling existing reservations and confirming new reservations as necessary.
[0763] Step 11:
[0764] Server: Generates the latest reservation information after the change and notifies all participants again.
[0765] Example 1
[0766] 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."
[0767] In today's society, planning and managing a meeting smoothly is important in our busy daily lives. However, when planning a meeting, coordinating the schedules of participants, selecting an appropriate venue, securing reservations, and even accommodating specific needs of participants (such as allergies or dietary preferences) can be challenging. These procedures require time and effort, increasing the burden on organizers.
[0768] 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.
[0769] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and personal information of the participants, a means for receiving and analyzing the input data, a means for searching for the optimal location based on the analyzed data, and a means for evaluating the search means using an artificial intelligence model. This allows users to easily search for the optimal meeting location, make reservations, and automatically manage any necessary changes. Specifically, the location search is automated, taking into account the allergy information and food preferences of the participants, allowing for efficient and professional planning.
[0770] The "purpose of the meeting" is information that indicates the purpose for which the meeting is being held.
[0771] "Date and time" is information indicating the specific date and time when the meeting will start.
[0772] "Budget" is information that indicates the maximum amount of money that can be spent per person or for the entire meeting.
[0773] "Participant personal information" refers to individual information about people attending the meeting, such as their age, food allergies, food preferences, and location.
[0774] "Input means" refers to a device or software that provides an interface for a user to provide the required information to the system.
[0775] The "receiving and analyzing means" is a device or software that receives data sent from a user and analyzes its content.
[0776] The "means for searching for the best location" is a device or software that finds a suitable meeting place based on the received data.
[0777] The "means for transmitting search results to the user's terminal" refers to a device or software for transferring the search results to the terminal used by the user.
[0778] The "means for automatically making a reservation" is a device or software that allows the system to automatically make a reservation for a location selected by the user.
[0779] "Means for notifying" refers to a device or software for communicating information to participants after a reservation is completed.
[0780] "Means for receiving additions and changes, re-processing reservations, and notifying updated information" refers to a device or software that accepts changes that occur after a reservation, makes a new reservation, and notifies participants of the results.
[0781] "Means for evaluating the search means using an artificial intelligence model" refers to a device or software that uses machine learning or AI technology to evaluate search results based on received data and improve their accuracy.
[0782] The system of the present invention allows users to input the purpose, date, time, budget, and personal information of participants, and then automatically searches for the optimal location, makes reservations, contacts, and handles changes based on that information. This system is implemented using a user's device, a cloud server, and an artificial intelligence model.
[0783] Hardware and software used
[0784] The user's device is a smartphone or personal computer, which includes software for running the mobile application and a web browser. The cloud server is equipped with a Python-based processing system and a database management system (e.g., MySQL) for data analysis, store searches, and reservation processing.
[0785] Specifically, the following software and libraries are used:
[0786] NLP libraries: Use spaCy or NLTK to analyze data received from users.
[0787] Database management system: Use MySQL or PostgreSQL to manage store information and user data.
[0788] Machine learning libraries: Use Scikit-learn and TensorFlow to build AI models for store valuation.
[0789] Email Sending API: Use SendGrid or Amazon SES to automatically send reservation confirmation emails.
[0790] Program processing explanation
[0791] The user launches the smartphone application and enters the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the personal information of the participants (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, Shinjuku Ward). This information is saved on the device and sent to the cloud server by pressing the send button.
[0792] The server receives and analyzes the data sent from the device using Natural Language Processing (NLP) technology to extract information such as the purpose of the meeting, date and time, budget, and personal information.
[0793] The server then uses the analyzed data to search for the best store. It generates a database query to extract stores that match the criteria, and uses machine learning algorithms to evaluate the criteria and create a list of stores with the highest priority.
[0794] The search results are sent to the user's device, and the application displays a list of suggested stores to the user. When the user selects the desired store, the selection is sent back to the server.
[0795] The server automatically makes a reservation at the selected store. The reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device. In addition, reservation confirmation information is automatically sent by email to all participants.
[0796] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes the changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the change is automatically notified to all participants again.
[0797] Specific examples
[0798] For example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party, the date and time (December 20th, 7:00 PM), a budget of 5,000 yen per person, and personal information such as "30s, one person with shellfish allergy, Japanese food lover, Shinjuku ward." The input data is sent to the server, and the AI searches for the most suitable restaurant. From the list of suggested restaurants, the user selects a Japanese izakaya in Shinjuku, and the server automatically makes the reservation. A reservation confirmation email is then sent to the user and all participants. If additional participants are added, the changes can be sent to the server via the app, and a new restaurant reservation is automatically processed. This system significantly reduces the burden on organizers and ensures smooth meeting times.
[0799] Prompt Sentence Examples
[0800] "Please create a system that inputs the purpose of the meeting, date and time, budget, and participant profiles, and based on that, searches for and reserves the best venue for the year-end party in Shinjuku, and also automates communication and changes."
[0801] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0802] Processing flow
[0803] Step 1:
[0804] The user starts the smartphone application and inputs the purpose of the meeting, the date and time, the budget, and the personal information of the participants. This input information is saved in the smartphone's local storage. For example,
[0805] Purpose of the meeting: Year-end party
[0806] Date and time: December 20th, 7:00 PM
[0807] Budget: 5,000 yen per person
[0808] Participant personal information: 30s, one person with shellfish allergy, likes Japanese food, Shinjuku Ward
[0809] The user presses the "Send" button to send this information to the server.
[0810] Step 2:
[0811] The server receives data sent from the user's device. The received data is first analyzed using an NLP (Natural Language Processing) library. Specifically, spaCy is used to tokenize the received data and extract the purpose of the meeting, date and time, budget, and personal information. Based on the results of this analysis, structured data is generated for further processing. The input is the data sent by the user, and the output is the analyzed structured data.
[0812] Step 3:
[0813] The server searches for the most suitable stores based on the analyzed data. It generates a database query and extracts stores that match the criteria from a pre-registered store information database. It uses a machine learning model (e.g., Scikit-learn's RandomForestClassifier) to evaluate the extracted stores and create a list of the highest priority stores. The input is the analyzed structured data, and the output is a list of the most suitable stores.
[0814] Step 4:
[0815] The server sends the generated list of optimal stores to the user's device. Specifically, this list is converted into JSON format and displayed in real time on the user's mobile application. The user selects the desired store from the displayed list of stores. The input is the list of optimal stores, and the output is the user's selection data.
[0816] Step 5:
[0817] When the user selects the desired store and presses the "Confirm" button, the selection is sent back to the server. The server then makes a reservation for the selected store via the automated reservation system. Specifically, it accesses the store's reservation API, sends the necessary data, and receives a response indicating that the reservation is complete. The input is the user's selected data, and the output is reservation confirmation information.
[0818] Step 6:
[0819] When the server receives the reservation confirmation information, it generates an email containing the reservation details (store name, address, date and time, reservation number) and automatically sends it to all participants. As a specific example, the email is sent using the SendGrid API. The input is the reservation confirmation information, and the output is a notification that the email has been sent.
[0820] Step 7:
[0821] If the user adds more participants or changes information after making a reservation, the changes are entered through the application. This information is sent back to the server. The server analyzes these changes, searches for new stores and makes new reservations as needed, and generates new reservation information. The changed information is automatically notified again to all participants. The input is the user's changed data, and the output is the updated reservation information.
[0822] (Application example 1)
[0823] 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."
[0824] Conventional meeting planning and reservation methods require organizers to manually search for and reserve restaurants, which requires a great deal of effort and time. Also, selecting a restaurant that is suitable for everyone while accommodating allergies and food preferences is complicated and difficult to do efficiently. Furthermore, if there are additions or changes made after a reservation is made, the time and effort required to search for a restaurant again and make a new reservation is a major issue.
[0825] 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.
[0826] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and the participant profiles, a means for receiving and analyzing the input data, and a means for searching for the most suitable physical store based on the analyzed data. This allows the smartphone application to suggest the most suitable store based on the meeting conditions and automatically make a reservation. Furthermore, by automating notifications and changes after the reservation is completed, the burden on the organizer is significantly reduced, allowing the meeting to be held smoothly.
[0827] The "purpose of the meeting" is a summary of the purpose or content for which a particular meeting is being held.
[0828] "Date and Time" means the date and time at which the meeting will take place.
[0829] A "budget" is the maximum amount of money that can be spent by each individual or the entire group of participants in a meeting.
[0830] A "participant profile" is detailed individual information about people attending a meeting, such as their age, food preferences, allergy information, and location.
[0831] The "means for inputting" is an interface that allows a user to input the purpose, date and time of the meeting, the budget, and the profiles of the participants into the application.
[0832] "Means for receiving and analyzing" refers to the process by which the server receives the input data and breaks it down into individual items for understanding.
[0833] The "searching method" is a method in which the server selects the most suitable physical store from a pre-registered store database based on the analyzed data.
[0834] The "sending and receiving means" refers to the way in which the server sends search results to the user and receives the user's selections back.
[0835] The "means for automatically making a reservation" is a process in which the server automatically completes the reservation procedure for the store selected by the user.
[0836] "Means of notification" refers to a method for automatically notifying all participants of reservation completion information and change information.
[0837] The "means for receiving additions and changes, reprocessing reservations, and re-notifying updated information" refers to the process of receiving additions and changes requests from users, re-making new reservations based on those requests, and re-notifying all participants of the updated information.
[0838] A "smartphone application" is software that runs on a smartphone and allows users to enter meeting details, view search results, and manage reservations.
[0839] "Conditions" refers to user-entered data such as the purpose of the meeting, date and time, budget, and participant profiles.
[0840] "Suggested stores" are candidate stores suitable for meetings, selected by the server based on the user's conditions.
[0841] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable physical store based on the information, and then automatically makes reservations, contacts, and handles changes. Specific embodiments for implementing the present invention are described in detail below.
[0842] 1. User Input:
[0843] The user starts the smartphone application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward). This information is saved on the smartphone application and sent to the server by pressing the send button.
[0844] 2. Data reception and analysis:
[0845] The server receives the data sent from the smartphone. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis makes it possible to search for the best brick-and-mortar store that meets the criteria. Natural language processing technology and statistical analysis algorithms are used for the analysis.
[0846] 3. Store Locator:
[0847] The server then searches for the most suitable store from a pre-registered store database based on the analyzed data. This server is equipped with an AI algorithm that evaluates the stores that best meet the criteria and creates a list of stores with the highest priority.
[0848] 4. Store suggestions and selection:
[0849] The server transmits the generated optimal store list to the smartphone terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0850] 5. Automatic booking:
[0851] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the smartphone device.
[0852] 6. Booking Confirmation and Notification:
[0853] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[0854] 7. Additions and Changes:
[0855] If there are any additions or changes to participants after a reservation is made, the user sends the changes to the server via the smartphone application. The server analyzes these changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the changes is automatically notified to all participants again.
[0856] As a concrete example, if a user is planning a year-end party in Shinjuku, they first enter the purpose of the party and information about the participants into a smartphone application, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server automatically confirms the reservation for this restaurant, and a reservation confirmation email is sent to the user and all participants. If additional participants are added later, they can enter the changes again through the app, and the new restaurant reservation will be automatically processed by the AI.
[0857] Here are some example prompts for a generative AI model:
[0858] text
[0859] Please use the information below to suggest the best venue for your meeting.
[0860] Purpose of the meeting: {{purpose}}
[0861] Date and time: {{date}}
[0862] Budget: {{budget}}
[0863] Participant Profiles: {{profiles}}
[0864] Please let me know the store information you have proposed.
[0865] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0866] Step 1:
[0867] The user starts the smartphone application and inputs the purpose of the meeting, date and time, budget, and participant profiles (e.g., age, allergy information, food preferences, location). This input data is temporarily saved in the application.
[0868] Step 2:
[0869] The terminal sends the saved input data to the server. The server receives it and starts analyzing the data. It classifies and analyzes the input data (purpose, date and time, budget, profile) and extracts each item. The analysis results are saved in the server's internal database.
[0870] Step 3:
[0871] The server searches for stores based on the analyzed data. From a pre-registered store database, an AI algorithm evaluates the most suitable store based on the conditions, and creates a list of stores with the highest priority. This list is generated internally by the server.
[0872] Step 4:
[0873] The server sends the generated optimal store list to the user's smartphone. The device displays the received store list to the user. The user then selects the desired store from the suggested store list.
[0874] Step 5:
[0875] The store information selected by the user is sent back to the server. The server then makes a reservation for this store using an automatic reservation system. The reservation system automatically matches the input data with the store's reservation system and completes the reservation procedure.
[0876] Step 6:
[0877] After the reservation is completed, the server generates reservation information (store name, address, date and time, reservation number) and returns it to the user's smartphone. The device displays the received reservation information to the user. The server also automatically sends email notifications to all participants at the same time.
[0878] Step 7:
[0879] If the user needs to add or change participants after making a reservation, they send the changes to the server through the application. The server receives the changes and re-analyzes them. If necessary, they can search for stores again, cancel existing reservations, and make new reservations. The final updated information is automatically notified again by the server to all participants.
[0880] 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.
[0881] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on that information. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and suggests the most suitable restaurant based on those emotions, the system realizes meeting planning with higher user satisfaction.
[0882] 1. User Input and Emotion Recognition:
[0883] The user launches the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participants' profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward).The application is equipped with an emotion engine that recognizes the user's emotions in real time based on the input and also collects that emotion data.
[0884] 2. Data reception and analysis:
[0885] The device saves the entered information and, when the user presses the send button, sends it to the server. The server receives the data sent from the device and analyzes the purpose of the meeting, date and time, budget, participant profiles, and emotional data. Based on the analysis results, it generates optimal store search criteria that take the user's emotions into consideration.
[0886] 3. Store Locator:
[0887] The server searches for the most suitable store from the store database based on the analyzed data. At this time, the emotion engine also takes into account the user's emotional state (e.g., wanting to relax, wanting to have fun, wanting to spend quiet time), and generates a list of high-priority stores by taking into account the evaluation scores of stores corresponding to the emotion.
[0888] 4. Store suggestions and selection:
[0889] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[0890] 5. Automatic booking:
[0891] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and sent to the terminal.
[0892] 6. Booking Confirmation and Notification:
[0893] Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion, and then sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email. For example, a message reflecting the user's emotion, such as "Have a great time!", is attached.
[0894] 7. Additions and Changes:
[0895] If a user adds or changes participants after making a reservation, they enter the changes through the application and send them to the server. The server analyzes these changes and performs a new store search based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is automatically notified to all participants, along with a message generated again using the emotion engine.
[0896] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." The AI searches for restaurants and suggests Japanese izakayas with a relaxing atmosphere. Once the restaurant is selected and the reservation is completed, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, the changes can be entered through the app, and the new restaurant reservation will be automatically processed by the AI. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held in accordance with the emotions of the participants.
[0897] The processing flow will be explained below.
[0898] Step 1:
[0899] User: Launches the application. On the opening screen, the user enters the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), budget (e.g., 5,000 yen per person), and participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). During this process, the emotion engine analyzes the user's input, facial expressions, voice, etc., and recognizes emotional data (e.g., wanting to relax, wanting to have fun).
[0900] Step 2:
[0901] Terminal: Stores the information and emotion data entered by the user, and sends the data to the server when the send button is pressed.
[0902] Step 3:
[0903] Server: Receives data sent from the device. Analyzes the received data and extracts and analyzes each item (purpose, date and time, budget, participant profile, emotional data). Generates search criteria based on the analysis results.
[0904] Step 4:
[0905] Server: Based on the analyzed data, the AI algorithm searches for the most suitable store from the store database. At this time, it takes into account the emotional data provided by the emotion engine and prioritizes a list of stores that match the emotion. This list also includes evaluation criteria such as the atmosphere of the seating area, music, and store reviews.
[0906] Step 5:
[0907] Server: Sends the generated optimal store list to the terminal.
[0908] Device: Displays a list of stores to the user, including store name, rating, address, photo, and sentiment-based recommendations.
[0909] Step 6:
[0910] User: Select the desired store from the displayed store list and press the Confirm button. The selected store information will be resent to the server.
[0911] Step 7:
[0912] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[0913] Step 8:
[0914] Server: Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion. For example, if the emotion of wanting to have fun is recognized, a message such as "Have a great time!" is generated. The server then sends the reservation information and a message based on the emotion to all participants via email.
[0915] Step 9:
[0916] User: If any additions or changes to participants occur after a reservation is made, the changes are entered through the application and sent to the server.
[0917] Step 10:
[0918] Server: Receives and analyzes the changes, performs a new store search based on the new conditions, cancels existing reservations and confirms new reservations as necessary.
[0919] Step 11:
[0920] Server: Generates updated reservation information after the changes and creates appropriate messages using the emotion engine. This information is then re-notified to all participants. For example, if a new participant joins and the emotion of anticipating a lively gathering is recognized, a message such as "A fun time with lots of people awaits!" is attached.
[0921] As a result, a system is provided that consistently selects the optimal store, makes reservations, and communicates with the user, taking into account the user's emotions.
[0922] Example 2
[0923] 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."
[0924] Conventional meeting planning systems select restaurants without considering the user's emotions, making it impossible to suggest the most suitable restaurant based on the user's emotions, and improving user satisfaction was an issue. Also, when participants were added or changed after the reservation was made, it was complicated to handle the situation, placing a heavy burden on the organizer.
[0925] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes: means for inputting the purpose, date and time of the meeting, budget, and participant profiles and emotion data; means for receiving the input data and analyzing it using natural language processing software and a machine learning model; means for searching for the optimal commercial facility based on the analyzed data, taking the user's emotional state into consideration; means for sending the search results to the user's terminal and re-receiving the commercial facility selected by the user; means for automatically making a reservation at the commercial facility selected by the user; means for generating a message corresponding to the emotion of the reservation information after the reservation is completed and notifying the participants; and means for receiving additions or changes made after the reservation, processing the reservation again, and re-notifying the participants of the updated information together with a message corresponding to the emotion. This makes it possible to suggest the optimal restaurant taking the user's emotion into consideration, and allows additions or changes made after the reservation to be quickly handled, significantly reducing the burden on the organizer.
[0926] A "meeting" refers to a gathering or event where multiple participants come together for a specific purpose.
[0927] "Purpose" refers to the objective or theme you want to achieve at the meeting.
[0928] "Date and Time" refers to the specific date and time that the meeting will be held.
[0929] "Budget" refers to the amount of money allocated per participant for the meeting.
[0930] A "participant profile" contains information about each individual attending a meeting, including age, allergy information, and food preferences.
[0931] "Emotion data" refers to the user's emotional state, and refers to data representing emotions such as joy, relief, and excitement felt by the user during the process of planning and booking a meeting.
[0932] "Terminal" refers to an electronic device used by a user, including a smartphone, tablet, or PC.
[0933] "Server" refers to a computer system that stores, processes, and provides data over a network.
[0934] "Natural language processing software" means software for processing text data entered by a user and analyzing its content.
[0935] A "machine learning model" refers to a collection of algorithms that learn from data and make predictions and classifications, and is used to analyze data and make optimal suggestions.
[0936] "Commercial facility" means a building or place that provides specific services or goods to consumers, such as a restaurant or retail store.
[0937] "Reservation System" means a system for managing and executing reservations for commercial facilities.
[0938] "Notification" means the act of informing a user or participant of specific information, including email and in-app notifications.
[0939] "Message" refers to textual information used to convey specific information or emotions.
[0940] "Additions and changes" refers to adding new participants or modifying existing conditions to the content of a meeting that has already been decided.
[0941] The system of the present invention is designed to make meeting planning more efficient and increase user satisfaction. This system uses a combination of hardware and software to input the purpose of the meeting, date and time, budget, and participant profiles and emotional data, and then analyzes this information to automatically search for the most suitable commercial facility, make reservations, notify users, and handle changes.
[0942] User Input and Emotion Recognition
[0943] Users turn on their smartphone, tablet, PC, or other device and use a dedicated application to enter detailed information about the meeting, including the purpose of the meeting (e.g., a year-end party), the date and time, the budget, and the participants' profiles (age, allergy information, food preferences, etc.). The application is equipped with an emotion engine that collects user emotional data in real time based on the input content and input speed.
[0944] Data reception and analysis
[0945] The device sends the information and emotional data entered by the user to a server, which then analyzes the data using natural language processing software (e.g., SpaCy or NLTK) and machine learning models (e.g., TensorFlow or PyTorch). This analysis helps understand the user's intent and desires, and also analyzes the emotional data to understand the user's emotional state.
[0946] Store Locator and Suggestions
[0947] The server searches for the most suitable commercial facility based on the analyzed data. Specifically, it extracts facilities that match the criteria from a commercial facility database (e.g., MySQL or PostgreSQL). The emotion engine considers the user's emotional state and assigns an evaluation score to the most suitable facilities, ranking them accordingly. As a result, a list of facilities that match the user's emotions, such as facilities with a smooth and relaxing atmosphere, is created.
[0948] Automatic booking and notifications
[0949] The terminal displays a list of optimal commercial facilities suggested by the server to the user. The user selects the desired facility and confirms the reservation. The selection information is resent to the server, which then reserves the facility using an automatic reservation system (e.g., OpenTable API or Gurunavi API). If the reservation is successful, reservation information (e.g., facility name, address, date and time, reservation number) is generated and notified to all participants along with a message generated by the emotion engine. An SMTP server (e.g., Postfix or SendGrid) is used for notification.
[0950] Additions and changes after booking
[0951] If a user makes additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and performs a new search based on the new conditions. If necessary, it cancels the existing reservation and confirms the new reservation. The latest reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0952] Examples of concrete examples and prompts
[0953] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." Then, using AI to search for commercial facilities, it suggests a Japanese izakaya with a relaxing atmosphere. After selecting that facility and completing the reservation, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, they can enter the changes through the app, and the AI will automatically process the new facility reservation. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held that reflects the participants' emotions.
[0954] An example of a prompt sentence is, "Purpose of the meeting: year-end party, Date and time: December 20th, 7:00 PM, Budget: 5,000 yen per person, Participant profile: 30s, one person has a shellfish allergy, likes Japanese food, Shinjuku Ward. Please enter this information and we would like you to suggest the best restaurant for those in a relaxed mood. We would also like the system to automatically handle reservation changes if additional participants arrive."
[0955] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0956] Processing steps of this system's program
[0957] Step 1: User Input and Emotion Recognition
[0958] The user launches the application and enters the purpose of the meeting, the date and time, the budget, and the participant profiles. The input information includes the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), the budget per person (e.g., 5,000 yen), food allergy information (e.g., one person has a shellfish allergy), food preferences (e.g., prefers Japanese food), and location (e.g., Shinjuku Ward). As the information is being input, the emotion engine built into the application analyzes the user's input speed and the strength of their touch gestures to collect emotion data in real time. Once the input data and emotion data are collected, this information is saved on the device.
[0959] Input: User input (meeting details, emotion data)
[0960] Output: Saved input data and emotion data
[0961] Step 2: Data reception and analysis
[0962] When the user presses the "send" button, the device sends the entered information and emotional data to the server. The server then analyzes the received data, using natural language processing software (e.g., SpaCy, NLTK) and machine learning models (e.g., TensorFlow, PyTorch) to understand the purpose and requests of the meeting, and then uses an emotional engine to analyze the emotional data. As a result, the specific requirements for the meeting and the user's emotional state are obtained as the analysis results.
[0963] Input: Input data and emotion data sent from the device
[0964] Output: Analysis results (specific requirements for the meeting, user's emotional state)
[0965] Step 3: Store Locator
[0966] Based on the analysis results, the server searches for the most suitable commercial facility from a commercial facility database (e.g., MySQL, PostgreSQL). The user's emotional state (e.g., wanting to relax or wanting to have fun) is also taken into consideration. The emotional engine ranks the facilities that are most suitable for the user with an evaluation score. The generated store list includes detailed information about each facility (e.g., name, address, atmosphere, budget, menu).
[0967] Input: Analysis results (specific requirements for the meeting, user's emotional state)
[0968] Output: List of stores with rating scores
[0969] Step 4: Store proposal and selection
[0970] The server sends the generated optimal store list to the user's device. The device displays the suggested store list to the user, allowing the user to select the desired store. Specifically, detailed information and evaluation scores for each store are displayed, allowing the user to select the most suitable facility from among them. The selected store information is also saved on the device.
[0971] Input: List of stores with rating scores
[0972] Output: Store information selected by the user
[0973] Step 5: Automated booking
[0974] The user selects the desired restaurant and presses the reservation confirmation button. This information is sent from the terminal to the server. The server then uses an automated reservation system (e.g., OpenTable API, Gurunavi API) to make a reservation for the selected restaurant. If the reservation is successful, it generates reservation information (restaurant name, address, date and time, reservation number) and sends it to the terminal.
[0975] Input: Store information selected by the user
[0976] Output: Reservation confirmation information (store name, address, date and time, reservation number)
[0977] Step 6: Booking confirmation and notification
[0978] When the server receives the reservation confirmation information, it uses an emotion engine to generate a message that corresponds to the user's emotion. The reservation information is then notified to all participants along with the generated message (e.g., "Have a great time!"). Notifications are sent using an SMTP server (e.g., Postfix or SendGrid).
[0979] Input: Reservation confirmation information
[0980] Output: Notifications to all participants (message and reservation information)
[0981] Step 7: Additions and changes
[0982] If a user wants to make additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and searches for stores again based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[0983] Input: Changes (new participant information and conditions)
[0984] Output: Updated reservation information, notification to participants (message and reservation information)
[0985] (Application example 2)
[0986] 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."
[0987] Conventional meeting planning systems are specialized in searching for and reserving physical locations, making them difficult to apply to planning and executing virtual meetings in an online environment. They also lack the ability to suggest optimal locations based on the emotions and atmosphere of the participants, making it difficult to improve user satisfaction. Furthermore, additions and changes after a reservation are often made manually, placing a heavy burden on the organizer. The present invention aims to solve these problems.
[0988] 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.
[0989] In this invention, the server includes means for inputting the purpose, date and time of the meeting, budget, and participant attributes, means for receiving and analyzing the input data, means for searching for the optimal virtual store based on the analyzed data and the user's emotions, means for sending the search results to the user's terminal and re-receiving the store selected by the user, means for automatically making a reservation at the store selected by the user, means for notifying participants of reservation information after the reservation is completed, means for receiving additions or changes after the reservation, processing the reservation again, and re-notifying participants of the updated information, and means for generating a message according to the user's emotions using an emotion engine. This automates the planning of online meetings, selection of virtual stores, reservations, and changes, and makes it possible to suggest the optimal store according to the emotions of the participants.
[0990] The "purpose of the meeting" refers to the purpose or theme of the meeting, such as the content of a year-end party, a launch party, or a conference.
[0991] "Date and Time" refers to the specific date and time at which the meeting will take place. For example, December 20, 2023 at 7:00 p.m.
[0992] A "budget" refers to the maximum cost of a meeting, usually set as a per person budget.
[0993] "Participant attributes" refers to the characteristics and conditions of the people attending the meeting, including age, food allergies, and food preferences.
[0994] An "emotion engine" is a technology that analyzes the user's input data and behavior, and recognizes and judges their emotional state at that time (e.g., wanting to relax, wanting to get excited, etc.).
[0995] "Virtual stores" refer to meeting places and services available online, such as a virtual Japanese restaurant or online gaming sessions.
[0996] "Means of analysis" refers to the technology or algorithms that analyze information based on input data and assign meaning to it.
[0997] "Means for searching for stores" refers to the function of finding the most suitable stores and services from a database based on the user's input data and emotions.
[0998] "Means for making a reservation" refers to a function that automatically proceeds with the reservation procedure for the store selected by the user.
[0999] "Means of notification" refers to the function of notifying participants of reservation information and updated information, including email and messaging.
[1000] "Means for receiving additions and changes" refers to the function of receiving information about additions and changes to participants that occur after a reservation and reflecting this information in the system.
[1001] "Means for generating a message" refers to a function that uses an emotion engine to automatically generate a message according to the user's emotions.
[1002] This invention is a system that efficiently searches for a virtual store desired by a user and automatically processes reservations and changes by using a means for inputting the purpose, date and time of the meeting, budget, and attributes of the participants. It also has a function that uses an emotion engine to generate and notify messages according to the user's emotions.
[1003] Overall system configuration:
[1004] The system of the present invention consists of a user terminal such as a smartphone or computer, and a server that performs data analysis, store searches, and reservation procedures. The server contains the following main modules:
[1005] 1. User Input and Emotion Recognition Module:
[1006] The user launches the application and enters meeting details (purpose, date and time, budget, and participant attributes). As the information is entered, the emotion engine works and analyzes emotions in real time from the user's text and voice input. The software used is the Google Cloud Natural Language API.
[1007] 2. Data Analysis Module:
[1008] The input data is sent from the device to a server where it is analyzed using the Python Django framework to evaluate the purpose, date and time of the meeting, budget, and participant attributes and emotional data.
[1009] 3. Virtual store locator module:
[1010] Based on the results of the data analysis, the optimal store is searched for from a virtual store database (PostgreSQL), and a list of high-priority stores is generated using a scoring algorithm (scikit-learn or TensorFlow).
[1011] 4. Store suggestion and selection module:
[1012] The search results are sent to the user's terminal, and the user selects the desired virtual store from the list. This information is then sent back to the server.
[1013] 5. Automated booking module:
[1014] The reservation process is automated based on the selected virtual store information, using APIs such as Twilio and IFTTT.
[1015] 6. Notification module:
[1016] Once the reservation is complete, the reservation details are generated and notified to all participants via a cloud messaging service (Firebase Cloud Messaging). An emotion engine is also used to generate messages that correspond to the user's emotions.
[1017] 7. Change response module:
[1018] If any changes or additions to participants occur after a reservation is made, the user enters the changes and sends them back to the server. The server then performs the process again, from data analysis to store search and reservation, based on the updated information, and notifies the user of the latest reservation information.
[1019] Examples:
[1020] Here is an example prompt for a user planning an "online year-end party."
[1021] Example prompt:
[1022] "I'm in my 30s and would like to host an online year-end party in a relaxed atmosphere. The budget is 5,000 yen per person, and the event will be held on December 20th at 7:00 PM. Please recommend a virtual venue."
[1023] This system streamlines the entire process by automatically searching for and reserving the best venue for the virtual meeting the user is planning, and sending messages based on the emotions of the participants.
[1024] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1025] Step 1:
[1026] User Input and Emotion Recognition
[1027] Users launch the application using a smartphone or computer and input the purpose of the meeting, date and time, budget, and participant attributes. The input is received by the device, and the emotion engine runs to analyze the user's emotions in real time. Input is in the form of text or voice, and emotion recognition is performed using the Google Cloud Natural Language API. Input data includes participants' names, ages, allergy information, food preferences, etc. Analyzed emotion data is generated as output.
[1028] Step 2:
[1029] Data transmission
[1030] The entered data is sent from the device to a server, including meeting details (purpose, date, and budget), participant profiles, and analyzed emotional data. The data is securely transmitted to the server via the Internet.
[1031] Step 3:
[1032] Data analysis
[1033] The server analyzes the received data, using the Python Django framework. The data analysis evaluates the purpose of the meeting, date and time, budget, participant attributes (e.g., food allergy information, food preferences), and emotional data to understand the user's needs. The optimal search criteria are generated as output. For example, if the user wants to relax, the system will prioritize suggesting virtual stores where they can relax.
[1034] Step 4:
[1035] Virtual store locator
[1036] The server searches a virtual store database based on the results of the analysis. This database uses PostgreSQL and stores store names, service details, ratings, etc. Using a scoring algorithm (scikit-learn or TensorFlow), it matches the user's emotional state with store data and generates a list of stores with high priority. A list of suggested stores is generated as the output.
[1037] Step 5:
[1038] Send store list
[1039] The server sends the generated store list to the user's device. The user's device receives the proposed store list and displays it on the screen. The user selects the desired store from the displayed store list.
[1040] Step 6:
[1041] Store selection and resubmission
[1042] The user selects the desired store and retransmits the selection result to the server via the terminal, and the selected store information is received by the server.
[1043] Step 7:
[1044] Automatic booking
[1045] The server automatically makes a reservation at the selected store. For automatic reservations, APIs such as Twilio and IFTTT are used. If the reservation is successful, the server generates reservation details (store name, address, date and time, reservation number) and sends them to the user's device using a cloud messaging service (Firebase Cloud Messaging).
[1046] Step 8:
[1047] Reservation information notification
[1048] After the reservation is confirmed, the server generates a message according to the reservation details and emotion. Using the emotion engine, it generates a message according to the user's emotion (e.g., "Enjoy a relaxing time") and notifies all participants along with the reservation information. Notifications are sent via email or in-app messages.
[1049] Step 9:
[1050] Change response
[1051] If a user wants to add or change participants after making a reservation, they input the changes on their device and send them to the server. The server analyzes the received changes and performs the entire process from data analysis to store search and reservation again based on the new conditions. The latest reservation information is then re-notified along with a message generated based on the emotion engine.
[1052] 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.
[1053] 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.
[1054] 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.
[1055] [Fourth embodiment]
[1056] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1057] 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.
[1058] 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).
[1059] 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.
[1060] 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.
[1061] 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).
[1062] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[1063] 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.
[1064] 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.
[1065] 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.
[1066] 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.
[1067] 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.
[1068] 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."
[1069] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on the information. Specific embodiments of the system are described below.
[1070] 1. User Input:
[1071] The user starts the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). This information is saved on the device and sent to the server by pressing the send button.
[1072] 2. Data reception and analysis:
[1073] The server receives the data sent from the device. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis enables the optimal store search based on the conditions.
[1074] 3. Store Locator:
[1075] The server searches for the most suitable store based on the analyzed data. A store database is pre-registered on the server, and an AI algorithm evaluates stores that meet the meeting conditions and creates a list of stores with the highest priority.
[1076] 4. Store suggestions and selection:
[1077] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[1078] 5. Automatic booking:
[1079] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device.
[1080] 6. Booking Confirmation and Notification:
[1081] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[1082] 7. Additions and Changes:
[1083] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes these changes and, if necessary, searches for stores again, cancels existing reservations, and makes new reservations. The latest information after the changes is automatically notified to all participants again.
[1084] As a concrete example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party and information about the participants, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server would then automatically confirm the reservation for this restaurant, and a reservation confirmation email would be sent to the user and all participants. If additional participants are added later, they would simply enter the changes again through the app, and the new restaurant reservation would be automatically processed by the AI. As a result, the burden on the organizer would be significantly reduced, and the meeting would run more smoothly.
[1085] The processing flow will be explained below.
[1086] Step 1:
[1087] User: Launches the application and enters the purpose of the meeting (e.g., year-end party), the date and time of the meeting (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, living in Shinjuku Ward).
[1088] Step 2:
[1089] Terminal: Saves the entered information and sends it to the server when the send button is pressed.
[1090] Step 3:
[1091] Server: Analyzes the received data and extracts each item (purpose, date and time, budget, participant profile, etc.). Based on the results of this analysis, it generates search criteria for stores that match the conditions.
[1092] Step 4:
[1093] Server: Based on the analyzed data, it searches for the most suitable store from the store database. It uses an AI algorithm to evaluate the search results and generate a list of stores with high priority.
[1094] Step 5:
[1095] Server: Sends the generated optimal store list to the terminal.
[1096] Terminal: Displays a list of stores to the user.
[1097] Step 6:
[1098] User: Select the desired store from the displayed store list and press the confirm button. The selected store information is sent to the server.
[1099] Step 7:
[1100] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[1101] Step 8:
[1102] Server: Receives reservation confirmation information. After receiving it, the reservation information is sent to all participants by email.
[1103] Step 9:
[1104] User: When adding or changing participants after a reservation, the changes are entered through the application and sent to the server.
[1105] Step 10:
[1106] Server: Analyzes the changes and performs a new store search based on the new criteria, canceling existing reservations and confirming new reservations as necessary.
[1107] Step 11:
[1108] Server: Generates the latest reservation information after the change and notifies all participants again.
[1109] Example 1
[1110] 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."
[1111] In today's society, planning and managing a meeting smoothly is important in our busy daily lives. However, when planning a meeting, coordinating the schedules of participants, selecting an appropriate venue, securing reservations, and even accommodating specific needs of participants (such as allergies or dietary preferences) can be challenging. These procedures require time and effort, increasing the burden on organizers.
[1112] 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.
[1113] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and personal information of the participants, a means for receiving and analyzing the input data, a means for searching for the optimal location based on the analyzed data, and a means for evaluating the search means using an artificial intelligence model. This allows users to easily search for the optimal meeting location, make reservations, and automatically manage any necessary changes. Specifically, the location search is automated, taking into account the allergy information and food preferences of the participants, allowing for efficient and professional planning.
[1114] The "purpose of the meeting" is information that indicates the purpose for which the meeting is being held.
[1115] "Date and time" is information indicating the specific date and time when the meeting will start.
[1116] "Budget" is information that indicates the maximum amount of money that can be spent per person or for the entire meeting.
[1117] "Participant personal information" refers to individual information about people attending the meeting, such as their age, food allergies, food preferences, and location.
[1118] "Input means" refers to a device or software that provides an interface for a user to provide the required information to the system.
[1119] The "receiving and analyzing means" is a device or software that receives data sent from a user and analyzes its content.
[1120] The "means for searching for the best location" is a device or software that finds a suitable meeting place based on the received data.
[1121] The "means for transmitting search results to the user's terminal" refers to a device or software for transferring the search results to the terminal used by the user.
[1122] The "means for automatically making a reservation" is a device or software that allows the system to automatically make a reservation for a location selected by the user.
[1123] "Means for notifying" refers to a device or software for communicating information to participants after a reservation is completed.
[1124] "Means for receiving additions and changes, re-processing reservations, and notifying updated information" refers to a device or software that accepts changes that occur after a reservation, makes a new reservation, and notifies participants of the results.
[1125] "Means for evaluating the search means using an artificial intelligence model" refers to a device or software that uses machine learning or AI technology to evaluate search results based on received data and improve their accuracy.
[1126] The system of the present invention allows users to input the purpose, date, time, budget, and personal information of participants, and then automatically searches for the optimal location, makes reservations, contacts, and handles changes based on that information. This system is implemented using a user's device, a cloud server, and an artificial intelligence model.
[1127] Hardware and software used
[1128] The user's device is a smartphone or personal computer, which includes software for running the mobile application and a web browser. The cloud server is equipped with a Python-based processing system and a database management system (e.g., MySQL) for data analysis, store searches, and reservation processing.
[1129] Specifically, the following software and libraries are used:
[1130] NLP libraries: Use spaCy or NLTK to analyze data received from users.
[1131] Database management system: Use MySQL or PostgreSQL to manage store information and user data.
[1132] Machine learning libraries: Use Scikit-learn and TensorFlow to build AI models for store valuation.
[1133] Email Sending API: Use SendGrid or Amazon SES to automatically send reservation confirmation emails.
[1134] Program processing explanation
[1135] The user launches the smartphone application and enters the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the personal information of the participants (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, Shinjuku Ward). This information is saved on the device and sent to the cloud server by pressing the send button.
[1136] The server receives and analyzes the data sent from the device using Natural Language Processing (NLP) technology to extract information such as the purpose of the meeting, date and time, budget, and personal information.
[1137] The server then uses the analyzed data to search for the best store. It generates a database query to extract stores that match the criteria, and uses machine learning algorithms to evaluate the criteria and create a list of stores with the highest priority.
[1138] The search results are sent to the user's device, and the application displays a list of suggested stores to the user. When the user selects the desired store, the selection is sent back to the server.
[1139] The server automatically makes a reservation at the selected store. The reservation details (store name, address, date and time, reservation number) are generated and returned to the user's device. In addition, reservation confirmation information is automatically sent by email to all participants.
[1140] If a user adds or changes participants after making a reservation, the changes are sent to the server via the application. The server analyzes the changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the change is automatically notified to all participants again.
[1141] Specific examples
[1142] For example, if a user were to hold a year-end party in Shinjuku, they would first enter the purpose of the party, the date and time (December 20th, 7:00 PM), a budget of 5,000 yen per person, and personal information such as "30s, one person with shellfish allergy, Japanese food lover, Shinjuku ward." The input data is sent to the server, and the AI searches for the most suitable restaurant. From the list of suggested restaurants, the user selects a Japanese izakaya in Shinjuku, and the server automatically makes the reservation. A reservation confirmation email is then sent to the user and all participants. If additional participants are added, the changes can be sent to the server via the app, and a new restaurant reservation is automatically processed. This system significantly reduces the burden on organizers and ensures smooth meeting times.
[1143] Prompt Sentence Examples
[1144] "Please create a system that inputs the purpose of the meeting, date and time, budget, and participant profiles, and based on that, searches for and reserves the best venue for the year-end party in Shinjuku, and also automates communication and changes."
[1145] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1146] Processing flow
[1147] Step 1:
[1148] The user starts the smartphone application and inputs the purpose of the meeting, the date and time, the budget, and the personal information of the participants. This input information is saved in the smartphone's local storage. For example,
[1149] Purpose of the meeting: Year-end party
[1150] Date and time: December 20th, 7:00 PM
[1151] Budget: 5,000 yen per person
[1152] Participant personal information: 30s, one person with shellfish allergy, likes Japanese food, Shinjuku Ward
[1153] The user presses the "Send" button to send this information to the server.
[1154] Step 2:
[1155] The server receives data sent from the user's device. The received data is first analyzed using an NLP (Natural Language Processing) library. Specifically, spaCy is used to tokenize the received data and extract the purpose of the meeting, date and time, budget, and personal information. Based on the results of this analysis, structured data is generated for further processing. The input is the data sent by the user, and the output is the analyzed structured data.
[1156] Step 3:
[1157] The server searches for the most suitable stores based on the analyzed data. It generates a database query and extracts stores that match the criteria from a pre-registered store information database. It uses a machine learning model (e.g., Scikit-learn's RandomForestClassifier) to evaluate the extracted stores and create a list of the highest priority stores. The input is the analyzed structured data, and the output is a list of the most suitable stores.
[1158] Step 4:
[1159] The server sends the generated list of optimal stores to the user's device. Specifically, this list is converted into JSON format and displayed in real time on the user's mobile application. The user selects the desired store from the displayed list of stores. The input is the list of optimal stores, and the output is the user's selection data.
[1160] Step 5:
[1161] When the user selects the desired store and presses the "Confirm" button, the selection is sent back to the server. The server then makes a reservation for the selected store via the automated reservation system. Specifically, it accesses the store's reservation API, sends the necessary data, and receives a response indicating that the reservation is complete. The input is the user's selected data, and the output is reservation confirmation information.
[1162] Step 6:
[1163] When the server receives the reservation confirmation information, it generates an email containing the reservation details (store name, address, date and time, reservation number) and automatically sends it to all participants. As a specific example, the email is sent using the SendGrid API. The input is the reservation confirmation information, and the output is a notification that the email has been sent.
[1164] Step 7:
[1165] If the user adds more participants or changes information after making a reservation, the changes are entered through the application. This information is sent back to the server. The server analyzes these changes, searches for new stores and makes new reservations as needed, and generates new reservation information. The changed information is automatically notified again to all participants. The input is the user's changed data, and the output is the updated reservation information.
[1166] (Application example 1)
[1167] 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."
[1168] Conventional meeting planning and reservation methods require organizers to manually search for and reserve restaurants, which requires a great deal of effort and time. Also, selecting a restaurant that is suitable for everyone while accommodating allergies and food preferences is complicated and difficult to do efficiently. Furthermore, if there are additions or changes made after a reservation is made, the time and effort required to search for a restaurant again and make a new reservation is a major issue.
[1169] 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.
[1170] In this invention, the server includes a means for inputting the purpose, date and time of the meeting, the budget, and the participant profiles, a means for receiving and analyzing the input data, and a means for searching for the most suitable physical store based on the analyzed data. This allows the smartphone application to suggest the most suitable store based on the meeting conditions and automatically make a reservation. Furthermore, by automating notifications and changes after the reservation is completed, the burden on the organizer is significantly reduced, allowing the meeting to be held smoothly.
[1171] The "purpose of the meeting" is a summary of the purpose or content for which a particular meeting is being held.
[1172] "Date and Time" means the date and time at which the meeting will take place.
[1173] A "budget" is the maximum amount of money that can be spent by each individual or the entire group of participants in a meeting.
[1174] A "participant profile" is detailed individual information about people attending a meeting, such as their age, food preferences, allergy information, and location.
[1175] The "means for inputting" is an interface that allows a user to input the purpose, date and time of the meeting, the budget, and the profiles of the participants into the application.
[1176] "Means for receiving and analyzing" refers to the process by which the server receives the input data and breaks it down into individual items for understanding.
[1177] The "searching method" is a method in which the server selects the most suitable physical store from a pre-registered store database based on the analyzed data.
[1178] The "sending and receiving means" refers to the way in which the server sends search results to the user and receives the user's selections back.
[1179] The "means for automatically making a reservation" is a process in which the server automatically completes the reservation procedure for the store selected by the user.
[1180] "Means of notification" refers to a method for automatically notifying all participants of reservation completion information and change information.
[1181] The "means for receiving additions and changes, reprocessing reservations, and re-notifying updated information" refers to the process of receiving additions and changes requests from users, re-making new reservations based on those requests, and re-notifying all participants of the updated information.
[1182] A "smartphone application" is software that runs on a smartphone and allows users to enter meeting details, view search results, and manage reservations.
[1183] "Conditions" refers to user-entered data such as the purpose of the meeting, date and time, budget, and participant profiles.
[1184] "Suggested stores" are candidate stores suitable for meetings, selected by the server based on the user's conditions.
[1185] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable physical store based on the information, and then automatically makes reservations, contacts, and handles changes. Specific embodiments for implementing the present invention are described in detail below.
[1186] 1. User Input:
[1187] The user starts the smartphone application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participant profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward). This information is saved on the smartphone application and sent to the server by pressing the send button.
[1188] 2. Data reception and analysis:
[1189] The server receives the data sent from the smartphone. The received data is analyzed and each item (purpose, date and time, budget, participant profile, etc.) is extracted. This analysis makes it possible to search for the best brick-and-mortar store that meets the criteria. Natural language processing technology and statistical analysis algorithms are used for the analysis.
[1190] 3. Store Locator:
[1191] The server then searches for the most suitable store from a pre-registered store database based on the analyzed data. This server is equipped with an AI algorithm that evaluates the stores that best meet the criteria and creates a list of stores with the highest priority.
[1192] 4. Store suggestions and selection:
[1193] The server transmits the generated optimal store list to the smartphone terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[1194] 5. Automatic booking:
[1195] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and returned to the smartphone device.
[1196] 6. Booking Confirmation and Notification:
[1197] Upon receiving the reservation confirmation information, the server automatically sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email.
[1198] 7. Additions and Changes:
[1199] If there are any additions or changes to participants after a reservation is made, the user sends the changes to the server via the smartphone application. The server analyzes these changes and, if necessary, searches for stores again, cancels the existing reservation, and makes a new reservation. The latest information after the changes is automatically notified to all participants again.
[1200] As a concrete example, if a user is planning a year-end party in Shinjuku, they first enter the purpose of the party and information about the participants into a smartphone application, and then select a "Japanese Izakaya in Shinjuku" from the restaurants suggested by the AI restaurant search. The server automatically confirms the reservation for this restaurant, and a reservation confirmation email is sent to the user and all participants. If additional participants are added later, they can enter the changes again through the app, and the new restaurant reservation will be automatically processed by the AI.
[1201] Here are some example prompts for a generative AI model:
[1202] text
[1203] Please use the information below to suggest the best venue for your meeting.
[1204] Purpose of the meeting: {{purpose}}
[1205] Date and time: {{date}}
[1206] Budget: {{budget}}
[1207] Participant Profiles: {{profiles}}
[1208] Please let me know the store information you have proposed.
[1209] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1210] Step 1:
[1211] The user starts the smartphone application and inputs the purpose of the meeting, date and time, budget, and participant profiles (e.g., age, allergy information, food preferences, location). This input data is temporarily saved in the application.
[1212] Step 2:
[1213] The terminal sends the saved input data to the server. The server receives it and starts analyzing the data. It classifies and analyzes the input data (purpose, date and time, budget, profile) and extracts each item. The analysis results are saved in the server's internal database.
[1214] Step 3:
[1215] The server searches for stores based on the analyzed data. From a pre-registered store database, an AI algorithm evaluates the most suitable store based on the conditions, and creates a list of stores with the highest priority. This list is generated internally by the server.
[1216] Step 4:
[1217] The server sends the generated optimal store list to the user's smartphone. The device displays the received store list to the user. The user then selects the desired store from the suggested store list.
[1218] Step 5:
[1219] The store information selected by the user is sent back to the server. The server then makes a reservation for this store using an automatic reservation system. The reservation system automatically matches the input data with the store's reservation system and completes the reservation procedure.
[1220] Step 6:
[1221] After the reservation is completed, the server generates reservation information (store name, address, date and time, reservation number) and returns it to the user's smartphone. The device displays the received reservation information to the user. The server also automatically sends email notifications to all participants at the same time.
[1222] Step 7:
[1223] If the user needs to add or change participants after making a reservation, they send the changes to the server through the application. The server receives the changes and re-analyzes them. If necessary, they can search for stores again, cancel existing reservations, and make new reservations. The final updated information is automatically notified again by the server to all participants.
[1224] 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.
[1225] The system of the present invention allows users to input the purpose, date, time, budget, and participant profiles of a meeting, and then automatically searches for the most suitable restaurant, makes reservations, contacts, and handles changes based on that information. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and suggests the most suitable restaurant based on those emotions, the system realizes meeting planning with higher user satisfaction.
[1226] 1. User Input and Emotion Recognition:
[1227] The user launches the application and inputs the purpose of the meeting (e.g., year-end party), the date and time (e.g., December 20th, 7:00 PM), the budget (e.g., 5,000 yen per person), and the participants' profiles (e.g., people in their 30s, one person with a shellfish allergy, people who like Japanese food, and people living in Shinjuku Ward).The application is equipped with an emotion engine that recognizes the user's emotions in real time based on the input and also collects that emotion data.
[1228] 2. Data reception and analysis:
[1229] The device saves the entered information and, when the user presses the send button, sends it to the server. The server receives the data sent from the device and analyzes the purpose of the meeting, date and time, budget, participant profiles, and emotional data. Based on the analysis results, it generates optimal store search criteria that take the user's emotions into consideration.
[1230] 3. Store Locator:
[1231] The server searches for the most suitable store from the store database based on the analyzed data. At this time, the emotion engine also takes into account the user's emotional state (e.g., wanting to relax, wanting to have fun, wanting to spend quiet time), and generates a list of high-priority stores by taking into account the evaluation scores of stores corresponding to the emotion.
[1232] 4. Store suggestions and selection:
[1233] The server sends the generated optimal store list to the user's terminal, which displays the suggested store list to the user, allowing the user to select a desired store.
[1234] 5. Automatic booking:
[1235] The user selects the desired store and presses the confirm button. The selected store information is sent back to the server. The server then makes a reservation for the selected store using an automated reservation system. If the reservation is successful, the reservation details (store name, address, date and time, reservation number) are generated and sent to the terminal.
[1236] 6. Booking Confirmation and Notification:
[1237] Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion, and then sends the reservation information (store name, address, date and time, reservation number, etc.) to all participants by email. For example, a message reflecting the user's emotion, such as "Have a great time!", is attached.
[1238] 7. Additions and Changes:
[1239] If a user adds or changes participants after making a reservation, they enter the changes through the application and send them to the server. The server analyzes these changes and performs a new store search based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is automatically notified to all participants, along with a message generated again using the emotion engine.
[1240] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." The AI searches for restaurants and suggests Japanese izakayas with a relaxing atmosphere. Once the restaurant is selected and the reservation is completed, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, the changes can be entered through the app, and the new restaurant reservation will be automatically processed by the AI. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held in accordance with the emotions of the participants.
[1241] The processing flow will be explained below.
[1242] Step 1:
[1243] User: Launches the application. On the opening screen, the user enters the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), budget (e.g., 5,000 yen per person), and participant profiles (e.g., ages 30-39, one person with a shellfish allergy, likes Japanese food, lives in Shinjuku Ward). During this process, the emotion engine analyzes the user's input, facial expressions, voice, etc., and recognizes emotional data (e.g., wanting to relax, wanting to have fun).
[1244] Step 2:
[1245] Terminal: Stores the information and emotion data entered by the user, and sends the data to the server when the send button is pressed.
[1246] Step 3:
[1247] Server: Receives data sent from the device. Analyzes the received data and extracts and analyzes each item (purpose, date and time, budget, participant profile, emotional data). Generates search criteria based on the analysis results.
[1248] Step 4:
[1249] Server: Based on the analyzed data, the AI algorithm searches for the most suitable store from the store database. At this time, it takes into account the emotional data provided by the emotion engine and prioritizes a list of stores that match the emotion. This list also includes evaluation criteria such as the atmosphere of the seating area, music, and store reviews.
[1250] Step 5:
[1251] Server: Sends the generated optimal store list to the terminal.
[1252] Device: Displays a list of stores to the user, including store name, rating, address, photo, and sentiment-based recommendations.
[1253] Step 6:
[1254] User: Select the desired store from the displayed store list and press the Confirm button. The selected store information will be resent to the server.
[1255] Step 7:
[1256] Server: Makes a reservation for the selected store using the automatic reservation system. If the reservation is successful, generates the reservation details (store name, address, date and time, reservation number) and sends them to the terminal.
[1257] Step 8:
[1258] Server: Upon receiving the reservation confirmation information, the server uses an emotion engine to generate a message based on the user's emotion. For example, if the emotion of wanting to have fun is recognized, a message such as "Have a great time!" is generated. The server then sends the reservation information and a message based on the emotion to all participants via email.
[1259] Step 9:
[1260] User: If any additions or changes to participants occur after a reservation is made, the changes are entered through the application and sent to the server.
[1261] Step 10:
[1262] Server: Receives and analyzes the changes, performs a new store search based on the new conditions, cancels existing reservations and confirms new reservations as necessary.
[1263] Step 11:
[1264] Server: Generates updated reservation information after the changes and creates appropriate messages using the emotion engine. This information is then re-notified to all participants. For example, if a new participant joins and the emotion of anticipating a lively gathering is recognized, a message such as "A fun time with lots of people awaits!" is attached.
[1265] As a result, a system is provided that consistently selects the optimal store, makes reservations, and communicates with the user, taking into account the user's emotions.
[1266] Example 2
[1267] 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."
[1268] Conventional meeting planning systems select restaurants without considering the user's emotions, making it impossible to suggest the most suitable restaurant based on the user's emotions, and improving user satisfaction was an issue. Also, when participants were added or changed after the reservation was made, it was complicated to handle the situation, placing a heavy burden on the organizer.
[1269] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes: means for inputting the purpose, date and time of the meeting, budget, and participant profiles and emotion data; means for receiving the input data and analyzing it using natural language processing software and a machine learning model; means for searching for the optimal commercial facility based on the analyzed data, taking the user's emotional state into consideration; means for sending the search results to the user's terminal and re-receiving the commercial facility selected by the user; means for automatically making a reservation at the commercial facility selected by the user; means for generating a message corresponding to the emotion of the reservation information after the reservation is completed and notifying the participants; and means for receiving additions or changes made after the reservation, processing the reservation again, and re-notifying the participants of the updated information together with a message corresponding to the emotion. This makes it possible to suggest the optimal restaurant taking the user's emotion into consideration, and allows additions or changes made after the reservation to be quickly handled, significantly reducing the burden on the organizer.
[1270] A "meeting" refers to a gathering or event where multiple participants come together for a specific purpose.
[1271] "Purpose" refers to the objective or theme you want to achieve at the meeting.
[1272] "Date and Time" refers to the specific date and time that the meeting will be held.
[1273] "Budget" refers to the amount of money allocated per participant for the meeting.
[1274] A "participant profile" contains information about each individual attending a meeting, including age, allergy information, and food preferences.
[1275] "Emotion data" refers to the user's emotional state, and refers to data representing emotions such as joy, relief, and excitement felt by the user during the process of planning and booking a meeting.
[1276] "Terminal" refers to an electronic device used by a user, including a smartphone, tablet, or PC.
[1277] "Server" refers to a computer system that stores, processes, and provides data over a network.
[1278] "Natural language processing software" means software for processing text data entered by a user and analyzing its content.
[1279] A "machine learning model" refers to a collection of algorithms that learn from data and make predictions and classifications, and is used to analyze data and make optimal suggestions.
[1280] "Commercial facility" means a building or place that provides specific services or goods to consumers, such as a restaurant or retail store.
[1281] "Reservation System" means a system for managing and executing reservations for commercial facilities.
[1282] "Notification" means the act of informing a user or participant of specific information, including email and in-app notifications.
[1283] "Message" refers to textual information used to convey specific information or emotions.
[1284] "Additions and changes" refers to adding new participants or modifying existing conditions to the content of a meeting that has already been decided.
[1285] The system of the present invention is designed to make meeting planning more efficient and increase user satisfaction. This system uses a combination of hardware and software to input the purpose of the meeting, date and time, budget, and participant profiles and emotional data, and then analyzes this information to automatically search for the most suitable commercial facility, make reservations, notify users, and handle changes.
[1286] User Input and Emotion Recognition
[1287] Users turn on their smartphone, tablet, PC, or other device and use a dedicated application to enter detailed information about the meeting, including the purpose of the meeting (e.g., a year-end party), the date and time, the budget, and the participants' profiles (age, allergy information, food preferences, etc.). The application is equipped with an emotion engine that collects user emotional data in real time based on the input content and input speed.
[1288] Data reception and analysis
[1289] The device sends the information and emotional data entered by the user to a server, which then analyzes the data using natural language processing software (e.g., SpaCy or NLTK) and machine learning models (e.g., TensorFlow or PyTorch). This analysis helps understand the user's intent and desires, and also analyzes the emotional data to understand the user's emotional state.
[1290] Store Locator and Suggestions
[1291] The server searches for the most suitable commercial facility based on the analyzed data. Specifically, it extracts facilities that match the criteria from a commercial facility database (e.g., MySQL or PostgreSQL). The emotion engine considers the user's emotional state and assigns an evaluation score to the most suitable facilities, ranking them accordingly. As a result, a list of facilities that match the user's emotions, such as facilities with a smooth and relaxing atmosphere, is created.
[1292] Automatic booking and notifications
[1293] The terminal displays a list of optimal commercial facilities suggested by the server to the user. The user selects the desired facility and confirms the reservation. The selection information is resent to the server, which then reserves the facility using an automatic reservation system (e.g., OpenTable API or Gurunavi API). If the reservation is successful, reservation information (e.g., facility name, address, date and time, reservation number) is generated and notified to all participants along with a message generated by the emotion engine. An SMTP server (e.g., Postfix or SendGrid) is used for notification.
[1294] Additions and changes after booking
[1295] If a user makes additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and performs a new search based on the new conditions. If necessary, it cancels the existing reservation and confirms the new reservation. The latest reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[1296] Examples of concrete examples and prompts
[1297] As a concrete example, when a user holds a year-end party in Shinjuku, the emotion engine first recognizes the emotion of "wanting to relax." Then, using AI to search for commercial facilities, it suggests a Japanese izakaya with a relaxing atmosphere. After selecting that facility and completing the reservation, the user receives a message saying, "Enjoy a relaxing time." If additional participants are added, they can enter the changes through the app, and the AI will automatically process the new facility reservation. As a result, the burden on the organizer is significantly reduced, and a smooth meeting can be held that reflects the participants' emotions.
[1298] An example of a prompt sentence is, "Purpose of the meeting: year-end party, Date and time: December 20th, 7:00 PM, Budget: 5,000 yen per person, Participant profile: 30s, one person has a shellfish allergy, likes Japanese food, Shinjuku Ward. Please enter this information and we would like you to suggest the best restaurant for those in a relaxed mood. We would also like the system to automatically handle reservation changes if additional participants arrive."
[1299] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1300] Processing steps of this system's program
[1301] Step 1: User Input and Emotion Recognition
[1302] The user launches the application and enters the purpose of the meeting, the date and time, the budget, and the participant profiles. The input information includes the purpose of the meeting (e.g., year-end party), date and time (e.g., December 20th, 7:00 PM), the budget per person (e.g., 5,000 yen), food allergy information (e.g., one person has a shellfish allergy), food preferences (e.g., prefers Japanese food), and location (e.g., Shinjuku Ward). As the information is being input, the emotion engine built into the application analyzes the user's input speed and the strength of their touch gestures to collect emotion data in real time. Once the input data and emotion data are collected, this information is saved on the device.
[1303] Input: User input (meeting details, emotion data)
[1304] Output: Saved input data and emotion data
[1305] Step 2: Data reception and analysis
[1306] When the user presses the "send" button, the device sends the entered information and emotional data to the server. The server then analyzes the received data, using natural language processing software (e.g., SpaCy, NLTK) and machine learning models (e.g., TensorFlow, PyTorch) to understand the purpose and requests of the meeting, and then uses an emotional engine to analyze the emotional data. As a result, the specific requirements for the meeting and the user's emotional state are obtained as the analysis results.
[1307] Input: Input data and emotion data sent from the device
[1308] Output: Analysis results (specific requirements for the meeting, user's emotional state)
[1309] Step 3: Store Locator
[1310] Based on the analysis results, the server searches for the most suitable commercial facility from a commercial facility database (e.g., MySQL, PostgreSQL). The user's emotional state (e.g., wanting to relax or wanting to have fun) is also taken into consideration. The emotional engine ranks the facilities that are most suitable for the user with an evaluation score. The generated store list includes detailed information about each facility (e.g., name, address, atmosphere, budget, menu).
[1311] Input: Analysis results (specific requirements for the meeting, user's emotional state)
[1312] Output: List of stores with rating scores
[1313] Step 4: Store proposal and selection
[1314] The server sends the generated optimal store list to the user's device. The device displays the suggested store list to the user, allowing the user to select the desired store. Specifically, detailed information and evaluation scores for each store are displayed, allowing the user to select the most suitable facility from among them. The selected store information is also saved on the device.
[1315] Input: List of stores with rating scores
[1316] Output: Store information selected by the user
[1317] Step 5: Automated booking
[1318] The user selects the desired restaurant and presses the reservation confirmation button. This information is sent from the terminal to the server. The server then uses an automated reservation system (e.g., OpenTable API, Gurunavi API) to make a reservation for the selected restaurant. If the reservation is successful, it generates reservation information (restaurant name, address, date and time, reservation number) and sends it to the terminal.
[1319] Input: Store information selected by the user
[1320] Output: Reservation confirmation information (store name, address, date and time, reservation number)
[1321] Step 6: Booking confirmation and notification
[1322] When the server receives the reservation confirmation information, it uses an emotion engine to generate a message that corresponds to the user's emotion. The reservation information is then notified to all participants along with the generated message (e.g., "Have a great time!"). Notifications are sent using an SMTP server (e.g., Postfix or SendGrid).
[1323] Input: Reservation confirmation information
[1324] Output: Notifications to all participants (message and reservation information)
[1325] Step 7: Additions and changes
[1326] If a user wants to make additions or changes after making a reservation, they enter the changes through the application and send them from their device to the server. The server analyzes the changes and searches for stores again based on the new conditions. If necessary, it cancels the existing reservation and confirms a new reservation. The updated reservation information after the changes is also notified to all participants along with a message generated using the emotion engine.
[1327] Input: Changes (new participant information and conditions)
[1328] Output: Updated reservation information, notification to participants (message and reservation information)
[1329] (Application example 2)
[1330] 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."
[1331] Conventional meeting planning systems are specialized in searching for and reserving physical locations, making them difficult to apply to planning and executing virtual meetings in an online environment. They also lack the ability to suggest optimal locations based on the emotions and atmosphere of the participants, making it difficult to improve user satisfaction. Furthermore, additions and changes after a reservation are often made manually, placing a heavy burden on the organizer. The present invention aims to solve these problems.
[1332] 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.
[1333] In this invention, the server includes means for inputting the purpose, date and time of the meeting, budget, and participant attributes, means for receiving and analyzing the input data, means for searching for the optimal virtual store based on the analyzed data and the user's emotions, means for sending the search results to the user's terminal and re-receiving the store selected by the user, means for automatically making a reservation at the store selected by the user, means for notifying participants of reservation information after the reservation is completed, means for receiving additions or changes after the reservation, processing the reservation again, and re-notifying participants of the updated information, and means for generating a message according to the user's emotions using an emotion engine. This automates the planning of online meetings, selection of virtual stores, reservations, and changes, and makes it possible to suggest the optimal store according to the emotions of the participants.
[1334] The "purpose of the meeting" refers to the purpose or theme of the meeting, such as the content of a year-end party, a launch party, or a conference.
[1335] "Date and Time" refers to the specific date and time at which the meeting will take place. For example, December 20, 2023 at 7:00 p.m.
[1336] A "budget" refers to the maximum cost of a meeting, usually set as a per person budget.
[1337] "Participant attributes" refers to the characteristics and conditions of the people attending the meeting, including age, food allergies, and food preferences.
[1338] An "emotion engine" is a technology that analyzes the user's input data and behavior, and recognizes and judges their emotional state at that time (e.g., wanting to relax, wanting to get excited, etc.).
[1339] "Virtual stores" refer to meeting places and services available online, such as a virtual Japanese restaurant or online gaming sessions.
[1340] "Means of analysis" refers to the technology or algorithms that analyze information based on input data and assign meaning to it.
[1341] "Means for searching for stores" refers to the function of finding the most suitable stores and services from a database based on the user's input data and emotions.
[1342] "Means for making a reservation" refers to a function that automatically proceeds with the reservation procedure for the store selected by the user.
[1343] "Means of notification" refers to the function of notifying participants of reservation information and updated information, including email and messaging.
[1344] "Means for receiving additions and changes" refers to the function of receiving information about additions and changes to participants that occur after a reservation and reflecting this information in the system.
[1345] "Means for generating a message" refers to a function that uses an emotion engine to automatically generate a message according to the user's emotions.
[1346] This invention is a system that efficiently searches for a virtual store desired by a user and automatically processes reservations and changes by using a means for inputting the purpose, date and time of the meeting, budget, and attributes of the participants. It also has a function that uses an emotion engine to generate and notify messages according to the user's emotions.
[1347] Overall system configuration:
[1348] The system of the present invention consists of a user terminal such as a smartphone or computer, and a server that performs data analysis, store searches, and reservation procedures. The server contains the following main modules:
[1349] 1. User Input and Emotion Recognition Module:
[1350] The user launches the application and enters meeting details (purpose, date and time, budget, and participant attributes). As the information is entered, the emotion engine works and analyzes emotions in real time from the user's text and voice input. The software used is the Google Cloud Natural Language API.
[1351] 2. Data Analysis Module:
[1352] The input data is sent from the device to a server where it is analyzed using the Python Django framework to evaluate the purpose, date and time of the meeting, budget, and participant attributes and emotional data.
[1353] 3. Virtual store locator module:
[1354] Based on the results of the data analysis, the optimal store is searched for from a virtual store database (PostgreSQL), and a list of high-priority stores is generated using a scoring algorithm (scikit-learn or TensorFlow).
[1355] 4. Store suggestion and selection module:
[1356] The search results are sent to the user's terminal, and the user selects the desired virtual store from the list. This information is then sent back to the server.
[1357] 5. Automated booking module:
[1358] The reservation process is automated based on the selected virtual store information, using APIs such as Twilio and IFTTT.
[1359] 6. Notification module:
[1360] Once the reservation is complete, the reservation details are generated and notified to all participants via a cloud messaging service (Firebase Cloud Messaging). An emotion engine is also used to generate messages that correspond to the user's emotions.
[1361] 7. Change response module:
[1362] If any changes or additions to participants occur after a reservation is made, the user enters the changes and sends them back to the server. The server then performs the process again, from data analysis to store search and reservation, based on the updated information, and notifies the user of the latest reservation information.
[1363] Examples:
[1364] Here is an example prompt for a user planning an "online year-end party."
[1365] Example prompt:
[1366] "I'm in my 30s and would like to host an online year-end party in a relaxed atmosphere. The budget is 5,000 yen per person, and the event will be held on December 20th at 7:00 PM. Please recommend a virtual venue."
[1367] This system streamlines the entire process by automatically searching for and reserving the best venue for the virtual meeting the user is planning, and sending messages based on the emotions of the participants.
[1368] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1369] Step 1:
[1370] User Input and Emotion Recognition
[1371] Users launch the application using a smartphone or computer and input the purpose of the meeting, date and time, budget, and participant attributes. The input is received by the device, and the emotion engine runs to analyze the user's emotions in real time. Input is in the form of text or voice, and emotion recognition is performed using the Google Cloud Natural Language API. Input data includes participants' names, ages, allergy information, food preferences, etc. Analyzed emotion data is generated as output.
[1372] Step 2:
[1373] Data transmission
[1374] The entered data is sent from the device to a server, including meeting details (purpose, date, and budget), participant profiles, and analyzed emotional data. The data is securely transmitted to the server via the Internet.
[1375] Step 3:
[1376] Data analysis
[1377] The server analyzes the received data, using the Python Django framework. The data analysis evaluates the purpose of the meeting, date and time, budget, participant attributes (e.g., food allergy information, food preferences), and emotional data to understand the user's needs. The optimal search criteria are generated as output. For example, if the user wants to relax, the system will prioritize suggesting virtual stores where they can relax.
[1378] Step 4:
[1379] Virtual store locator
[1380] The server searches a virtual store database based on the results of the analysis. This database uses PostgreSQL and stores store names, service details, ratings, etc. Using a scoring algorithm (scikit-learn or TensorFlow), it matches the user's emotional state with store data and generates a list of stores with high priority. A list of suggested stores is generated as the output.
[1381] Step 5:
[1382] Send store list
[1383] The server sends the generated store list to the user's device. The user's device receives the proposed store list and displays it on the screen. The user selects the desired store from the displayed store list.
[1384] Step 6:
[1385] Store selection and resubmission
[1386] The user selects the desired store and retransmits the selection result to the server via the terminal, and the selected store information is received by the server.
[1387] Step 7:
[1388] Automatic booking
[1389] The server automatically makes a reservation at the selected store. For automatic reservations, APIs such as Twilio and IFTTT are used. If the reservation is successful, the server generates reservation details (store name, address, date and time, reservation number) and sends them to the user's device using a cloud messaging service (Firebase Cloud Messaging).
[1390] Step 8:
[1391] Reservation information notification
[1392] After the reservation is confirmed, the server generates a message according to the reservation details and emotion. Using the emotion engine, it generates a message according to the user's emotion (e.g., "Enjoy a relaxing time") and notifies all participants along with the reservation information. Notifications are sent via email or in-app messages.
[1393] Step 9:
[1394] Change response
[1395] If a user wants to add or change participants after making a reservation, they input the changes on their device and send them to the server. The server analyzes the received changes and performs the entire process from data analysis to store search and reservation again based on the new conditions. The latest reservation information is then re-notified along with a message generated based on the emotion engine.
[1396] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice 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 voice data.
[1397] 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.
[1398] 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 robot 414.
[1399] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1400] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1401] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1402] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1403] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1404] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1405] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1406] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1407] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1408] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1409] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1410] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1411] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1412] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1413] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1414] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1415] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1416] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1417] The following is further disclosed regarding the above embodiment.
[1418] (Claim 1)
[1419] a means for inputting the purpose, date, time, budget, and participant profiles of the meeting;
[1420] means for receiving and analyzing the input data;
[1421] A means for searching for an optimal store based on the analyzed data;
[1422] means for transmitting the search results to a user's terminal and receiving again the store selected by the user;
[1423] means for automatically making a reservation at the store selected by the user;
[1424] A means for notifying participants of reservation information after the reservation is completed;
[1425] A means to receive post-booking additions and changes, reprocess the booking, and re-notify participants of updates;
[1426] A system including:
[1427] (Claim 2)
[1428] 2. The system of claim 1, wherein the participant profile includes food allergy information.
[1429] (Claim 3)
[1430] 10. The system of claim 1, wherein the participant profile includes food preference information.
[1431] "Example 1"
[1432] (Claim 1)
[1433] a means for inputting the purpose, date, time, budget, and personal information of participants of the meeting;
[1434] means for receiving and analyzing the input data;
[1435] A means for searching for an optimal location based on the analyzed data;
[1436] means for transmitting the search results to a user's terminal and receiving again the location selected by the user;
[1437] means for automatically making a reservation for the location selected by the user;
[1438] A means for notifying relevant parties of reservation information after the reservation is completed;
[1439] A means to receive post-booking additions and changes, reprocess the booking, and re-notify stakeholders of the updates;
[1440] means for performing evaluation in said search means using an artificial intelligence model;
[1441] A system including:
[1442] (Claim 2)
[1443] 2. The system according to claim 1, wherein the personal information of participants includes information about food allergies.
[1444] (Claim 3)
[1445] 2. The system according to claim 1, wherein the personal information of the participants includes information about their food preferences.
[1446] "Application Example 1"
[1447] (Claim 1)
[1448] a means for inputting the purpose, date, time, budget, and participant profiles of the meeting;
[1449] means for receiving and analyzing the input data;
[1450] A means for searching for an optimal physical store based on the analyzed data;
[1451] A means for transmitting the search results to a user's terminal and receiving the physical store selected by the user again;
[1452] A means for automatically making a reservation at the physical store selected by the user;
[1453] A means for notifying participants of reservation information after the reservation is completed;
[1454] A means to receive post-booking additions and changes, reprocess the booking, and re-notify participants of updates;
[1455] A means for presenting to a user on a smartphone application optimal suggested stores based on meeting conditions;
[1456] A system including:
[1457] (Claim 2)
[1458] 2. The system of claim 1, wherein the participant profile includes food allergy information.
[1459] (Claim 3)
[1460] 10. The system of claim 1, wherein the participant profile includes food preference information.
[1461] "Example 2: Combining Emotion Engines"
[1462] (Claim 1)
[1463] a means for inputting the purpose, date, time, budget, and participant profile and sentiment data of the meeting;
[1464] means for receiving the input data and analyzing it using natural language processing software and machine learning models;
[1465] A means for searching for the most suitable commercial facility based on the analyzed data and taking into consideration the emotional state of the user;
[1466] a means for transmitting the search results to a user's terminal and receiving the commercial facilities selected by the user again;
[1467] means for automatically making a reservation for the commercial facility selected by the user;
[1468] a means for generating a message according to emotions and notifying participants of reservation information after the reservation is completed;
[1469] A means to receive post-booking additions and changes, reprocess the booking, and re-notify attendees of updates with sentiment-appropriate messages;
[1470] A system including:
[1471] (Claim 2)
[1472] 2. The system of claim 1, wherein the participant profile includes food allergy information.
[1473] (Claim 3)
[1474] 10. The system of claim 1, wherein the participant profile includes food preference information.
[1475] "Application example 2 when combining emotion engines"
[1476] (Claim 1)
[1477] A means for inputting the purpose, date and time of the meeting, budget, and attributes of participants;
[1478] means for receiving and analyzing the input data;
[1479] A means for searching for an optimal virtual store based on the analyzed data and user emotions;
[1480] means for transmitting the search results to a user's terminal and receiving again the store selected by the user;
[1481] means for automatically making a reservation at the store selected by the user;
[1482] A means for notifying participants of reservation information after the reservation is completed;
[1483] A means to receive post-reservation additions and changes, reprocess the reservation, and re-notify participants of the updates;
[1484] means for generating a message according to the user's emotion using an emotion engine;
[1485] A system including:
[1486] (Claim 2)
[1487] 2. The system according to claim 1, wherein the attributes of the participants include food allergy information.
[1488] (Claim 3)
[1489] 2. The system according to claim 1, wherein the attributes of the participants include food preference information. [Explanation of symbols]
[1490] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a means for inputting the purpose, date, time, budget, and participant profiles of the meeting; means for receiving and analyzing the input data; A means for searching for an optimal store based on the analyzed data; means for transmitting the search results to a user's terminal and receiving again the store selected by the user; means for automatically making a reservation at the store selected by the user; A means for notifying participants of reservation information after the reservation is completed; A means to receive post-booking additions and changes, reprocess the booking, and re-notify participants of updates; A system including:
2. 2. The system of claim 1, wherein the participant profile includes food allergy information.
3. 10. The system of claim 1, wherein the participant profile includes food preference information.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A