system
A system automates meeting scheduling by acquiring schedule information, calculating optimal times, and managing attendance, addressing inefficiencies in coordinating across departments and improving time management.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-12-11
- Publication Date
- 2026-06-23
AI Technical Summary
Coordinating schedules across multiple departments for meetings is cumbersome and inefficient, making it difficult to find a time when all members can participate, and the adjustment work becomes a burden, often taking a long time to determine the meeting schedule.
A system that automatically acquires relevant individual schedule information, calculates the optimal meeting date and time, generates meeting notifications, and manages attendance information, reducing the burden of complex scheduling work.
Enables efficient scheduling across multiple departments by automating the process of selecting candidate dates and times, sending notifications, and managing attendance, thereby improving time management and reducing scheduling hassle.
Smart Images

Figure 2026102172000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] When召集 members of multiple departments to set up a meeting, it is very cumbersome to adjust individual schedules, and there is a problem that it is difficult to efficiently find a time when all members can participate. In addition, the adjustment work becomes a burden, and it often takes time to determine the meeting schedule. For this reason, there is a need for a system that can efficiently and simply select candidate dates and times for meetings and confirm the attendance and absence of participants.
Means for Solving the Problems
[0005] It should be noted that the Chinese character "召集" in the original text seems to be incorrect. It might be "召集" which is not a common or standard term in this context. Maybe it should be "召集" (summon / convoke). If this is a misspelling, please correct it in the original text for a more accurate translation.This invention provides a means for automatically acquiring relevant individual schedule information for meeting scheduling, thereby efficiently collecting schedules from relevant departments. It also provides a system that calculates the optimal meeting date and time based on the acquired schedule information, presents it to the user for confirmation, and includes a means for this to be completed. Furthermore, it includes a function to automatically generate meeting notifications using the confirmed meeting date and time, send them to participants, and collect and manage attendance information from participants, thereby reducing the burden of complex scheduling work. This enables efficient scheduling across multiple departments.
[0006] "Meeting scheduling" is the process of determining the date, time, and location for multiple individuals or groups to meet.
[0007] "Schedule information" refers to schedule data held by individual persons, including specific time details regarding future activities and events.
[0008] The "optimal meeting date and time" refers to a time when multiple participants can easily gather, and where the participants' schedules do not overlap.
[0009] A "meeting notice" is a notification sent to members who are planning to attend a meeting, containing detailed information such as the date, time, location, purpose, and participants.
[0010] A "reminder" is a function or message that serves to notify or remind you again when a specific date and time are approaching.
[0011] "Attendance information" refers to information indicating each participant's intention or opinion regarding attending or not attending a meeting. [Brief explanation of the drawing]
[0012] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3]It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Mode for Carrying Out the Invention
[0013] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0014] First, the terms used in the following description will be explained.
[0015] In the following embodiments, the numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0016] In the following embodiments, the numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0017] In the following embodiments, the numbered storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, etc.
[0018] In the following embodiments, the numbered communication I / F (Interface) is an interface including a communication processor and 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), or Bluetooth (registered trademark), etc.
[0019] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0020] [First Embodiment]
[0021] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0022] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0023] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0024] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0025] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0026] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0027] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0028] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0029] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0030] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0031] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0032] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0033] In an embodiment of this invention, the meeting scheduling support system consists of a server, a user terminal, and a network infrastructure. The system program begins with the user inputting the meeting content, purpose, and relevant departments via the terminal.
[0034] The server extracts a list of relevant members from the company database based on the relevant department information entered by the user. Using this list, the server retrieves each member's schedule information from the calendar system and calculates the optimal meeting date and time to find the availability of all participants.
[0035] As a concrete example, suppose a user is trying to schedule a "Next Project Planning Meeting," and the Development, Sales, and Marketing departments are selected as the relevant departments. Based on this, the server retrieves the schedules of the members of each department and identifies a time slot between 3 PM and 4 PM on Wednesday as a possible date and time. The proposed date and time are sent to the user's terminal and confirmed on the screen.
[0036] Once the user selects and confirms the appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to participants via email or calendar invitation. Furthermore, the server compiles attendance information from participants, allowing users to see attendance status in real time. A reminder function is also enabled, and the server is set to send a reminder to participants the day before the meeting.
[0037] In this way, using this system reduces the hassle of coordinating schedules across multiple departments and allows for efficient meeting scheduling and participant notification.
[0038] The following describes the processing flow.
[0039] Step 1:
[0040] The user enters the meeting's purpose, content, and relevant departments via their device. This determines which department members the system will target.
[0041] Step 2:
[0042] The terminal sends the entered information to the server. Based on the received information, the server retrieves members of the relevant department from the company's internal database.
[0043] Step 3:
[0044] The server uses a list of relevant members to retrieve each member's schedule data from the company's internal calendar system. This schedule data includes each member's appointments.
[0045] Step 4:
[0046] The server analyzes the acquired schedule data and calculates the optimal meeting date and time, taking into account the availability of all participants. It prioritizes selecting the time slot with the largest number of available participants.
[0047] Step 5:
[0048] The server sends the suggested date and time to the user's device. The user then checks the displayed date and time on their device and selects the most suitable one.
[0049] Step 6:
[0050] The server confirms the date and time selected by the user. Based on that date and time, the server automatically generates a meeting notification and sends it to all participants via email or calendar invitation.
[0051] Step 7:
[0052] The server collects attendance information for each participant and manages it so that users can check attendance status in real time. The server is also set to send a reminder to each participant the day before the meeting.
[0053] (Example 1)
[0054] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0055] Currently, many organizations need to coordinate the schedules of multiple departments and individuals when scheduling meetings. However, manual scheduling is time-consuming and inefficient. Finding the optimal meeting time is difficult, and determining a date and time when all participants can attend is often challenging. Furthermore, managing meeting notifications and attendance confirmations is often cumbersome. A system is needed to address these challenges and enable efficient meeting scheduling.
[0056] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0057] In this invention, the server includes means for receiving meeting content, purpose, and relevant department information from users; means for extracting a list of relevant individuals from the organizational components based on the relevant department information; and means for obtaining the schedule information of the extracted individuals from multiple time management tools. This makes it possible to quickly aggregate schedule information from all relevant members within the organization and automatically calculate the optimal meeting date and time. It also enables efficient management of meeting notifications and attendance confirmations.
[0058] "Users" refers to individuals or groups who operate the system and input the information necessary to set up a meeting.
[0059] A "terminal" is a general term for electronic devices that users use to access a system, input information, or receive information from a server.
[0060] A "server" is a computer device that receives and analyzes input information from users, performs necessary data processing to generate results, and transmits them to terminals.
[0061] "Department information" refers to information about specific departments or teams within an organization that are relevant when setting up a meeting.
[0062] "Organizational components" refers to the collective unit that includes departments, members, or teams belonging to a particular organization.
[0063] "Time management tools" is a general term for software or systems used to manage personal schedules and appointments.
[0064] "Schedule information" refers to a record of activity times set by individuals or members of an organization according to their individual schedules.
[0065] "Meeting date and time" refers to the specific date and time when the meeting is scheduled to take place.
[0066] "Communication technology" is a general term for the technologies and protocols used to send and receive information via email and networks.
[0067] A "recording system" is a system for storing and managing attendance information and other data collected from participants.
[0068] The meeting scheduling support system of this invention is comprised of a computing environment, utilizing a server, user terminals, and the communication infrastructure connecting them. Users access a user interface using their own terminals to input information about the meeting content, purpose, and relevant departments. A general-purpose computer, tablet, or smartphone can be used as the terminal.
[0069] 1. User input
[0070] When setting up a meeting, the user first enters the necessary information into a form on their device. For example, they might specify "Next Project Planning Meeting" and list the relevant departments as the Development Department, Sales Department, and Marketing Department. This data is then sent to the server.
[0071] 2. Server processing
[0072] The server analyzes the received departmental information and accesses the organization's database to extract a list of relevant components. In this process, the server uses database software to efficiently execute queries. For example, an SQL database could be used.
[0073] 3. Obtaining schedule information
[0074] The server retrieves each individual's schedule information based on the extracted personal list. To do this, the server uses APIs from time management tools such as Google® Calendar and Microsoft® Outlook to extract each individual's schedule data.
[0075] 4. Calculation of candidate dates and times
[0076] The server applies an algorithm based on all the acquired schedule information, comparing everyone's availability to calculate the optimal meeting time. For example, Wednesday from 3 to 4 p.m. might be determined to be the best time.
[0077] 5. Notification and Confirmation
[0078] The server sends the calculated optimal date and time to the user's terminal, and the user receives this information and confirms their preferred date and time. After confirmation, the server automatically generates a meeting notification based on the set date and time using communication technology and sends the notification to the participants.
[0079] 6. Attendance Management and Reminders
[0080] The server collects attendance information from participants and stores it in the recording system. It also has a function to send reminders to participants as the meeting approaches.
[0081] The above process is used to instruct the user to perform actions that will be choreographed by the generated AI model using the following prompt statements.
[0082] "Please check the schedules of the relevant departments for the meeting and suggest the most suitable dates and times."
[0083] "Please adjust the schedule for a joint meeting between the development and sales departments."
[0084] This invention allows users to effectively schedule meetings without much effort, resulting in improved time management throughout the organization.
[0085] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0086] Step 1:
[0087] The user uses a terminal to input the meeting content, purpose, and relevant departments. This information is sent to the server by the input system. Specifically, after entering "Next Project Planning Meeting, Development Department, Sales Department, Marketing Department" into the user interface form and pressing the "Submit" button, the data is sent to the server.
[0088] Step 2:
[0089] The server receives input data from the user and accesses the company's database based on the relevant department information. It executes database queries to extract member lists for each corresponding department. The input is the relevant department information, and the output is a list of the relevant individuals. The specific operation involves database search processing using SQL.
[0090] Step 3:
[0091] The server retrieves each individual's schedule information from their time management tool based on the extracted list of individuals. It makes API calls to collect schedule data from Google Calendar and Microsoft Outlook. Here, the list of individuals is the input, and the retrieved schedule information is the output. The server organizes the retrieved information and converts it into a comparable format.
[0092] Step 4:
[0093] The server uses the retrieved schedule information to compare available time slots for all participants. It then uses an algorithm to calculate the optimal meeting date and time. Specifically, it aggregates each member's availability to identify a date and time when everyone can attend. The input is all the schedule information, and the output is the optimal meeting date and time.
[0094] Step 5:
[0095] The server sends the calculated optimal meeting date and time to the user's terminal. The terminal receives this information and displays it in the user interface. Specifically, it presents a particular date and time, such as "Wednesday, 3pm to 4pm," and prompts the user to confirm.
[0096] Step 6:
[0097] The user reviews the suggested meeting dates and times displayed on their device and selects an appropriate date and time. The selected date and time are sent back to the server, which then generates a meeting notification based on that information. The specific process includes a confirmation step for the user to finalize their selection.
[0098] Step 7:
[0099] The server sends the final meeting notification to participants via email or calendar invitation. The attendance confirmation process is also automated, and the information returned by participants is compiled on the server. Input is the confirmed meeting date and time, and output is the notification sent to each participant and the aggregated attendance information. Specific operations include sending emails via an SMTP server and updating the database.
[0100] Step 8:
[0101] The server arranges to send reminders to participants the day before the scheduled meeting. This allows participants to review their schedule again just before the meeting. The reminder settings are the input, and the output is the reminder notification sent to participants. Specific actions include the automatic sending of scheduled notifications.
[0102] (Application Example 1)
[0103] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0104] Setting up online meetings involves a lot of manual input and verification, which is inefficient. In particular, coordinating meetings with multiple staff members is time-consuming and cumbersome, impacting customer satisfaction. Therefore, there is a need for a way to automate scheduling and efficiently set up meetings.
[0105] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0106] In this invention, the server includes means for automatically acquiring the availability information of the relevant personnel for setting up online meetings, means for calculating the optimal meeting date and time based on the acquired availability information, and means for presenting the calculated meeting date and time to the user for confirmation. This enables efficient scheduling of online meetings for both the customer and the personnel.
[0107] An "online meeting" is a type of conference format that uses digital communication technology to allow for dialogue through sight and sound, regardless of location.
[0108] "Responsible person" refers to an individual or team member who is responsible for performing a specific task or handling customer inquiries.
[0109] "Availability information" refers to information that indicates time slots in a specific individual's or group's schedule where they have no scheduled appointments.
[0110] "Interview date and time" refers to the specific date and time on which the interview will take place.
[0111] "User" refers to an individual or legal entity that uses or operates the system or service.
[0112] A "notification" refers to a message or alert intended to inform others of specific information.
[0113] "Management" is the process of organizing, maintaining, and efficiently operating information and resources.
[0114] The system for implementing this invention consists of a server, a user terminal, and a network infrastructure to streamline the scheduling of online interviews. The system program begins with the user inputting the interview content, preferred date and time, and relevant contact person information via their terminal.
[0115] The server extracts a list of relevant personnel from the company database based on the information entered by the user. Using this list, it retrieves each person's availability information from a calendar API (e.g., Google Calendar API) to calculate the optimal meeting date and time. The resulting date and time are sent to the user's device for confirmation on the screen. Once the user selects and confirms an appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to the relevant personnel via email or calendar invitation. Furthermore, by collecting and managing participant information, the server allows users to track participation status in real time. A reminder function allows the server to send a reminder to participants the day before the meeting.
[0116] For example, if a user enters a request such as "I would like to discuss my credit card statement," the system will extract the relevant personnel, check both parties' schedules, and suggest a time slot of 2 PM the following day. Once the user confirms this suggestion, an automatic meeting notification will be sent to both the user and the relevant personnel, and a reminder will be sent the day before.
[0117] Examples of prompt statements generated using a generative AI model are as follows:
[0118] "Please describe the algorithm of an application that calculates the most appropriate meeting time based on the customer's entered preferences for online meetings and sends notifications to both the agent and the customer."
[0119] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0120] Step 1:
[0121] The user uses the interface on their device to enter the details of the online meeting, preferred date and time, and information about the relevant contact person. This data is then sent to the server, which prepares to receive it.
[0122] Step 2:
[0123] The server extracts a list of relevant personnel from the internal database based on the relevant personnel information received from the user. Specifically, it executes an SQL query using the identification information of the personnel (e.g., name, ID) to retrieve the relevant information from the database. The retrieved list is used for the following processes.
[0124] Step 3:
[0125] The server retrieves each employee's availability information via the calendar API, based on the extracted list of employees. An API request is made, and availability data for each employee is returned. The server then parses this data and stores it in a database.
[0126] Step 4:
[0127] The server calculates the optimal meeting date and time based on the acquired availability data. The algorithm compares the user's preferred date and time with the availability of the assigned staff member to find a date and time that is convenient for both parties. If there are multiple options, the server prioritizes and stores them.
[0128] Step 5:
[0129] The server sends the calculated interview date and time to the user's terminal and presents it to the user. The user checks the presented date and time on their terminal and selects an appropriate date and time. Once a selection is made, the result is returned to the server.
[0130] Step 6:
[0131] The server automatically generates meeting notifications based on the date and time selected by the user and sends them to the relevant personnel and the user. The notifications are generated in the form of email or calendar invitations. These notifications are added to the calendars of the personnel and the user using an API.
[0132] Step 7:
[0133] The server sets reminders for interviews and automatically sends notifications to all participants the day before the interview. The reminder timing is predetermined, and the reminder message is delivered using the corresponding API.
[0134] These steps enable effective scheduling of online meetings.
[0135] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0136] One embodiment of this invention is to incorporate an emotion engine that recognizes the user's emotions into a meeting scheduling support system. The system consists of a server, a user terminal, an emotion engine, and a network infrastructure. The program begins with the user inputting the meeting content, purpose, and relevant departments through the terminal.
[0137] The device has a built-in camera and microphone, and an emotion engine analyzes the user's facial expressions and voice to recognize emotions in real time. The server receives information from the emotion engine and adjusts the meeting setup process based on the user's emotions. For example, if the user is feeling stressed, the planning process is simplified and a more intuitive interface is provided.
[0138] As a concrete example, suppose a user sets up a "new product sales strategy meeting," and the emotion engine detects from the user's facial expression that they are in a hurry. In this case, the server automatically narrows down the number of possible dates and times and suggests the highest priority date and time. The server also simplifies the content of the meeting notification and adjusts the timing of sending the notification based on the user's emotion.
[0139] As part of the overall process, the server uses an emotion engine to enhance the user experience, optimizing the selection of meeting dates and times and the timing of notifications based on the user's emotional state. This enables more efficient and user-friendly meeting scheduling.
[0140] The following describes the processing flow.
[0141] Step 1:
[0142] The user uses a device to input the purpose and content of the meeting, as well as the relevant departments. The device is equipped with a camera and microphone, and an emotion engine captures the user's facial expressions and voice while they are inputting.
[0143] Step 2:
[0144] The emotion engine analyzes the user's emotions in real time from their facial expressions and voice, and evaluates their state, such as stress, concentration level, and excitement. The evaluation results are sent to the server.
[0145] Step 3:
[0146] The server receives the evaluation results and adjusts the interface operation according to the user's emotional state. For example, if it detects that the user is stressed, it will simplify instructions and prompts to reduce the burden on the user.
[0147] Step 4:
[0148] Based on user input, the server retrieves the schedules of members in the relevant department and displays a short list of suggestions to cheer them up. If the emotion engine detects stress, it reduces the number of suggested dates and times, simplifying the choices.
[0149] Step 5:
[0150] When a user selects the optimal meeting date and time on their device, the emotion engine guides the user interface (UI) to enhance their sense of security and satisfaction, and the server accepts that selection.
[0151] Step 6:
[0152] The server generates a meeting notification based on the confirmed date and time, and sends it to all participants with content adjusted by the emotion engine. The notification content and timing are tailored to the user's emotions.
[0153] Step 7:
[0154] Before a meeting, the server sets up reminder notifications and adjusts the content and timing of the reminders based on analysis from the emotion engine. This further enhances the user experience.
[0155] (Example 2)
[0156] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0157] Traditional meeting scheduling systems allow for efficient scheduling and participant notifications, but they lack the flexibility to adjust processes while considering user emotions. As a result, meeting settings cannot be optimized according to the psychological state of the users, which has not led to improved user experience or reduced stress.
[0158] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0159] In this invention, the server includes means for automatically acquiring relevant personal schedule information for meeting setup, means for recognizing the user's emotions and adjusting the meeting setup process based on those emotions, and means for optimizing the timing of sending meeting notifications according to those emotions. This enables efficient and user-friendly meeting setup that takes the user's emotions into consideration.
[0160] "Meeting scheduling" is a series of processes that involve gathering the necessary information to conduct a meeting effectively, determining the optimal date and time, and notifying participants.
[0161] "Personal scheduling information" refers to the schedule data and available time slots of participants related to the meeting.
[0162] "Recognizing emotions" is the process of identifying and analyzing a user's psychological state from their facial expressions and voice.
[0163] "Adjusting the meeting setup process" means optimizing the meeting setup procedure and interface based on user sentiment and other factors.
[0164] A "generative AI model" is an algorithm that uses machine learning to learn patterns from large amounts of data and perform specific tasks.
[0165] "Optimizing the timing of meeting notification sending" is the process of sending notifications at the optimal time, taking into account the psychological and situational suitability of the participants.
[0166] A description of the embodiment for carrying out the invention will be provided.
[0167] This system consists of multiple components designed to efficiently set up meetings. Specifically, it comprises a server, user terminals, an emotion engine for analyzing emotions, and the network infrastructure that connects them.
[0168] First, the user uses their device to input the meeting content, purpose, and relevant departments. The user's device has a built-in camera and microphone, which are used to capture the user's facial expressions and voice.
[0169] The emotion engine uses a built-in generative AI model to analyze this data in real time. The server receives the data from the emotion engine, further analyzes the user's emotional state, and adjusts the meeting scheduling process.
[0170] The server uses this analysis to suggest the optimal meeting date and time. For example, if the analysis indicates that the user is experiencing stress, the system narrows down the candidate dates and times and provides a simpler interface. The server also simplifies the content of meeting notifications and selects the optimal timing for sending them.
[0171] As a concrete example, when a user is scheduling a "new product sales strategy meeting," if the emotion engine determines that the user is pressed for time, the server will automatically reduce the number of possible dates and times and suggest primary dates and times. An example of an input prompt message used by the generative AI model might be, "Please explain how to provide the best meeting setting considering the user's emotions."
[0172] In this way, meeting settings can be configured to reflect users' emotions in real time, resulting in a user-friendly and efficient operation.
[0173] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0174] Step 1:
[0175] Users use their terminals to input meeting content, purpose, and relevant departments. This information is saved as initial data within the terminal. This allows the terminal to prepare to send the basic meeting information to the server.
[0176] Step 2:
[0177] The device's built-in camera and microphone activate, capturing the user's facial expressions and voice. The user's facial image and voice are acquired as input data. The device collects this data and sends it to the emotion engine.
[0178] Step 3:
[0179] The emotion engine receives facial and audio data transmitted from the device. It analyzes the input data using a generating AI model to quantify the user's emotional state. The output is the user's emotional state level (e.g., stress, relaxation).
[0180] Step 4:
[0181] The server receives emotional state data sent from the emotion engine. Based on this input data, it adjusts the meeting scheduling process. Specifically, it calculates the optimal meeting date and time for the input information and narrows down the candidates. As output, a list of high-priority meeting dates and times is generated.
[0182] Step 5:
[0183] The server presents the user with suggested meeting dates and times based on an optimized list. The server generates a pre-prepared prompt and presents it to the user to prompt confirmation. The output is the meeting date and time confirmed by the user.
[0184] Step 6:
[0185] The server automatically generates meeting notifications based on the confirmed meeting date and time. It adjusts the notification content according to the emotional state of participants and sends notifications to them at the optimal time. Specifically, information is sent to participants via email or app notifications.
[0186] (Application Example 2)
[0187] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0188] Traditional meeting scheduling systems fail to consider users' emotional states when scheduling meetings, making it difficult to efficiently schedule meetings when users are stressed or in a hurry. Furthermore, there has been a lack of technology to provide interfaces and processes that can adjust to changes in emotional state.
[0189] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0190] In this invention, the server includes means for analyzing the user's facial expressions and voice to recognize their emotions and adjusting the meeting scheduling process based on the results; means for optimizing candidate meeting dates and times and notification timing according to the user's emotional state; and means for presenting candidate meeting dates and times to the user and prompting them to make a selection. This enables more efficient and user-friendly meeting scheduling that is tailored to the user's emotional state.
[0191] "Meeting scheduling" is the process of determining the optimal meeting date and time based on the schedules of the relevant individuals and obtaining confirmation from the participants regarding that date and time.
[0192] "Schedule information" refers to information including personal schedules and the schedules of other stakeholders, and is used to coordinate meeting dates and times.
[0193] "Recognizing emotions" is the process of identifying a user's current mental state and emotions by analyzing their facial expressions and voice.
[0194] "Adjusting the process" means modifying the system's behavior and interface according to the user's emotions and circumstances to provide a more optimal user experience.
[0195] "Automatically generating and sending notifications" means creating a notification message based on meeting settings information and automatically communicating it to relevant parties.
[0196] "Collecting and managing attendance information" means understanding the attendance status of participants and preparing for the meeting based on that information.
[0197] "Optimizing candidate dates and notification timing" means adjusting the selection of candidate meeting dates and times, as well as the timing of notifications, to make them optimal based on the user's emotional state and other conditions.
[0198] The system for implementing this invention consists of a server, a user terminal, an emotion engine, and a network infrastructure. The user terminal has a built-in camera and microphone, and the emotion engine can analyze the user's facial expressions and voice to understand their emotional state in real time.
[0199] The server receives user sentiment information and adjusts the meeting scheduling process accordingly. Specifically, it narrows down potential meeting dates and times based on the user's sentiment and sends meeting details at an optimized notification timing. This enables more efficient meeting scheduling tailored to the user's usage patterns.
[0200] The device uses a generative AI model to generate prompts based on the user's emotional state, providing user-friendly instructions in the interface. This process utilizes facial recognition software such as OpenFace and speech analysis using Azure Cognitive Services.
[0201] For example, if a user is urgently trying to schedule a sales strategy meeting for a new product, the server, through its emotion engine, recognizes the user's urgency, automatically organizes potential dates and times, and narrows down and presents the most suitable option. Furthermore, when presenting multiple potential dates and times, it prioritizes displaying the option that causes the user the least stress, thereby improving usability.
[0202] An example of a prompt would be: "Use an emotion recognition system to provide ideas on how a robot could adjust its actions to create the right atmosphere when a user wants to relax."
[0203] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0204] Step 1:
[0205] The user's device uses its camera and microphone to capture the user's facial expressions and audio data in real time. During this process, camera images and audio are collected as input, and this data is sent to the emotion engine.
[0206] Step 2:
[0207] The emotion engine analyzes the received facial expression information and audio data to recognize the user's emotions. Here, facial recognition software such as OpenFace and audio analysis tools such as Azure Cognitive Services are used to output the emotional state as numerical data.
[0208] Step 3:
[0209] The server receives emotional state data from the emotion engine and incorporates it into the meeting scheduling process. The input is quantified emotional data, which is used to adjust potential meeting dates and times and notification timings, and the results are then sent to the next process.
[0210] Step 4:
[0211] The server optimizes candidate dates and times, presenting the user with more appropriate meeting date and time options that align with their emotional state. The input here is adjusted candidate meeting date and time data, and the output is optimized to reduce user stress.
[0212] Step 5:
[0213] The user selects a meeting date and time from the presented options and sends the selection to the server. The input is the user's selection, and preparations to notify participants continue based on that result.
[0214] Step 6:
[0215] The server automatically generates a meeting notification message based on the final meeting date and time, and sends it to all participants via the network infrastructure. Here, the selected date and time are the input, and the generated notification message is output.
[0216] Step 7:
[0217] Using a generative AI model, the system proposes emotion-based prompts to the user, providing user-friendly instructions on the interface. User emotion data and meeting information are used as input, and the generated prompts are output.
[0218] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0219] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0220] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0221] [Second Embodiment]
[0222] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0223] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0224] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0225] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0226] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0227] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0228] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0229] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0230] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0231] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0232] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0233] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0234] In an embodiment of this invention, the meeting scheduling support system consists of a server, a user terminal, and a network infrastructure. The system program begins with the user inputting the meeting content, purpose, and relevant departments via the terminal.
[0235] The server extracts a list of relevant members from the company database based on the relevant department information entered by the user. Using this list, the server retrieves each member's schedule information from the calendar system and calculates the optimal meeting date and time to find the availability of all participants.
[0236] As a concrete example, suppose a user is trying to schedule a "Next Project Planning Meeting," and the Development, Sales, and Marketing departments are selected as the relevant departments. Based on this, the server retrieves the schedules of the members of each department and identifies a time slot between 3 PM and 4 PM on Wednesday as a possible date and time. The proposed date and time are sent to the user's terminal and confirmed on the screen.
[0237] Once the user selects and confirms the appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to participants via email or calendar invitation. Furthermore, the server compiles attendance information from participants, allowing users to see attendance status in real time. A reminder function is also enabled, and the server is set to send a reminder to participants the day before the meeting.
[0238] In this way, using this system reduces the hassle of coordinating schedules across multiple departments and allows for efficient meeting scheduling and participant notification.
[0239] The following describes the processing flow.
[0240] Step 1:
[0241] The user enters the meeting's purpose, content, and relevant departments via their device. This determines which department members the system will target.
[0242] Step 2:
[0243] The terminal sends the entered information to the server. Based on the received information, the server retrieves members of the relevant department from the company's internal database.
[0244] Step 3:
[0245] The server uses a list of relevant members to retrieve each member's schedule data from the company's internal calendar system. This schedule data includes each member's appointments.
[0246] Step 4:
[0247] The server analyzes the acquired schedule data and calculates the optimal meeting date and time, taking into account the availability of all participants. It prioritizes selecting the time slot with the largest number of available participants.
[0248] Step 5:
[0249] The server sends the suggested date and time to the user's device. The user then checks the displayed date and time on their device and selects the most suitable one.
[0250] Step 6:
[0251] The server confirms the date and time selected by the user. Based on that date and time, the server automatically generates a meeting notification and sends it to all participants via email or calendar invitation.
[0252] Step 7:
[0253] The server collects attendance information for each participant and manages it so that users can check attendance status in real time. The server is also set to send a reminder to each participant the day before the meeting.
[0254] (Example 1)
[0255] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0256] Currently, many organizations need to coordinate the schedules of multiple departments and individuals when scheduling meetings. However, manual scheduling is time-consuming and inefficient. Finding the optimal meeting time is difficult, and determining a date and time when all participants can attend is often challenging. Furthermore, managing meeting notifications and attendance confirmations is often cumbersome. A system is needed to address these challenges and enable efficient meeting scheduling.
[0257] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0258] In this invention, the server includes means for receiving meeting content, purpose, and relevant department information from users; means for extracting a list of relevant individuals from the organizational components based on the relevant department information; and means for obtaining the schedule information of the extracted individuals from multiple time management tools. This makes it possible to quickly aggregate schedule information from all relevant members within the organization and automatically calculate the optimal meeting date and time. It also enables efficient management of meeting notifications and attendance confirmations.
[0259] "Users" refers to individuals or groups who operate the system and input the information necessary to set up a meeting.
[0260] A "terminal" is a general term for electronic devices that users use to access a system, input information, or receive information from a server.
[0261] A "server" is a computer device that receives and analyzes input information from users, performs necessary data processing to generate results, and transmits them to terminals.
[0262] "Department information" refers to information about specific departments or teams within an organization that are relevant when setting up a meeting.
[0263] "Organizational components" refers to the collective unit that includes departments, members, or teams belonging to a particular organization.
[0264] "Time management tools" is a general term for software or systems used to manage personal schedules and appointments.
[0265] "Schedule information" refers to a record of activity times set by individuals or members of an organization according to their individual schedules.
[0266] "Meeting date and time" refers to the specific date and time when the meeting is scheduled to take place.
[0267] "Communication technology" is a general term for the technologies and protocols used to send and receive information via email and networks.
[0268] A "recording system" is a system for storing and managing attendance information and other data collected from participants.
[0269] The meeting scheduling support system of this invention is comprised of a computing environment, utilizing a server, user terminals, and the communication infrastructure connecting them. Users access a user interface using their own terminals to input information about the meeting content, purpose, and relevant departments. A general-purpose computer, tablet, or smartphone can be used as the terminal.
[0270] 1. User input
[0271] When setting up a meeting, the user first enters the necessary information into a form on their device. For example, they might specify "Next Project Planning Meeting" and list the relevant departments as the Development Department, Sales Department, and Marketing Department. This data is then sent to the server.
[0272] 2. Server processing
[0273] The server analyzes the received departmental information and accesses the organization's database to extract a list of relevant components. In this process, the server uses database software to efficiently execute queries. For example, an SQL database could be used.
[0274] 3. Obtaining schedule information
[0275] The server retrieves each individual's schedule information based on the extracted personal list. To do this, the server uses APIs from time management tools such as Google Calendar and Microsoft Outlook to extract each individual's schedule data.
[0276] 4. Calculation of candidate dates and times
[0277] The server applies an algorithm based on all the acquired schedule information, comparing everyone's availability to calculate the optimal meeting time. For example, Wednesday from 3 to 4 p.m. might be determined to be the best time.
[0278] 5. Notification and Confirmation
[0279] The server sends the calculated optimal date and time to the user's terminal, and the user receives this information and confirms their preferred date and time. After confirmation, the server automatically generates a meeting notification based on the set date and time using communication technology and sends the notification to the participants.
[0280] 6. Attendance Management and Reminders
[0281] The server collects attendance information from participants and stores it in the recording system. It also has a function to send reminders to participants as the meeting approaches.
[0282] The above process is used to instruct the user to perform actions that will be choreographed by the generated AI model using the following prompt statements.
[0283] "Check the schedules of relevant departments for the meeting and present the optimal candidate dates and times."
[0284] "Adjust the schedule for the joint meeting of the Development and Sales departments."
[0285] According to the present invention, users can set up an effective meeting without much effort, and as a result, the time management of the whole organization is improved.
[0286] The flow of the specific process in Example 1 will be described with reference to FIG. 11.
[0287] Step 1:
[0288] The user uses the terminal to input the content, purpose, and relevant departments of the meeting. This information is sent to the server by the input system. As a specific operation, after entering "Next Project Planning Meeting, Development Department, Sales Department, Marketing Department" in the form of the user interface and then pressing the "Send" button, the data is sent to the server.
[0289] Step 2:
[0290] The server receives the input data from the user and accesses the in-house database based on the relevant department information. It executes a database query to extract the member list of each corresponding department. The input is the relevant department information, and the output is the list of relevant individuals. Specific operations include database search processing using SQL.
[0291] Step 3:
[0292] Based on the extracted list of individuals, the server obtains the schedule information of each individual from the time management tool. It makes an API call to collect schedule data from Google Calendar or Microsoft Outlook. Here, the list of individuals is the input, and the obtained schedule information is the output. The server organizes the obtained information and converts it into a comparable format.
[0293] Step 4:
[0294] The server uses the retrieved schedule information to compare available time slots for all participants. It then uses an algorithm to calculate the optimal meeting date and time. Specifically, it aggregates each member's availability to identify a date and time when everyone can attend. The input is all the schedule information, and the output is the optimal meeting date and time.
[0295] Step 5:
[0296] The server sends the calculated optimal meeting date and time to the user's terminal. The terminal receives this information and displays it in the user interface. Specifically, it presents a particular date and time, such as "Wednesday, 3pm to 4pm," and prompts the user to confirm.
[0297] Step 6:
[0298] The user reviews the suggested meeting dates and times displayed on their device and selects an appropriate date and time. The selected date and time are sent back to the server, which then generates a meeting notification based on that information. The specific process includes a confirmation step for the user to finalize their selection.
[0299] Step 7:
[0300] The server sends the final meeting notification to participants via email or calendar invitation. The attendance confirmation process is also automated, and the information returned by participants is compiled on the server. Input is the confirmed meeting date and time, and output is the notification sent to each participant and the aggregated attendance information. Specific operations include sending emails via an SMTP server and updating the database.
[0301] Step 8:
[0302] The server arranges to send reminders to participants the day before the set meeting date and time. This allows participants to confirm the schedule again immediately before the meeting. The input is the reminder setting information, and the output is the reminder notification to the participants. Specific operations include the automatic sending of scheduled notifications.
[0303] (Application Example 1)
[0304] Next, Application Example 1 will be described. In the following description, the data processing device 12 is referred to as the "server", and the smart glasses 214 are referred to as the "terminal".
[0305] In setting up an online interview, adjusting the schedules of both the customer and the person in charge involves a lot of manual input and confirmation, which is not efficient. In particular, adjusting interviews with multiple persons in charge requires time and effort and also affects customer satisfaction. Therefore, there is a need for a means to automate schedule adjustment and efficiently set up interviews.
[0306] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0307] In this invention, the server includes means for automatically acquiring the free time information of relevant persons in charge for online interview setting, means for calculating the optimal interview date and time based on the acquired free time information, and means for presenting the calculated interview date and time to the user for confirmation. This enables efficient schedule adjustment for online interviews for both the customer and the person in charge.
[0308] "Online interview" is a type of meeting format that uses digital communication technology to conduct conversations visually and aurally regardless of location.
[0309] "Person in charge" refers to an individual or a member of a team responsible for specific tasks or customer support.
[0310] "Availability information" refers to information that indicates time slots in a specific individual's or group's schedule where they have no scheduled appointments.
[0311] "Interview date and time" refers to the specific date and time on which the interview will take place.
[0312] "User" refers to an individual or legal entity that uses or operates the system or service.
[0313] A "notification" refers to a message or alert intended to inform others of specific information.
[0314] "Management" is the process of organizing, maintaining, and efficiently operating information and resources.
[0315] The system for implementing this invention consists of a server, a user terminal, and a network infrastructure to streamline the scheduling of online interviews. The system program begins with the user inputting the interview content, preferred date and time, and relevant contact person information via their terminal.
[0316] The server extracts a list of relevant personnel from the company database based on the information entered by the user. Using this list, it retrieves each person's availability information from a calendar API (e.g., Google Calendar API) to calculate the optimal meeting date and time. The resulting date and time are sent to the user's device for confirmation on the screen. Once the user selects and confirms an appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to the relevant personnel via email or calendar invitation. Furthermore, by collecting and managing participant information, the server allows users to track participation status in real time. A reminder function allows the server to send a reminder to participants the day before the meeting.
[0317] For example, if a user enters a request such as "I would like to discuss my credit card statement," the system will extract the relevant personnel, check both parties' schedules, and suggest a time slot of 2 PM the following day. Once the user confirms this suggestion, an automatic meeting notification will be sent to both the user and the relevant personnel, and a reminder will be sent the day before.
[0318] Examples of prompt statements generated using a generative AI model are as follows:
[0319] "Please describe the algorithm of an application that calculates the most appropriate meeting time based on the customer's entered preferences for online meetings and sends notifications to both the agent and the customer."
[0320] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0321] Step 1:
[0322] The user uses the interface on their device to enter the details of the online meeting, preferred date and time, and information about the relevant contact person. This data is then sent to the server, which prepares to receive it.
[0323] Step 2:
[0324] The server extracts a list of relevant personnel from the internal database based on the relevant personnel information received from the user. Specifically, it executes an SQL query using the identification information of the personnel (e.g., name, ID) to retrieve the relevant information from the database. The retrieved list is used for the following processes.
[0325] Step 3:
[0326] The server retrieves each employee's availability information via the calendar API, based on the extracted list of employees. An API request is made, and availability data for each employee is returned. The server then parses this data and stores it in a database.
[0327] Step 4:
[0328] The server calculates the optimal meeting date and time based on the acquired availability data. The algorithm compares the user's preferred date and time with the availability of the assigned staff member to find a date and time that is convenient for both parties. If there are multiple options, the server prioritizes and stores them.
[0329] Step 5:
[0330] The server sends the calculated interview date and time to the user's terminal and presents it to the user. The user checks the presented date and time on their terminal and selects an appropriate date and time. Once a selection is made, the result is returned to the server.
[0331] Step 6:
[0332] The server automatically generates meeting notifications based on the date and time selected by the user and sends them to the relevant personnel and the user. The notifications are generated in the form of email or calendar invitations. These notifications are added to the calendars of the personnel and the user using an API.
[0333] Step 7:
[0334] The server sets reminders for interviews and automatically sends notifications to all participants the day before the interview. The reminder timing is predetermined, and the reminder message is delivered using the corresponding API.
[0335] These steps enable effective scheduling of online meetings.
[0336] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0337] One embodiment of this invention is to incorporate an emotion engine that recognizes the user's emotions into a meeting scheduling support system. The system consists of a server, a user terminal, an emotion engine, and a network infrastructure. The program begins with the user inputting the meeting content, purpose, and relevant departments through the terminal.
[0338] The device has a built-in camera and microphone, and an emotion engine analyzes the user's facial expressions and voice to recognize emotions in real time. The server receives information from the emotion engine and adjusts the meeting setup process based on the user's emotions. For example, if the user is feeling stressed, the planning process is simplified and a more intuitive interface is provided.
[0339] As a concrete example, suppose a user sets up a "new product sales strategy meeting," and the emotion engine detects from the user's facial expression that they are in a hurry. In this case, the server automatically narrows down the number of possible dates and times and suggests the highest priority date and time. The server also simplifies the content of the meeting notification and adjusts the timing of sending the notification based on the user's emotion.
[0340] As part of the overall process, the server uses an emotion engine to enhance the user experience, optimizing the selection of meeting dates and times and the timing of notifications based on the user's emotional state. This enables more efficient and user-friendly meeting scheduling.
[0341] The following describes the processing flow.
[0342] Step 1:
[0343] The user uses a device to input the purpose and content of the meeting, as well as the relevant departments. The device is equipped with a camera and microphone, and an emotion engine captures the user's facial expressions and voice while they are inputting.
[0344] Step 2:
[0345] The emotion engine analyzes the user's emotions in real time from their facial expressions and voice, and evaluates their state, such as stress, concentration level, and excitement. The evaluation results are sent to the server.
[0346] Step 3:
[0347] The server receives the evaluation results and adjusts the interface operation according to the user's emotional state. For example, if it detects that the user is stressed, it will simplify instructions and prompts to reduce the burden on the user.
[0348] Step 4:
[0349] Based on user input, the server retrieves the schedules of members in the relevant department and displays a short list of suggestions to cheer them up. If the emotion engine detects stress, it reduces the number of suggested dates and times, simplifying the choices.
[0350] Step 5:
[0351] When a user selects the optimal meeting date and time on their device, the emotion engine guides the user interface (UI) to enhance their sense of security and satisfaction, and the server accepts that selection.
[0352] Step 6:
[0353] The server generates a meeting notification based on the confirmed date and time, and sends it to all participants with content adjusted by the emotion engine. The notification content and timing are tailored to the user's emotions.
[0354] Step 7:
[0355] Before a meeting, the server sets up reminder notifications and adjusts the content and timing of the reminders based on analysis from the emotion engine. This further enhances the user experience.
[0356] (Example 2)
[0357] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0358] Traditional meeting scheduling systems allow for efficient scheduling and participant notifications, but they lack the flexibility to adjust processes while considering user emotions. As a result, meeting settings cannot be optimized according to the psychological state of the users, which has not led to improved user experience or reduced stress.
[0359] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0360] In this invention, the server includes means for automatically acquiring relevant personal schedule information for meeting setup, means for recognizing the user's emotions and adjusting the meeting setup process based on those emotions, and means for optimizing the timing of sending meeting notifications according to those emotions. This enables efficient and user-friendly meeting setup that takes the user's emotions into consideration.
[0361] "Meeting scheduling" is a series of processes that involve gathering the necessary information to conduct a meeting effectively, determining the optimal date and time, and notifying participants.
[0362] "Personal scheduling information" refers to the schedule data and available time slots of participants related to the meeting.
[0363] "Recognizing emotions" is the process of identifying and analyzing a user's psychological state from their facial expressions and voice.
[0364] "Adjusting the meeting setup process" means optimizing the meeting setup procedure and interface based on user sentiment and other factors.
[0365] A "generative AI model" is an algorithm that uses machine learning to learn patterns from large amounts of data and perform specific tasks.
[0366] "Optimizing the timing of meeting notification sending" is the process of sending notifications at the optimal time, taking into account the psychological and situational suitability of the participants.
[0367] A description of the embodiment for carrying out the invention will be provided.
[0368] This system consists of multiple components designed to efficiently set up meetings. Specifically, it comprises a server, user terminals, an emotion engine for analyzing emotions, and the network infrastructure that connects them.
[0369] First, the user uses their device to input the meeting content, purpose, and relevant departments. The user's device has a built-in camera and microphone, which are used to capture the user's facial expressions and voice.
[0370] The emotion engine uses a built-in generative AI model to analyze this data in real time. The server receives the data from the emotion engine, further analyzes the user's emotional state, and adjusts the meeting scheduling process.
[0371] The server uses this analysis to suggest the optimal meeting date and time. For example, if the analysis indicates that the user is experiencing stress, the system narrows down the candidate dates and times and provides a simpler interface. The server also simplifies the content of meeting notifications and selects the optimal timing for sending them.
[0372] As a concrete example, when a user is scheduling a "new product sales strategy meeting," if the emotion engine determines that the user is pressed for time, the server will automatically reduce the number of possible dates and times and suggest primary dates and times. An example of an input prompt message used by the generative AI model might be, "Please explain how to provide the best meeting setting considering the user's emotions."
[0373] In this way, meeting settings can be configured to reflect users' emotions in real time, resulting in a user-friendly and efficient operation.
[0374] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0375] Step 1:
[0376] Users use their terminals to input meeting content, purpose, and relevant departments. This information is saved as initial data within the terminal. This allows the terminal to prepare to send the basic meeting information to the server.
[0377] Step 2:
[0378] The device's built-in camera and microphone activate, capturing the user's facial expressions and voice. The user's facial image and voice are acquired as input data. The device collects this data and sends it to the emotion engine.
[0379] Step 3:
[0380] The emotion engine receives facial and audio data transmitted from the device. It analyzes the input data using a generating AI model to quantify the user's emotional state. The output is the user's emotional state level (e.g., stress, relaxation).
[0381] Step 4:
[0382] The server receives emotional state data sent from the emotion engine. Based on this input data, it adjusts the meeting scheduling process. Specifically, it calculates the optimal meeting date and time for the input information and narrows down the candidates. As output, a list of high-priority meeting dates and times is generated.
[0383] Step 5:
[0384] The server presents the user with suggested meeting dates and times based on an optimized list. The server generates a pre-prepared prompt and presents it to the user to prompt confirmation. The output is the meeting date and time confirmed by the user.
[0385] Step 6:
[0386] The server automatically generates meeting notifications based on the confirmed meeting date and time. It adjusts the notification content according to the emotional state of participants and sends notifications to them at the optimal time. Specifically, information is sent to participants via email or app notifications.
[0387] (Application Example 2)
[0388] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0389] Traditional meeting scheduling systems fail to consider users' emotional states when scheduling meetings, making it difficult to efficiently schedule meetings when users are stressed or in a hurry. Furthermore, there has been a lack of technology to provide interfaces and processes that can adjust to changes in emotional state.
[0390] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0391] In this invention, the server includes means for analyzing the user's facial expressions and voice to recognize their emotions and adjusting the meeting scheduling process based on the results; means for optimizing candidate meeting dates and times and notification timing according to the user's emotional state; and means for presenting candidate meeting dates and times to the user and prompting them to make a selection. This enables more efficient and user-friendly meeting scheduling that is tailored to the user's emotional state.
[0392] "Meeting scheduling" is the process of determining the optimal meeting date and time based on the schedules of the relevant individuals and obtaining confirmation from the participants regarding that date and time.
[0393] "Schedule information" refers to information including personal schedules and the schedules of other stakeholders, and is used to coordinate meeting dates and times.
[0394] "Recognizing emotions" is the process of identifying a user's current mental state and emotions by analyzing their facial expressions and voice.
[0395] "Adjusting the process" means modifying the system's behavior and interface according to the user's emotions and circumstances to provide a more optimal user experience.
[0396] "Automatically generating and sending notifications" means creating a notification message based on meeting settings information and automatically communicating it to relevant parties.
[0397] "Collecting and managing attendance information" means understanding the attendance status of participants and preparing for the meeting based on that information.
[0398] "Optimizing candidate dates and notification timing" means adjusting the selection of candidate meeting dates and times, as well as the timing of notifications, to make them optimal based on the user's emotional state and other conditions.
[0399] The system for implementing this invention consists of a server, a user terminal, an emotion engine, and a network infrastructure. The user terminal has a built-in camera and microphone, and the emotion engine can analyze the user's facial expressions and voice to understand their emotional state in real time.
[0400] The server receives user sentiment information and adjusts the meeting scheduling process accordingly. Specifically, it narrows down potential meeting dates and times based on the user's sentiment and sends meeting details at an optimized notification timing. This enables more efficient meeting scheduling tailored to the user's usage patterns.
[0401] The device uses a generative AI model to generate prompts based on the user's emotional state, providing user-friendly instructions within the interface. This process utilizes facial recognition software such as OpenFace and speech analysis using Azure Cognitive Services.
[0402] For example, if a user is urgently trying to schedule a sales strategy meeting for a new product, the server, through its emotion engine, recognizes the user's urgency, automatically organizes potential dates and times, and narrows down and presents the most suitable option. Furthermore, when presenting multiple potential dates and times, it prioritizes displaying the option that causes the user the least stress, thereby improving usability.
[0403] An example of a prompt would be: "Use an emotion recognition system to provide ideas on how a robot could adjust its actions to create the right atmosphere when a user wants to relax."
[0404] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0405] Step 1:
[0406] The user's device uses its camera and microphone to capture the user's facial expressions and audio data in real time. During this process, camera images and audio are collected as input, and this data is sent to the emotion engine.
[0407] Step 2:
[0408] The emotion engine analyzes the received facial expression information and audio data to recognize the user's emotions. Here, facial recognition software such as OpenFace and audio analysis tools such as Azure Cognitive Services are used to output the emotional state as numerical data.
[0409] Step 3:
[0410] The server receives emotional state data from the emotion engine and incorporates it into the meeting scheduling process. The input is quantified emotional data, which is used to adjust potential meeting dates and times and notification timings, and the results are then sent to the next process.
[0411] Step 4:
[0412] The server optimizes candidate dates and times, presenting the user with more appropriate meeting date and time options that align with their emotional state. The input here is adjusted candidate meeting date and time data, and the output is optimized to reduce user stress.
[0413] Step 5:
[0414] The user selects a meeting date and time from the presented options and sends the selection to the server. The input is the user's selection, and preparations to notify participants continue based on that result.
[0415] Step 6:
[0416] The server automatically generates a meeting notification message based on the final meeting date and time, and sends it to all participants via the network infrastructure. Here, the selected date and time are the input, and the generated notification message is output.
[0417] Step 7:
[0418] Using a generative AI model, the system proposes emotion-based prompts to the user, providing user-friendly instructions on the interface. User emotion data and meeting information are used as input, and the generated prompts are output.
[0419] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0420] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0421] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0422] [Third Embodiment]
[0423] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0424] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0425] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0426] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0427] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0428] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0429] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0430] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0431] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0432] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0433] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0434] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0435] In an embodiment of this invention, the meeting scheduling support system consists of a server, a user terminal, and a network infrastructure. The system program begins with the user inputting the meeting content, purpose, and relevant departments via the terminal.
[0436] The server extracts a list of relevant members from the company database based on the relevant department information entered by the user. Using this list, the server retrieves each member's schedule information from the calendar system and calculates the optimal meeting date and time to find the availability of all participants.
[0437] As a concrete example, suppose a user is trying to schedule a "Next Project Planning Meeting," and the Development, Sales, and Marketing departments are selected as the relevant departments. Based on this, the server retrieves the schedules of the members of each department and identifies a time slot between 3 PM and 4 PM on Wednesday as a possible date and time. The proposed date and time are sent to the user's terminal and confirmed on the screen.
[0438] Once the user selects and confirms the appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to participants via email or calendar invitation. Furthermore, the server compiles attendance information from participants, allowing users to see attendance status in real time. A reminder function is also enabled, and the server is set to send a reminder to participants the day before the meeting.
[0439] In this way, using this system reduces the hassle of coordinating schedules across multiple departments and allows for efficient meeting scheduling and participant notification.
[0440] The following describes the processing flow.
[0441] Step 1:
[0442] The user enters the meeting's purpose, content, and relevant departments via their device. This determines which department members the system will target.
[0443] Step 2:
[0444] The terminal sends the entered information to the server. Based on the received information, the server retrieves members of the relevant department from the company's internal database.
[0445] Step 3:
[0446] The server uses a list of relevant members to retrieve each member's schedule data from the company's internal calendar system. This schedule data includes each member's appointments.
[0447] Step 4:
[0448] The server analyzes the acquired schedule data and calculates the optimal meeting date and time, taking into account the availability of all participants. It prioritizes selecting the time slot with the largest number of available participants.
[0449] Step 5:
[0450] The server sends the suggested date and time to the user's device. The user then checks the displayed date and time on their device and selects the most suitable one.
[0451] Step 6:
[0452] The server confirms the date and time selected by the user. Based on that date and time, the server automatically generates a meeting notification and sends it to all participants via email or calendar invitation.
[0453] Step 7:
[0454] The server collects attendance information for each participant and manages it so that users can check attendance status in real time. The server is also set to send a reminder to each participant the day before the meeting.
[0455] (Example 1)
[0456] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0457] Currently, many organizations need to coordinate the schedules of multiple departments and individuals when scheduling meetings. However, manual scheduling is time-consuming and inefficient. Finding the optimal meeting time is difficult, and determining a date and time when all participants can attend is often challenging. Furthermore, managing meeting notifications and attendance confirmations is often cumbersome. A system is needed to address these challenges and enable efficient meeting scheduling.
[0458] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0459] In this invention, the server includes means for receiving meeting content, purpose, and relevant department information from users; means for extracting a list of relevant individuals from the organizational components based on the relevant department information; and means for obtaining the schedule information of the extracted individuals from multiple time management tools. This makes it possible to quickly aggregate schedule information from all relevant members within the organization and automatically calculate the optimal meeting date and time. It also enables efficient management of meeting notifications and attendance confirmations.
[0460] "Users" refers to individuals or groups who operate the system and input the information necessary to set up a meeting.
[0461] A "terminal" is a general term for electronic devices that users use to access a system, input information, or receive information from a server.
[0462] A "server" is a computer device that receives and analyzes input information from users, performs necessary data processing to generate results, and transmits them to terminals.
[0463] "Department information" refers to information about specific departments or teams within an organization that are relevant when setting up a meeting.
[0464] "Organizational components" refers to the collective unit that includes departments, members, or teams belonging to a particular organization.
[0465] "Time management tools" is a general term for software or systems used to manage personal schedules and appointments.
[0466] "Schedule information" refers to a record of activity times set by individuals or members of an organization according to their individual schedules.
[0467] "Meeting date and time" refers to the specific date and time when the meeting is scheduled to take place.
[0468] "Communication technology" is a general term for the technologies and protocols used to send and receive information via email and networks.
[0469] A "recording system" is a system for storing and managing attendance information and other data collected from participants.
[0470] The meeting scheduling support system of this invention is comprised of a computing environment, utilizing a server, user terminals, and the communication infrastructure connecting them. Users access a user interface using their own terminals to input information about the meeting content, purpose, and relevant departments. A general-purpose computer, tablet, or smartphone can be used as the terminal.
[0471] 1. User input
[0472] When setting up a meeting, the user first enters the necessary information into a form on their device. For example, they might specify "Next Project Planning Meeting" and list the relevant departments as the Development Department, Sales Department, and Marketing Department. This data is then sent to the server.
[0473] 2. Server processing
[0474] The server analyzes the received departmental information and accesses the organization's database to extract a list of relevant components. In this process, the server uses database software to efficiently execute queries. For example, an SQL database could be used.
[0475] 3. Obtaining schedule information
[0476] The server retrieves each individual's schedule information based on the extracted personal list. To do this, the server uses APIs from time management tools such as Google Calendar and Microsoft Outlook to extract each individual's schedule data.
[0477] 4. Calculation of candidate dates and times
[0478] The server applies an algorithm based on all the acquired schedule information, comparing everyone's availability to calculate the optimal meeting time. For example, Wednesday from 3 to 4 p.m. might be determined to be the best time.
[0479] 5. Notification and Confirmation
[0480] The server sends the calculated optimal date and time to the user's terminal, and the user receives this information and confirms their preferred date and time. After confirmation, the server automatically generates a meeting notification based on the set date and time using communication technology and sends the notification to the participants.
[0481] 6. Attendance Management and Reminders
[0482] The server collects attendance information from participants and stores it in the recording system. It also has a function to send reminders to participants as the meeting approaches.
[0483] The above process is used to instruct the user to perform actions that will be choreographed by the generated AI model using the following prompt statements.
[0484] "Please check the schedules of the relevant departments for the meeting and suggest the most suitable dates and times."
[0485] "Please adjust the schedule for a joint meeting between the development and sales departments."
[0486] This invention allows users to effectively schedule meetings without much effort, resulting in improved time management throughout the organization.
[0487] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0488] Step 1:
[0489] The user uses a terminal to input the meeting content, purpose, and relevant departments. This information is sent to the server by the input system. Specifically, after entering "Next Project Planning Meeting, Development Department, Sales Department, Marketing Department" into the user interface form and pressing the "Submit" button, the data is sent to the server.
[0490] Step 2:
[0491] The server receives input data from the user and accesses the company's database based on the relevant department information. It executes database queries to extract member lists for each corresponding department. The input is the relevant department information, and the output is a list of the relevant individuals. The specific operation involves database search processing using SQL.
[0492] Step 3:
[0493] The server retrieves each individual's schedule information from their time management tool based on the extracted list of individuals. It makes API calls to collect schedule data from Google Calendar and Microsoft Outlook. Here, the list of individuals is the input, and the retrieved schedule information is the output. The server organizes the retrieved information and converts it into a comparable format.
[0494] Step 4:
[0495] The server uses the retrieved schedule information to compare available time slots for all participants. It then uses an algorithm to calculate the optimal meeting date and time. Specifically, it aggregates each member's availability to identify a date and time when everyone can attend. The input is all the schedule information, and the output is the optimal meeting date and time.
[0496] Step 5:
[0497] The server sends the calculated optimal meeting date and time to the user's terminal. The terminal receives this information and displays it in the user interface. Specifically, it presents a particular date and time, such as "Wednesday, 3pm to 4pm," and prompts the user to confirm.
[0498] Step 6:
[0499] The user reviews the suggested meeting dates and times displayed on their device and selects an appropriate date and time. The selected date and time are sent back to the server, which then generates a meeting notification based on that information. The specific process includes a confirmation step for the user to finalize their selection.
[0500] Step 7:
[0501] The server sends the final meeting notification to participants via email or calendar invitation. The attendance confirmation process is also automated, and the information returned by participants is compiled on the server. Input is the confirmed meeting date and time, and output is the notification sent to each participant and the aggregated attendance information. Specific operations include sending emails via an SMTP server and updating the database.
[0502] Step 8:
[0503] The server arranges to send reminders to participants the day before the scheduled meeting. This allows participants to review their schedule again just before the meeting. The reminder settings are the input, and the output is the reminder notification sent to participants. Specific actions include the automatic sending of scheduled notifications.
[0504] (Application Example 1)
[0505] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0506] Setting up online meetings involves a lot of manual input and verification, which is inefficient. In particular, coordinating meetings with multiple staff members is time-consuming and cumbersome, impacting customer satisfaction. Therefore, there is a need for a way to automate scheduling and efficiently set up meetings.
[0507] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0508] In this invention, the server includes means for automatically acquiring the availability information of the relevant personnel for setting up online meetings, means for calculating the optimal meeting date and time based on the acquired availability information, and means for presenting the calculated meeting date and time to the user for confirmation. This enables efficient scheduling of online meetings for both the customer and the personnel.
[0509] An "online meeting" is a type of conference format that uses digital communication technology to allow for dialogue through sight and sound, regardless of location.
[0510] "Responsible person" refers to an individual or team member who is responsible for performing a specific task or handling customer inquiries.
[0511] "Availability information" refers to information that indicates time slots in a specific individual's or group's schedule where they have no scheduled appointments.
[0512] "Interview date and time" refers to the specific date and time on which the interview will take place.
[0513] "User" refers to an individual or legal entity that uses or operates the system or service.
[0514] A "notification" refers to a message or alert intended to inform others of specific information.
[0515] "Management" is the process of organizing, maintaining, and efficiently operating information and resources.
[0516] The system for implementing this invention consists of a server, a user terminal, and a network infrastructure to streamline the scheduling of online interviews. The system program begins with the user inputting the interview content, preferred date and time, and relevant contact person information via their terminal.
[0517] The server extracts a list of relevant personnel from the company database based on the information entered by the user. Using this list, it retrieves each person's availability information from a calendar API (e.g., Google Calendar API) to calculate the optimal meeting date and time. The resulting date and time are sent to the user's device for confirmation on the screen. Once the user selects and confirms an appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to the relevant personnel via email or calendar invitation. Furthermore, by collecting and managing participant information, the server allows users to track participation status in real time. A reminder function allows the server to send a reminder to participants the day before the meeting.
[0518] For example, if a user enters a request such as "I would like to discuss my credit card statement," the system will extract the relevant personnel, check both parties' schedules, and suggest a time slot of 2 PM the following day. Once the user confirms this suggestion, an automatic meeting notification will be sent to both the user and the relevant personnel, and a reminder will be sent the day before.
[0519] Examples of prompt statements generated using a generative AI model are as follows:
[0520] "Please describe the algorithm of an application that calculates the most appropriate meeting time based on the customer's entered preferences for online meetings and sends notifications to both the agent and the customer."
[0521] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0522] Step 1:
[0523] The user uses the interface on their device to enter the details of the online meeting, preferred date and time, and information about the relevant contact person. This data is then sent to the server, which prepares to receive it.
[0524] Step 2:
[0525] The server extracts a list of relevant personnel from the internal database based on the relevant personnel information received from the user. Specifically, it executes an SQL query using the identification information of the personnel (e.g., name, ID) to retrieve the relevant information from the database. The retrieved list is used for the following processes.
[0526] Step 3:
[0527] The server retrieves each employee's availability information via the calendar API, based on the extracted list of employees. An API request is made, and availability data for each employee is returned. The server then parses this data and stores it in a database.
[0528] Step 4:
[0529] The server calculates the optimal meeting date and time based on the acquired availability data. The algorithm compares the user's preferred date and time with the availability of the assigned staff member to find a date and time that is convenient for both parties. If there are multiple options, the server prioritizes and stores them.
[0530] Step 5:
[0531] The server sends the calculated interview date and time to the user's terminal and presents it to the user. The user checks the presented date and time on their terminal and selects an appropriate date and time. Once a selection is made, the result is returned to the server.
[0532] Step 6:
[0533] The server automatically generates meeting notifications based on the date and time selected by the user and sends them to the relevant personnel and the user. The notifications are generated in the form of email or calendar invitations. These notifications are added to the calendars of the personnel and the user using an API.
[0534] Step 7:
[0535] The server sets reminders for interviews and automatically sends notifications to all participants the day before the interview. The reminder timing is predetermined, and the reminder message is delivered using the corresponding API.
[0536] These steps enable effective scheduling of online meetings.
[0537] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0538] One embodiment of this invention is to incorporate an emotion engine that recognizes the user's emotions into a meeting scheduling support system. The system consists of a server, a user terminal, an emotion engine, and a network infrastructure. The program begins with the user inputting the meeting content, purpose, and relevant departments through the terminal.
[0539] The device has a built-in camera and microphone, and an emotion engine analyzes the user's facial expressions and voice to recognize emotions in real time. The server receives information from the emotion engine and adjusts the meeting setup process based on the user's emotions. For example, if the user is feeling stressed, the planning process is simplified and a more intuitive interface is provided.
[0540] As a concrete example, suppose a user sets up a "new product sales strategy meeting," and the emotion engine detects from the user's facial expression that they are in a hurry. In this case, the server automatically narrows down the number of possible dates and times and suggests the highest priority date and time. The server also simplifies the content of the meeting notification and adjusts the timing of sending the notification based on the user's emotion.
[0541] As part of the overall process, the server uses an emotion engine to enhance the user experience, optimizing the selection of meeting dates and times and the timing of notifications based on the user's emotional state. This enables more efficient and user-friendly meeting scheduling.
[0542] The following describes the processing flow.
[0543] Step 1:
[0544] The user uses a device to input the purpose and content of the meeting, as well as the relevant departments. The device is equipped with a camera and microphone, and an emotion engine captures the user's facial expressions and voice while they are inputting.
[0545] Step 2:
[0546] The emotion engine analyzes the user's emotions in real time from their facial expressions and voice, and evaluates their state, such as stress, concentration level, and excitement. The evaluation results are sent to the server.
[0547] Step 3:
[0548] The server receives the evaluation results and adjusts the interface operation according to the user's emotional state. For example, if it detects that the user is stressed, it will simplify instructions and prompts to reduce the burden on the user.
[0549] Step 4:
[0550] Based on user input, the server retrieves the schedules of members in the relevant department and displays a short list of suggestions to cheer them up. If the emotion engine detects stress, it reduces the number of suggested dates and times, simplifying the choices.
[0551] Step 5:
[0552] When a user selects the optimal meeting date and time on their device, the emotion engine guides the user interface (UI) to enhance their sense of security and satisfaction, and the server accepts that selection.
[0553] Step 6:
[0554] The server generates a meeting notification based on the confirmed date and time, and sends it to all participants with content adjusted by the emotion engine. The notification content and timing are tailored to the user's emotions.
[0555] Step 7:
[0556] Before a meeting, the server sets up reminder notifications and adjusts the content and timing of the reminders based on analysis from the emotion engine. This further enhances the user experience.
[0557] (Example 2)
[0558] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0559] Traditional meeting scheduling systems allow for efficient scheduling and participant notifications, but they lack the flexibility to adjust processes while considering user emotions. As a result, meeting settings cannot be optimized according to the psychological state of the users, which has not led to improved user experience or reduced stress.
[0560] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0561] In this invention, the server includes means for automatically acquiring relevant personal schedule information for meeting setup, means for recognizing the user's emotions and adjusting the meeting setup process based on those emotions, and means for optimizing the timing of sending meeting notifications according to those emotions. This enables efficient and user-friendly meeting setup that takes the user's emotions into consideration.
[0562] "Meeting scheduling" is a series of processes that involve gathering the necessary information to conduct a meeting effectively, determining the optimal date and time, and notifying participants.
[0563] "Personal scheduling information" refers to the schedule data and available time slots of participants related to the meeting.
[0564] "Recognizing emotions" is the process of identifying and analyzing a user's psychological state from their facial expressions and voice.
[0565] "Adjusting the meeting setup process" means optimizing the meeting setup procedure and interface based on user sentiment and other factors.
[0566] A "generative AI model" is an algorithm that uses machine learning to learn patterns from large amounts of data and perform specific tasks.
[0567] "Optimizing the timing of meeting notification sending" is the process of sending notifications at the optimal time, taking into account the psychological and situational suitability of the participants.
[0568] A description of the embodiment for carrying out the invention will be provided.
[0569] This system consists of multiple components designed to efficiently set up meetings. Specifically, it comprises a server, user terminals, an emotion engine for analyzing emotions, and the network infrastructure that connects them.
[0570] First, the user uses their device to input the meeting content, purpose, and relevant departments. The user's device has a built-in camera and microphone, which are used to capture the user's facial expressions and voice.
[0571] The emotion engine uses a built-in generative AI model to analyze this data in real time. The server receives the data from the emotion engine, further analyzes the user's emotional state, and adjusts the meeting scheduling process.
[0572] The server uses this analysis to suggest the optimal meeting date and time. For example, if the analysis indicates that the user is experiencing stress, the system narrows down the candidate dates and times and provides a simpler interface. The server also simplifies the content of meeting notifications and selects the optimal timing for sending them.
[0573] As a concrete example, when a user is scheduling a "new product sales strategy meeting," if the emotion engine determines that the user is pressed for time, the server will automatically reduce the number of possible dates and times and suggest primary dates and times. An example of an input prompt message used by the generative AI model might be, "Please explain how to provide the best meeting setting considering the user's emotions."
[0574] In this way, meeting settings can be configured to reflect users' emotions in real time, resulting in a user-friendly and efficient operation.
[0575] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0576] Step 1:
[0577] Users use their terminals to input meeting content, purpose, and relevant departments. This information is saved as initial data within the terminal. This allows the terminal to prepare to send the basic meeting information to the server.
[0578] Step 2:
[0579] The device's built-in camera and microphone activate, capturing the user's facial expressions and voice. The user's facial image and voice are acquired as input data. The device collects this data and sends it to the emotion engine.
[0580] Step 3:
[0581] The emotion engine receives facial and audio data transmitted from the device. It analyzes the input data using a generating AI model to quantify the user's emotional state. The output is the user's emotional state level (e.g., stress, relaxation).
[0582] Step 4:
[0583] The server receives emotional state data sent from the emotion engine. Based on this input data, it adjusts the meeting scheduling process. Specifically, it calculates the optimal meeting date and time for the input information and narrows down the candidates. As output, a list of high-priority meeting dates and times is generated.
[0584] Step 5:
[0585] The server presents the user with suggested meeting dates and times based on an optimized list. The server generates a pre-prepared prompt and presents it to the user to prompt confirmation. The output is the meeting date and time confirmed by the user.
[0586] Step 6:
[0587] The server automatically generates meeting notifications based on the confirmed meeting date and time. It adjusts the notification content according to the emotional state of participants and sends notifications to them at the optimal time. Specifically, information is sent to participants via email or app notifications.
[0588] (Application Example 2)
[0589] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0590] Traditional meeting scheduling systems fail to consider users' emotional states when scheduling meetings, making it difficult to efficiently schedule meetings when users are stressed or in a hurry. Furthermore, there has been a lack of technology to provide interfaces and processes that can adjust to changes in emotional state.
[0591] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0592] In this invention, the server includes means for analyzing the user's facial expressions and voice to recognize their emotions and adjusting the meeting scheduling process based on the results; means for optimizing candidate meeting dates and times and notification timing according to the user's emotional state; and means for presenting candidate meeting dates and times to the user and prompting them to make a selection. This enables more efficient and user-friendly meeting scheduling that is tailored to the user's emotional state.
[0593] "Meeting scheduling" is the process of determining the optimal meeting date and time based on the schedules of the relevant individuals and obtaining confirmation from the participants regarding that date and time.
[0594] "Schedule information" refers to information including personal schedules and the schedules of other stakeholders, and is used to coordinate meeting dates and times.
[0595] "Recognizing emotions" is the process of identifying a user's current mental state and emotions by analyzing their facial expressions and voice.
[0596] "Adjusting the process" means modifying the system's behavior and interface according to the user's emotions and circumstances to provide a more optimal user experience.
[0597] "Automatically generating and sending notifications" means creating a notification message based on meeting settings information and automatically communicating it to relevant parties.
[0598] "Collecting and managing attendance information" means understanding the attendance status of participants and preparing for the meeting based on that information.
[0599] "Optimizing candidate dates and notification timing" means adjusting the selection of candidate meeting dates and times, as well as the timing of notifications, to make them optimal based on the user's emotional state and other conditions.
[0600] The system for implementing this invention consists of a server, a user terminal, an emotion engine, and a network infrastructure. The user terminal has a built-in camera and microphone, and the emotion engine can analyze the user's facial expressions and voice to understand their emotional state in real time.
[0601] The server receives user sentiment information and adjusts the meeting scheduling process accordingly. Specifically, it narrows down potential meeting dates and times based on the user's sentiment and sends meeting details at an optimized notification timing. This enables more efficient meeting scheduling tailored to the user's usage patterns.
[0602] The device uses a generative AI model to generate prompts based on the user's emotional state, providing user-friendly instructions within the interface. This process utilizes facial recognition software such as OpenFace and speech analysis using Azure Cognitive Services.
[0603] For example, if a user is urgently trying to schedule a sales strategy meeting for a new product, the server, through its emotion engine, recognizes the user's urgency, automatically organizes potential dates and times, and narrows down and presents the most suitable option. Furthermore, when presenting multiple potential dates and times, it prioritizes displaying the option that causes the user the least stress, thereby improving usability.
[0604] An example of a prompt would be: "Use an emotion recognition system to provide ideas on how a robot could adjust its actions to create the right atmosphere when a user wants to relax."
[0605] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0606] Step 1:
[0607] The user's device uses its camera and microphone to capture the user's facial expressions and audio data in real time. During this process, camera images and audio are collected as input, and this data is sent to the emotion engine.
[0608] Step 2:
[0609] The emotion engine analyzes the received facial expression information and audio data to recognize the user's emotions. Here, facial recognition software such as OpenFace and audio analysis tools such as Azure Cognitive Services are used to output the emotional state as numerical data.
[0610] Step 3:
[0611] The server receives emotional state data from the emotion engine and incorporates it into the meeting scheduling process. The input is quantified emotional data, which is used to adjust potential meeting dates and times and notification timings, and the results are then sent to the next process.
[0612] Step 4:
[0613] The server optimizes candidate dates and times, presenting the user with more appropriate meeting date and time options that align with their emotional state. The input here is adjusted candidate meeting date and time data, and the output is optimized to reduce user stress.
[0614] Step 5:
[0615] The user selects a meeting date and time from the presented options and sends the selection to the server. The input is the user's selection, and preparations to notify participants continue based on that result.
[0616] Step 6:
[0617] The server automatically generates a meeting notification message based on the final meeting date and time, and sends it to all participants via the network infrastructure. Here, the selected date and time are the input, and the generated notification message is output.
[0618] Step 7:
[0619] Using a generative AI model, the system proposes emotion-based prompts to the user, providing user-friendly instructions on the interface. User emotion data and meeting information are used as input, and the generated prompts are output.
[0620] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0621] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0622] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[0623] [Fourth Embodiment]
[0624] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[0625] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[0626] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0627] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[0628] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0629] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0630] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0631] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[0632] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0633] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0634] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0635] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0636] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0637] In an embodiment of this invention, the meeting scheduling support system consists of a server, a user terminal, and a network infrastructure. The system program begins with the user inputting the meeting content, purpose, and relevant departments via the terminal.
[0638] The server extracts a list of relevant members from the company database based on the relevant department information entered by the user. Using this list, the server retrieves each member's schedule information from the calendar system and calculates the optimal meeting date and time to find the availability of all participants.
[0639] As a concrete example, suppose a user is trying to schedule a "Next Project Planning Meeting," and the Development, Sales, and Marketing departments are selected as the relevant departments. Based on this, the server retrieves the schedules of the members of each department and identifies a time slot between 3 PM and 4 PM on Wednesday as a possible date and time. The proposed date and time are sent to the user's terminal and confirmed on the screen.
[0640] Once the user selects and confirms the appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to participants via email or calendar invitation. Furthermore, the server compiles attendance information from participants, allowing users to see attendance status in real time. A reminder function is also enabled, and the server is set to send a reminder to participants the day before the meeting.
[0641] In this way, using this system reduces the hassle of coordinating schedules across multiple departments and allows for efficient meeting scheduling and participant notification.
[0642] The following describes the processing flow.
[0643] Step 1:
[0644] The user enters the meeting's purpose, content, and relevant departments via their device. This determines which department members the system will target.
[0645] Step 2:
[0646] The terminal sends the entered information to the server. Based on the received information, the server retrieves members of the relevant department from the company's internal database.
[0647] Step 3:
[0648] The server uses a list of relevant members to retrieve each member's schedule data from the company's internal calendar system. This schedule data includes each member's appointments.
[0649] Step 4:
[0650] The server analyzes the acquired schedule data and calculates the optimal meeting date and time, taking into account the availability of all participants. It prioritizes selecting the time slot with the largest number of available participants.
[0651] Step 5:
[0652] The server sends the suggested date and time to the user's device. The user then checks the displayed date and time on their device and selects the most suitable one.
[0653] Step 6:
[0654] The server confirms the date and time selected by the user. Based on that date and time, the server automatically generates a meeting notification and sends it to all participants via email or calendar invitation.
[0655] Step 7:
[0656] The server collects attendance information for each participant and manages it so that users can check attendance status in real time. The server is also set to send a reminder to each participant the day before the meeting.
[0657] (Example 1)
[0658] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0659] Currently, many organizations need to coordinate the schedules of multiple departments and individuals when scheduling meetings. However, manual scheduling is time-consuming and inefficient. Finding the optimal meeting time is difficult, and determining a date and time when all participants can attend is often challenging. Furthermore, managing meeting notifications and attendance confirmations is often cumbersome. A system is needed to address these challenges and enable efficient meeting scheduling.
[0660] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0661] In this invention, the server includes means for receiving meeting content, purpose, and relevant department information from users; means for extracting a list of relevant individuals from the organizational components based on the relevant department information; and means for obtaining the schedule information of the extracted individuals from multiple time management tools. This makes it possible to quickly aggregate schedule information from all relevant members within the organization and automatically calculate the optimal meeting date and time. It also enables efficient management of meeting notifications and attendance confirmations.
[0662] "Users" refers to individuals or groups who operate the system and input the information necessary to set up a meeting.
[0663] A "terminal" is a general term for electronic devices that users use to access a system, input information, or receive information from a server.
[0664] A "server" is a computer device that receives and analyzes input information from users, performs necessary data processing to generate results, and transmits them to terminals.
[0665] "Department information" refers to information about specific departments or teams within an organization that are relevant when setting up a meeting.
[0666] "Organizational components" refers to the collective unit that includes departments, members, or teams belonging to a particular organization.
[0667] "Time management tools" is a general term for software or systems used to manage personal schedules and appointments.
[0668] "Schedule information" refers to a record of activity times set by individuals or members of an organization according to their individual schedules.
[0669] "Meeting date and time" refers to the specific date and time when the meeting is scheduled to take place.
[0670] "Communication technology" is a general term for the technologies and protocols used to send and receive information via email and networks.
[0671] A "recording system" is a system for storing and managing attendance information and other data collected from participants.
[0672] The meeting scheduling support system of this invention is comprised of a computing environment, utilizing a server, user terminals, and the communication infrastructure connecting them. Users access a user interface using their own terminals to input information about the meeting content, purpose, and relevant departments. A general-purpose computer, tablet, or smartphone can be used as the terminal.
[0673] 1. User input
[0674] When setting up a meeting, the user first enters the necessary information into a form on their device. For example, they might specify "Next Project Planning Meeting" and list the relevant departments as the Development Department, Sales Department, and Marketing Department. This data is then sent to the server.
[0675] 2. Server processing
[0676] The server analyzes the received departmental information and accesses the organization's database to extract a list of relevant components. In this process, the server uses database software to efficiently execute queries. For example, an SQL database could be used.
[0677] 3. Obtaining schedule information
[0678] The server retrieves each individual's schedule information based on the extracted personal list. To do this, the server uses APIs from time management tools such as Google Calendar and Microsoft Outlook to extract each individual's schedule data.
[0679] 4. Calculation of candidate dates and times
[0680] The server applies an algorithm based on all the acquired schedule information, comparing everyone's availability to calculate the optimal meeting time. For example, Wednesday from 3 to 4 p.m. might be determined to be the best time.
[0681] 5. Notification and Confirmation
[0682] The server sends the calculated optimal date and time to the user's terminal, and the user receives this information and confirms their preferred date and time. After confirmation, the server automatically generates a meeting notification based on the set date and time using communication technology and sends the notification to the participants.
[0683] 6. Attendance Management and Reminders
[0684] The server collects attendance information from participants and stores it in the recording system. It also has a function to send reminders to participants as the meeting approaches.
[0685] The above process is used to instruct the user to perform actions that will be choreographed by the generated AI model using the following prompt statements.
[0686] "Please check the schedules of the relevant departments for the meeting and suggest the most suitable dates and times."
[0687] "Please adjust the schedule for a joint meeting between the development and sales departments."
[0688] This invention allows users to effectively schedule meetings without much effort, resulting in improved time management throughout the organization.
[0689] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0690] Step 1:
[0691] The user uses a terminal to input the meeting content, purpose, and relevant departments. This information is sent to the server by the input system. Specifically, after entering "Next Project Planning Meeting, Development Department, Sales Department, Marketing Department" into the user interface form and pressing the "Submit" button, the data is sent to the server.
[0692] Step 2:
[0693] The server receives input data from the user and accesses the company's database based on the relevant department information. It executes database queries to extract member lists for each corresponding department. The input is the relevant department information, and the output is a list of the relevant individuals. The specific operation involves database search processing using SQL.
[0694] Step 3:
[0695] The server retrieves each individual's schedule information from their time management tool based on the extracted list of individuals. It makes API calls to collect schedule data from Google Calendar and Microsoft Outlook. Here, the list of individuals is the input, and the retrieved schedule information is the output. The server organizes the retrieved information and converts it into a comparable format.
[0696] Step 4:
[0697] The server uses the retrieved schedule information to compare available time slots for all participants. It then uses an algorithm to calculate the optimal meeting date and time. Specifically, it aggregates each member's availability to identify a date and time when everyone can attend. The input is all the schedule information, and the output is the optimal meeting date and time.
[0698] Step 5:
[0699] The server sends the calculated optimal meeting date and time to the user's terminal. The terminal receives this information and displays it in the user interface. Specifically, it presents a particular date and time, such as "Wednesday, 3pm to 4pm," and prompts the user to confirm.
[0700] Step 6:
[0701] The user reviews the suggested meeting dates and times displayed on their device and selects an appropriate date and time. The selected date and time are sent back to the server, which then generates a meeting notification based on that information. The specific process includes a confirmation step for the user to finalize their selection.
[0702] Step 7:
[0703] The server sends the final meeting notification to participants via email or calendar invitation. The attendance confirmation process is also automated, and the information returned by participants is compiled on the server. Input is the confirmed meeting date and time, and output is the notification sent to each participant and the aggregated attendance information. Specific operations include sending emails via an SMTP server and updating the database.
[0704] Step 8:
[0705] The server arranges to send reminders to participants the day before the scheduled meeting. This allows participants to review their schedule again just before the meeting. The reminder settings are the input, and the output is the reminder notification sent to participants. Specific actions include the automatic sending of scheduled notifications.
[0706] (Application Example 1)
[0707] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0708] Setting up online meetings involves a lot of manual input and verification, which is inefficient. In particular, coordinating meetings with multiple staff members is time-consuming and cumbersome, impacting customer satisfaction. Therefore, there is a need for a way to automate scheduling and efficiently set up meetings.
[0709] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0710] In this invention, the server includes means for automatically acquiring the availability information of the relevant personnel for setting up online meetings, means for calculating the optimal meeting date and time based on the acquired availability information, and means for presenting the calculated meeting date and time to the user for confirmation. This enables efficient scheduling of online meetings for both the customer and the personnel.
[0711] An "online meeting" is a type of conference format that uses digital communication technology to allow for dialogue through sight and sound, regardless of location.
[0712] "Responsible person" refers to an individual or team member who is responsible for performing a specific task or handling customer inquiries.
[0713] "Availability information" refers to information that indicates time slots in a specific individual's or group's schedule where they have no scheduled appointments.
[0714] "Interview date and time" refers to the specific date and time on which the interview will take place.
[0715] "User" refers to an individual or legal entity that uses or operates the system or service.
[0716] A "notification" refers to a message or alert intended to inform others of specific information.
[0717] "Management" is the process of organizing, maintaining, and efficiently operating information and resources.
[0718] The system for implementing this invention consists of a server, a user terminal, and a network infrastructure to streamline the scheduling of online interviews. The system program begins with the user inputting the interview content, preferred date and time, and relevant contact person information via their terminal.
[0719] The server extracts a list of relevant personnel from the company database based on the information entered by the user. Using this list, it retrieves each person's availability information from a calendar API (e.g., Google Calendar API) to calculate the optimal meeting date and time. The resulting date and time are sent to the user's device for confirmation on the screen. Once the user selects and confirms an appropriate date and time, the server automatically generates a meeting notification based on that date and time and sends it to the relevant personnel via email or calendar invitation. Furthermore, by collecting and managing participant information, the server allows users to track participation status in real time. A reminder function allows the server to send a reminder to participants the day before the meeting.
[0720] For example, if a user enters a request such as "I would like to discuss my credit card statement," the system will extract the relevant personnel, check both parties' schedules, and suggest a time slot of 2 PM the following day. Once the user confirms this suggestion, an automatic meeting notification will be sent to both the user and the relevant personnel, and a reminder will be sent the day before.
[0721] Examples of prompt statements generated using a generative AI model are as follows:
[0722] "Please describe the algorithm of an application that calculates the most appropriate meeting time based on the customer's entered preferences for online meetings and sends notifications to both the agent and the customer."
[0723] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0724] Step 1:
[0725] The user uses the interface on their device to enter the details of the online meeting, preferred date and time, and information about the relevant contact person. This data is then sent to the server, which prepares to receive it.
[0726] Step 2:
[0727] The server extracts a list of relevant personnel from the internal database based on the relevant personnel information received from the user. Specifically, it executes an SQL query using the identification information of the personnel (e.g., name, ID) to retrieve the relevant information from the database. The retrieved list is used for the following processes.
[0728] Step 3:
[0729] The server retrieves each employee's availability information via the calendar API, based on the extracted list of employees. An API request is made, and availability data for each employee is returned. The server then parses this data and stores it in a database.
[0730] Step 4:
[0731] The server calculates the optimal meeting date and time based on the acquired availability data. The algorithm compares the user's preferred date and time with the availability of the assigned staff member to find a date and time that is convenient for both parties. If there are multiple options, the server prioritizes and stores them.
[0732] Step 5:
[0733] The server sends the calculated interview date and time to the user's terminal and presents it to the user. The user checks the presented date and time on their terminal and selects an appropriate date and time. Once a selection is made, the result is returned to the server.
[0734] Step 6:
[0735] The server automatically generates meeting notifications based on the date and time selected by the user and sends them to the relevant personnel and the user. The notifications are generated in the form of email or calendar invitations. These notifications are added to the calendars of the personnel and the user using an API.
[0736] Step 7:
[0737] The server sets reminders for interviews and automatically sends notifications to all participants the day before the interview. The reminder timing is predetermined, and the reminder message is delivered using the corresponding API.
[0738] These steps enable effective scheduling of online meetings.
[0739] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0740] One embodiment of this invention is to incorporate an emotion engine that recognizes the user's emotions into a meeting scheduling support system. The system consists of a server, a user terminal, an emotion engine, and a network infrastructure. The program begins with the user inputting the meeting content, purpose, and relevant departments through the terminal.
[0741] The device has a built-in camera and microphone, and an emotion engine analyzes the user's facial expressions and voice to recognize emotions in real time. The server receives information from the emotion engine and adjusts the meeting setup process based on the user's emotions. For example, if the user is feeling stressed, the planning process is simplified and a more intuitive interface is provided.
[0742] As a concrete example, suppose a user sets up a "new product sales strategy meeting," and the emotion engine detects from the user's facial expression that they are in a hurry. In this case, the server automatically narrows down the number of possible dates and times and suggests the highest priority date and time. The server also simplifies the content of the meeting notification and adjusts the timing of sending the notification based on the user's emotion.
[0743] As part of the overall process, the server uses an emotion engine to enhance the user experience, optimizing the selection of meeting dates and times and the timing of notifications based on the user's emotional state. This enables more efficient and user-friendly meeting scheduling.
[0744] The following describes the processing flow.
[0745] Step 1:
[0746] The user uses a device to input the purpose and content of the meeting, as well as the relevant departments. The device is equipped with a camera and microphone, and an emotion engine captures the user's facial expressions and voice while they are inputting.
[0747] Step 2:
[0748] The emotion engine analyzes the user's emotions in real time from their facial expressions and voice, and evaluates their state, such as stress, concentration level, and excitement. The evaluation results are sent to the server.
[0749] Step 3:
[0750] The server receives the evaluation results and adjusts the interface operation according to the user's emotional state. For example, if it detects that the user is stressed, it will simplify instructions and prompts to reduce the burden on the user.
[0751] Step 4:
[0752] Based on user input, the server retrieves the schedules of members in the relevant department and displays a short list of suggestions to cheer them up. If the emotion engine detects stress, it reduces the number of suggested dates and times, simplifying the choices.
[0753] Step 5:
[0754] When a user selects the optimal meeting date and time on their device, the emotion engine guides the user interface (UI) to enhance their sense of security and satisfaction, and the server accepts that selection.
[0755] Step 6:
[0756] The server generates a meeting notification based on the confirmed date and time, and sends it to all participants with content adjusted by the emotion engine. The notification content and timing are tailored to the user's emotions.
[0757] Step 7:
[0758] Before a meeting, the server sets up reminder notifications and adjusts the content and timing of the reminders based on analysis from the emotion engine. This further enhances the user experience.
[0759] (Example 2)
[0760] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0761] Traditional meeting scheduling systems allow for efficient scheduling and participant notifications, but they lack the flexibility to adjust processes while considering user emotions. As a result, meeting settings cannot be optimized according to the psychological state of the users, which has not led to improved user experience or reduced stress.
[0762] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0763] In this invention, the server includes means for automatically acquiring relevant personal schedule information for meeting setup, means for recognizing the user's emotions and adjusting the meeting setup process based on those emotions, and means for optimizing the timing of sending meeting notifications according to those emotions. This enables efficient and user-friendly meeting setup that takes the user's emotions into consideration.
[0764] "Meeting scheduling" is a series of processes that involve gathering the necessary information to conduct a meeting effectively, determining the optimal date and time, and notifying participants.
[0765] "Personal scheduling information" refers to the schedule data and available time slots of participants related to the meeting.
[0766] "Recognizing emotions" is the process of identifying and analyzing a user's psychological state from their facial expressions and voice.
[0767] "Adjusting the meeting setup process" means optimizing the meeting setup procedure and interface based on user sentiment and other factors.
[0768] A "generative AI model" is an algorithm that uses machine learning to learn patterns from large amounts of data and perform specific tasks.
[0769] "Optimizing the timing of meeting notification sending" is the process of sending notifications at the optimal time, taking into account the psychological and situational suitability of the participants.
[0770] A description of the embodiment for carrying out the invention will be provided.
[0771] This system consists of multiple components designed to efficiently set up meetings. Specifically, it comprises a server, user terminals, an emotion engine for analyzing emotions, and the network infrastructure that connects them.
[0772] First, the user uses their device to input the meeting content, purpose, and relevant departments. The user's device has a built-in camera and microphone, which are used to capture the user's facial expressions and voice.
[0773] The emotion engine uses a built-in generative AI model to analyze this data in real time. The server receives the data from the emotion engine, further analyzes the user's emotional state, and adjusts the meeting scheduling process.
[0774] The server uses this analysis to suggest the optimal meeting date and time. For example, if the analysis indicates that the user is experiencing stress, the system narrows down the candidate dates and times and provides a simpler interface. The server also simplifies the content of meeting notifications and selects the optimal timing for sending them.
[0775] As a concrete example, when a user is scheduling a "new product sales strategy meeting," if the emotion engine determines that the user is pressed for time, the server will automatically reduce the number of possible dates and times and suggest primary dates and times. An example of an input prompt message used by the generative AI model might be, "Please explain how to provide the best meeting setting considering the user's emotions."
[0776] In this way, meeting settings can be configured to reflect users' emotions in real time, resulting in a user-friendly and efficient operation.
[0777] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0778] Step 1:
[0779] Users use their terminals to input meeting content, purpose, and relevant departments. This information is saved as initial data within the terminal. This allows the terminal to prepare to send the basic meeting information to the server.
[0780] Step 2:
[0781] The device's built-in camera and microphone activate, capturing the user's facial expressions and voice. The user's facial image and voice are acquired as input data. The device collects this data and sends it to the emotion engine.
[0782] Step 3:
[0783] The emotion engine receives facial and audio data transmitted from the device. It analyzes the input data using a generating AI model to quantify the user's emotional state. The output is the user's emotional state level (e.g., stress, relaxation).
[0784] Step 4:
[0785] The server receives emotional state data sent from the emotion engine. Based on this input data, it adjusts the meeting scheduling process. Specifically, it calculates the optimal meeting date and time for the input information and narrows down the candidates. As output, a list of high-priority meeting dates and times is generated.
[0786] Step 5:
[0787] The server presents the user with suggested meeting dates and times based on an optimized list. The server generates a pre-prepared prompt and presents it to the user to prompt confirmation. The output is the meeting date and time confirmed by the user.
[0788] Step 6:
[0789] The server automatically generates meeting notifications based on the confirmed meeting date and time. It adjusts the notification content according to the emotional state of participants and sends notifications to them at the optimal time. Specifically, information is sent to participants via email or app notifications.
[0790] (Application Example 2)
[0791] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0792] Traditional meeting scheduling systems fail to consider users' emotional states when scheduling meetings, making it difficult to efficiently schedule meetings when users are stressed or in a hurry. Furthermore, there has been a lack of technology to provide interfaces and processes that can adjust to changes in emotional state.
[0793] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0794] In this invention, the server includes means for analyzing the user's facial expressions and voice to recognize their emotions and adjusting the meeting scheduling process based on the results; means for optimizing candidate meeting dates and times and notification timing according to the user's emotional state; and means for presenting candidate meeting dates and times to the user and prompting them to make a selection. This enables more efficient and user-friendly meeting scheduling that is tailored to the user's emotional state.
[0795] "Meeting scheduling" is the process of determining the optimal meeting date and time based on the schedules of the relevant individuals and obtaining confirmation from the participants regarding that date and time.
[0796] "Schedule information" refers to information including personal schedules and the schedules of other stakeholders, and is used to coordinate meeting dates and times.
[0797] "Recognizing emotions" is the process of identifying a user's current mental state and emotions by analyzing their facial expressions and voice.
[0798] "Adjusting the process" means modifying the system's behavior and interface according to the user's emotions and circumstances to provide a more optimal user experience.
[0799] "Automatically generating and sending notifications" means creating a notification message based on meeting settings information and automatically communicating it to relevant parties.
[0800] "Collecting and managing attendance information" means understanding the attendance status of participants and preparing for the meeting based on that information.
[0801] "Optimizing candidate dates and notification timing" means adjusting the selection of candidate meeting dates and times, as well as the timing of notifications, to make them optimal based on the user's emotional state and other conditions.
[0802] The system for implementing this invention consists of a server, a user terminal, an emotion engine, and a network infrastructure. The user terminal has a built-in camera and microphone, and the emotion engine can analyze the user's facial expressions and voice to understand their emotional state in real time.
[0803] The server receives user sentiment information and adjusts the meeting scheduling process accordingly. Specifically, it narrows down potential meeting dates and times based on the user's sentiment and sends meeting details at an optimized notification timing. This enables more efficient meeting scheduling tailored to the user's usage patterns.
[0804] The device uses a generative AI model to generate prompts based on the user's emotional state, providing user-friendly instructions within the interface. This process utilizes facial recognition software such as OpenFace and speech analysis using Azure Cognitive Services.
[0805] For example, if a user is urgently trying to schedule a sales strategy meeting for a new product, the server, through its emotion engine, recognizes the user's urgency, automatically organizes potential dates and times, and narrows down and presents the most suitable option. Furthermore, when presenting multiple potential dates and times, it prioritizes displaying the option that causes the user the least stress, thereby improving usability.
[0806] An example of a prompt would be: "Use an emotion recognition system to provide ideas on how a robot could adjust its actions to create the right atmosphere when a user wants to relax."
[0807] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0808] Step 1:
[0809] The user's device uses its camera and microphone to capture the user's facial expressions and audio data in real time. During this process, camera images and audio are collected as input, and this data is sent to the emotion engine.
[0810] Step 2:
[0811] The emotion engine analyzes the received facial expression information and audio data to recognize the user's emotions. Here, facial recognition software such as OpenFace and audio analysis tools such as Azure Cognitive Services are used to output the emotional state as numerical data.
[0812] Step 3:
[0813] The server receives emotional state data from the emotion engine and incorporates it into the meeting scheduling process. The input is quantified emotional data, which is used to adjust potential meeting dates and times and notification timings, and the results are then sent to the next process.
[0814] Step 4:
[0815] The server optimizes candidate dates and times, presenting the user with more appropriate meeting date and time options that align with their emotional state. The input here is adjusted candidate meeting date and time data, and the output is optimized to reduce user stress.
[0816] Step 5:
[0817] The user selects a meeting date and time from the presented options and sends the selection to the server. The input is the user's selection, and preparations to notify participants continue based on that result.
[0818] Step 6:
[0819] The server automatically generates a meeting notification message based on the final meeting date and time, and sends it to all participants via the network infrastructure. Here, the selected date and time are the input, and the generated notification message is output.
[0820] Step 7:
[0821] Using a generative AI model, the system proposes emotion-based prompts to the user, providing user-friendly instructions on the interface. User emotion data and meeting information are used as input, and the generated prompts are output.
[0822] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0823] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0824] 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 this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[0825] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[0826] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[0827] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[0828] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[0829] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[0830] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[0831] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[0832] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[0833] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[0834] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[0835] 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.
[0836] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[0837] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[0838] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[0839] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[0840] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[0841] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[0842] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[0843] The following is further disclosed regarding the embodiments described above.
[0844] (Claim 1)
[0845] A means of automatically retrieving relevant personal schedule information for meeting scheduling,
[0846] A means for calculating the optimal meeting date and time based on the acquired schedule information,
[0847] A means of presenting the calculated meeting date and time to the user and allowing them to confirm it,
[0848] A means for automatically generating a meeting notice based on the confirmed meeting date and time and sending it to participants,
[0849] A means of collecting and managing attendance information from participants,
[0850] A system that includes this.
[0851] (Claim 2)
[0852] The system according to claim 1, further comprising means for calculating multiple candidate dates and times for a meeting and prompting the user to make a selection.
[0853] (Claim 3)
[0854] The system according to claim 1, further comprising means for setting reminders for the participants and automatically providing notifications at predetermined intervals.
[0855] "Example 1"
[0856] (Claim 1)
[0857] A means of receiving meeting content, purpose, and relevant departmental information from users,
[0858] A means for extracting a list of relevant individuals from among the organizational components based on the aforementioned relevant departmental information,
[0859] A means for obtaining the extracted personal schedule information from multiple time management tools,
[0860] A method for integrating acquired schedule information, comparing the available time of all individuals, and calculating the optimal meeting date and time,
[0861] A means of displaying the calculated meeting date and time on the user's terminal for confirmation,
[0862] A means for automatically generating a meeting notice based on the confirmed meeting date and time and sending it to participants using communication technology,
[0863] A means of collecting attendance information from participants and managing it in a recording system,
[0864] A system that includes this.
[0865] (Claim 2)
[0866] The system according to claim 1, further comprising means for calculating multiple candidate dates and times and prompting the user to make a selection.
[0867] (Claim 3)
[0868] The system according to claim 1, further comprising means for setting a reminder for the participant before the meeting and automatically notifying them a predetermined time in advance.
[0869] "Application Example 1"
[0870] (Claim 1)
[0871] A means to automatically obtain the availability information of relevant personnel for scheduling online meetings,
[0872] A means for calculating the optimal interview date and time based on the acquired availability information,
[0873] A means of presenting the calculated interview date and time to the user and allowing them to confirm it,
[0874] A means for automatically generating an interview notification based on the confirmed interview date and time and sending it to the relevant individual,
[0875] Means for collecting and managing participation information from relevant individuals,
[0876] A system that includes this.
[0877] (Claim 2)
[0878] The system according to claim 1, further comprising means for calculating multiple candidate interview dates and times and prompting the user to make a selection.
[0879] (Claim 3)
[0880] The system according to claim 1, further comprising means for setting reminders for the relevant individuals and automatically providing notifications at predetermined intervals.
[0881] "Example 2 of combining an emotion engine"
[0882] (Claim 1)
[0883] A means of automatically retrieving relevant personal schedule information for meeting scheduling,
[0884] A means for calculating the optimal meeting date and time based on the acquired schedule information,
[0885] A means of presenting the calculated meeting date and time to the user and allowing them to confirm it,
[0886] A means for automatically generating a meeting notice based on the confirmed meeting date and time and sending it to participants,
[0887] A means of collecting and managing attendance information from participants,
[0888] A means of recognizing the user's emotions and adjusting the meeting scheduling process based on those emotions,
[0889] A means of analyzing a user's emotional state using a generative AI model,
[0890] A means to optimize the timing of sending meeting notifications based on emotions,
[0891] A system that includes this.
[0892] (Claim 2)
[0893] The system according to claim 1, further comprising means for calculating multiple candidate dates and times for a meeting and prompting the user to make a selection.
[0894] (Claim 3)
[0895] The system according to claim 1, further comprising means for setting reminders for the participants and automatically providing notifications at predetermined intervals.
[0896] "Application example 2 when combining with an emotional engine"
[0897] (Claim 1)
[0898] A means of automatically retrieving relevant personal schedule information for meeting scheduling,
[0899] A means for calculating the optimal meeting date and time based on the acquired schedule information,
[0900] A means of presenting the calculated meeting date and time to the user and allowing them to confirm it,
[0901] A means for automatically generating a meeting notice based on the confirmed meeting date and time and sending it to participants,
[0902] A means of collecting and managing attendance information from participants,
[0903] A means of analyzing the user's facial expressions and voice to recognize emotions and adjusting the meeting setting process based on the results,
[0904] A means to optimize meeting date and time and notification timing according to the user's emotional state,
[0905] A system that includes this.
[0906] (Claim 2)
[0907] The system according to claim 1, further comprising means for calculating multiple candidate dates and times for a meeting and prompting the user to make a selection.
[0908] (Claim 3)
[0909] The system according to claim 1, further comprising means for setting reminders for the participants and automatically providing notifications at predetermined intervals. [Explanation of symbols]
[0910] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means to automatically obtain the availability information of relevant personnel for scheduling online meetings, A means for calculating the optimal interview date and time based on the acquired availability information, A means of presenting the calculated interview date and time to the user and allowing them to confirm it, A means for automatically generating an interview notification based on the confirmed interview date and time and sending it to the relevant individual, Means for collecting and managing participation information from relevant individuals, A system that includes this.
2. The system according to claim 1, further comprising means for calculating multiple candidate interview dates and times and prompting the user to make a selection.
3. The system according to claim 1, further comprising means for setting reminders for the relevant individuals and automatically providing notifications at predetermined intervals.