system
The AI-driven matchmaking system addresses inefficiencies in conventional methods by automating candidate search, negotiation, and scheduling, reducing user stress and enhancing the efficiency of partner finding.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-12-05
- Publication Date
- 2026-06-17
AI Technical Summary
Conventional matchmaking services and apps require significant time and effort for users to find an ideal partner, often leading to inefficiency and mental stress due to manual evaluation and negotiation processes, which can be ineffective and stressful.
A system utilizing an AI agent to efficiently search for candidates, evaluate matching criteria, negotiate automatically, and schedule online meetings, while also providing polite rejections when necessary, all supported by a database for user and candidate information.
This system allows users to efficiently find their ideal partner with reduced stress by automating the matchmaking process, including negotiation and scheduling, thereby improving the efficiency and effectiveness of partner search.
Smart Images

Figure 2026098666000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance as a 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] Conventional matchmaking services and apps require a lot of time and effort for users to find an ideal partner. In particular, communication when no agreement is reached may cause mental stress. Also, since the generation of candidate lists and the evaluation of condition matching are performed manually, efficiency tends to decrease, and the process for finding an optimal partner is often ineffective. Thus, from the perspective of addressing the social problem of a declining birthrate, a more efficient and less stressful solution is desired.
Means for Solving the Problems
[0005] This invention provides a system that includes an AI agent that receives information from the user, efficiently searches for candidates, and evaluates the degree of match with each candidate's criteria. Furthermore, it has a function to automatically negotiate with candidates and notify the user when an agreement is reached, by scheduling an online meeting. It is also designed to reduce the user's mental stress by including a function to generate and send an appropriate rejection to the candidate even if the negotiation does not reach an agreement. The system also includes a database that stores user and candidate information, which can be used for subsequent processing, supporting an efficient matchmaking process.
[0006] A "user" refers to an individual who uses the system and is the one who enters their information in order to find their ideal partner.
[0007] "Means of receiving information" refers to the function by which the system acquires profiles and preferences provided by the user.
[0008] "Means of searching for candidates" refers to a function that identifies multiple individuals from the database who may meet the user's criteria based on the information received.
[0009] "Means for evaluating the degree of matching conditions and conducting negotiations" refers to a function that compares the information of searched candidates with the user's conditions, determines the degree of matching, and then automatically proceeds with negotiations.
[0010] "Means of scheduling when an agreement is reached" refers to a function that allows the employer and candidate to coordinate their preferred dates and set up an opportunity to meet once they have agreed on the terms and conditions.
[0011] "Means of notification" refers to the system's function for informing users of agreements or meeting scheduling results.
[0012] "Means for generating and sending appropriate rejection messages" refers to a function that creates and sends a polite message to a candidate expressing the intention to decline when negotiations have failed.
[0013] A "database" refers to a collection of structured information that stores information about users and candidates and is used by the system for searching and evaluating them. [Brief explanation of the drawing]
[0014] [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] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This 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] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This 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] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This 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] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14] It is a sequence diagram showing the processing flow of a data processing system in Application Example 2 when a sentiment engine is combined.
Embodiments for Carrying Out the Invention
[0015] 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.
[0016] First, the terms used in the following description will be explained.
[0017] In the following embodiments, a processor with a reference numeral (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), etc.
[0018] In the following embodiments, a RAM (Random Access Memory) with a reference numeral is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0019] In the following embodiments, a storage with a reference numeral 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.
[0020] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0021] 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."
[0022] [First Embodiment]
[0023] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0024] 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.
[0025] 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).
[0026] 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.
[0027] 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.
[0028] 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.
[0029] 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.
[0030] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] 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".
[0035] This invention is a matchmaking support system that utilizes an AI agent. Based on the user's input information, it searches for ideal partner candidates and, if an agreement is reached, proceeds to the next step. The specific form of this system is described below.
[0036] First, users use a dedicated terminal or application to enter their profile information and ideal partner criteria. The system then collects the necessary information. Users enter basic information such as age, location, and occupation, as well as criteria such as personality and hobbies they seek in a partner.
[0037] Next, the terminal sends this information received from the user to the server. The server processes the received information and stores it in a database. The database also contains information about other users, and this information is used to search for potential partners.
[0038] The server uses an AI agent to search its database for candidates that match the received criteria and creates a list. The AI agent is equipped with an algorithm to determine how well the candidates' criteria match the user's preferences.
[0039] The AI agent then begins negotiations with the user's candidate list, one candidate at a time. It automates the process of systematically negotiating terms with each candidate's AI agent and leading to an agreement. If an agreement is reached, the system then sets the date for the first online meeting.
[0040] The server coordinates the schedules of both candidates and users, recommends the optimal meeting time, and notifies the user of that time, creating a smooth opportunity for them to meet.
[0041] As a concrete example, a 30-year-old female user living in Tokyo enters her requirements, stating that she is looking for a man aged 30-35 who lives in Tokyo and earns over 7 million yen annually. The server searches its database for male candidates who may meet the submitted criteria and creates a list. The AI agent then negotiates with the candidates in order of matching criteria, and once an agreement is reached, it sets up an online meeting for 7 PM on the following Friday and notifies the user.
[0042] Thus, the present invention provides a system that allows users to efficiently meet their ideal partner and proceed with their marriage search without stress.
[0043] The following describes the processing flow.
[0044] Step 1:
[0045] Users enter their profile information and the criteria for their ideal partner using a dedicated terminal or application. This includes information such as age, occupation, annual income, and hobbies.
[0046] Step 2:
[0047] The terminal receives the entered information and prepares it for transmission to the server. It delivers accurate data to the server while maintaining security.
[0048] Step 3:
[0049] The server receives information sent from the terminal. The received information is organized by user and recorded in a database on the server. This makes it available for use in subsequent processing.
[0050] Step 4:
[0051] An AI agent installed on the server searches the database for candidates based on the user's criteria. It evaluates the degree of matching with all registered users to generate a list of potential partners.
[0052] Step 5:
[0053] The server creates and prioritizes the best candidate list based on the assessed match scores. The candidate list is then sorted in order of how well it matches the user's requirements.
[0054] Step 6:
[0055] The server connects with the AI agents of the top candidates on the list and begins negotiations. Negotiations regarding terms with each candidate agent are conducted automatically.
[0056] Step 7:
[0057] The server analyzes the negotiation results and, if an agreement is reached, schedules an online meeting. It selects the optimal meeting date and time from the schedules of both the candidate and the user.
[0058] Step 8:
[0059] The server sends the coordinated schedule to the terminal and notifies the user. The user receives this notification and can confirm the meeting date.
[0060] Step 9:
[0061] If an agreement is not reached, the server uses AI to generate and send an appropriate rejection message to the candidate. Based on that, the negotiation process proceeds to the next candidate.
[0062] (Example 1)
[0063] 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."
[0064] Traditional matchmaking systems struggled to efficiently find a partner based on user-entered criteria and to smoothly guide the process towards agreement. In particular, they required finding suitable partners from a large pool of candidates and automatically scheduling mutually agreeable dates. Furthermore, they needed to respond quickly and appropriately if negotiations failed.
[0065] 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.
[0066] In this invention, the server includes means for acquiring information from the user and searching for potential partners based on that information, means for determining the degree of compatibility with each potential partner and conducting negotiations, and means for scheduling a meeting and notifying the user when an agreement is reached in the negotiations. This automates the process for users to find their ideal partner and makes it possible to create opportunities for smooth encounters.
[0067] A "user" refers to an individual who uses the system to input their information and search for their ideal partner.
[0068] "Information" refers to data, including personal profiles and conditions, that users enter into the system.
[0069] "Potential partners" refers to potential partners selected by the system based on the user's criteria.
[0070] "Device" refers to a component used within a system to perform specific information processing or data transmission / reception.
[0071] "Reaching an agreement" refers to a state where the user and the potential partner's conditions match, and consent is obtained to proceed to the next step.
[0072] "Recording" refers to the act of saving information about users and potential partners in a database.
[0073] An "information storage device" refers to a mechanism within a system for storing user and candidate information for use in later processing.
[0074] The following are examples of embodiments for carrying out this invention.
[0075] Users first use a dedicated device or application to enter their profile information and the criteria for their ideal partner. This device can be a standard smartphone or computer, configured to communicate with the server via an internet connection. Users enter information such as "age," "location," "occupation," and the "personality" and "hobbies" they seek in a partner through on-screen input forms. This information is protected on the device using SSL / TLS encryption technology and transmitted to the server.
[0076] After receiving information from the user, the server utilizes a database system to record it in a management database. The database used here is a common database management system (DBMS) that enables high-speed access and data management. The server then uses a generative AI model to search the database for partner candidates that best match the user's criteria. This AI model uses machine learning algorithms to calculate similarity scores and generate a list of candidates.
[0077] Once candidates are selected, the server uses AI agents to automatically negotiate with each candidate's AI agent. The negotiation process involves checking the degree of agreement between both parties and evaluating the likelihood of reaching an agreement. During this process, the AI agents primarily utilize natural language processing (NLP) techniques.
[0078] When negotiations reach an agreement, the server collects the schedules of both the user and the candidate from their respective calendar information and coordinates the optimal online meeting time. This scheduling process is carried out efficiently using numerous calendar APIs. The server then notifies the user of the agreed-upon date and time, creating a smooth opportunity for a meeting.
[0079] For example, if a 30-year-old female user living in Tokyo enters the specific prompt "a man aged 30-35 living in Tokyo with an annual income of 7 million yen or more," the server will extract suitable male candidates from its database, and an AI agent will proceed with negotiations. If an agreement is reached, an online meeting will be scheduled for 7 PM on the following Friday, and the user will be notified.
[0080] Example of a prompt:
[0081] "I'm looking for a partner who is 30 years old, lives in Tokyo, and earns over 7 million yen annually. Please introduce me to someone who meets my desired partner criteria."
[0082] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0083] Step 1:
[0084] Users enter their profile information and ideal partner criteria through a dedicated terminal or application. This includes information such as age, location, and occupation, as well as desired partner characteristics like personality and hobbies, entered using the terminal's input form. The system checks the entered data for correct formatting before encrypting it and sending it to the server.
[0085] Step 2:
[0086] The terminal securely transmits user-entered data to the server. It receives user information as input and performs data processing, encrypting the data using the SSL / TLS protocol. As output, it sends the encrypted data to the server.
[0087] Step 3:
[0088] The server stores the received user information in a database. It receives encrypted data as input, decrypts it, and then processes the data by adding it as a new record in the database. As output, it stores the organized user information in the database.
[0089] Step 4:
[0090] The server uses a generative AI model to search the database for potential partners that match the user's criteria. As input, it retrieves all candidate information from the database and performs data calculations to evaluate them using the generative AI model. As output, it generates a list of multiple candidates that best match the criteria.
[0091] Step 5:
[0092] The server utilizes AI agents to negotiate with each candidate based on a candidate list. It receives a generated candidate list as input and evaluates the likelihood of agreement based on an existing algorithm. Specifically, it communicates with each candidate's AI agent and negotiates whether they best match the user's conditions. The output is a list of candidates who have reached an agreement.
[0093] Step 6:
[0094] The server, if an agreement is reached, will schedule an initial online meeting. It receives a list of agreed-upon candidates and their respective schedules as input, and uses a scheduling API to calculate the optimal meeting date and time. The server then generates the adjusted meeting date and time as output and notifies the user.
[0095] (Application Example 1)
[0096] 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."
[0097] In modern society, finding an ideal partner is a complex and time-consuming task. In particular, manual data entry and condition adjustments are burdensome, making efficient matching difficult. Furthermore, proper follow-up is required when negotiations fail, but many current systems lack the functionality to adequately handle this.
[0098] 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.
[0099] In this invention, the server includes means for receiving voice data from the user and converting the data into text data; means for searching for candidates based on the text data and evaluating the degree of match with the candidates; and means for automatically conducting negotiations based on the evaluation results, and if an agreement is reached, adjusting the date and time of the meeting and notifying the user. This allows the user to easily find an ideal partner through voice input, negotiations to proceed automatically, and appropriate action to be taken even if an agreement is not reached.
[0100] A "user" is an individual who uses the system to find their ideal partner.
[0101] "Voice data" refers to digital recordings of voices spoken by the user to a robot or device.
[0102] "Text data" refers to data expressed as characters obtained by analyzing audio data.
[0103] A "candidate" is a potential partner who may be matched based on the criteria entered by the user.
[0104] "Criteria match rate" is an indicator that evaluates how well the candidate's attributes match the partner criteria set by the user.
[0105] "Negotiation" is a communication process between employers and candidates to adjust or reach an agreement on terms and conditions.
[0106] "Agreement" means that both the employer and the candidate are satisfied with the conditions and can proceed to the next step.
[0107] "Meeting date and time" refers to the date and time designated for the employer and the candidate to communicate in person or online.
[0108] "Means of notification" refers to methods or devices for communicating decided information to the user.
[0109] This invention provides support for users' matchmaking activities using a system equipped with a home robot. The home robot has a voice recognition function and receives voice data from the user as input, converting it into text data. To enable this, the robot incorporates voice recognition technology using Google® Speech-to-Text API.
[0110] The server receives and analyzes the converted text data, and uses a matching algorithm to search for suitable candidates from the database. During this process, a Support Vector Machine (SVM) algorithm implemented in Python evaluates the degree of matching. Based on the evaluation results, the server automatically negotiates, and if an agreement is reached, it uses a calendar management API (e.g., Google Calendar API) to schedule a meeting and notifies the user.
[0111] As a concrete example, the robot asks the user, "Please tell me about your ideal partner." When the user replies, "I'm looking for someone aged 30-35 with an annual income of 7 million yen or more, living in an urban area," the robot converts that information into text and sends it to the server. The server searches for candidates that match these criteria and suggests, "We have a 30-year-old who fits your criteria. Shall we schedule an online meeting?"
[0112] An example of a prompt message is as follows:
[0113] "Please check your schedule for today and set up an online meeting with your potential partner."
[0114] "Please tell us your ideal partner's criteria using voice input."
[0115] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0116] Step 1:
[0117] The user communicates their ideal partner criteria to a home robot via voice. The robot uses the Google Speech-to-Text API to convert the voice data into text data. The input is the user's voice data, and the output is the converted text data.
[0118] Step 2:
[0119] The terminal sends text data to the server. The server parses the received text data and searches the database for candidates based on matching criteria. The input is the converted text data, and the output is a list of candidates that meet the criteria. The database stores candidate information and uses the SVM algorithm implemented in Python for matching.
[0120] Step 3:
[0121] The server evaluates the degree of match between the candidate and the criteria based on the matching results. Based on the evaluation, the candidate list is prioritized. The input is the candidate list, and the output is the prioritized candidate list. This process calculates the degree of match and performs scoring.
[0122] Step 4:
[0123] The server attempts to negotiate with the most suitable partner candidate from a prioritized list. It automatically determines whether a deal can be reached with the current candidates. The input is a list of prioritized candidates, and the output is the negotiation agreement status.
[0124] Step 5:
[0125] If an agreement is reached, the server uses the calendar management API to schedule the meeting and notify the user. The input is information about the agreed-upon candidates and the user's schedule, and the output is a notification of the proposed meeting date and time.
[0126] Step 6:
[0127] If an agreement is not reached, the server will write and send an appropriate rejection message to the candidate. The input is the reason for the failure to reach an agreement and the candidate's information, and the output is the rejection message.
[0128] 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.
[0129] This invention is a matchmaking support system that takes user emotions into consideration. The AI agent efficiently searches for and negotiates with the user's ideal partner, and also has the ability to adapt the system's operation according to the user's emotional state. Its specific form is described below.
[0130] First, the user uses a dedicated terminal or application to enter their profile information and ideal partner criteria. In this initial step, the emotion engine assesses the user's current emotional state and obtains emotional data such as whether they are relaxed or stressed.
[0131] The device sends the entered information and emotional data to the server. Because this data contains sensitive information, appropriate security measures are in place.
[0132] The server stores the received data in a database and begins searching for potential partners. The AI agent identifies candidates who match the user's criteria from other users in the database, and also incorporates sentiment data obtained from the sentiment engine into the evaluation. This generates a candidate list with priority optimized by emotional state.
[0133] Once the candidate list is complete, the server automates negotiations with candidates via an AI agent. Here, the emotion engine is utilized again to adjust the pace of the negotiations to match the user's emotional state. If the user is relaxed, negotiations proceed quickly; if the user is stressed, a slower pace is chosen.
[0134] If an agreement is reached, the server will schedule an online meeting at the optimal time based on the sentiment and scheduling data of both the user and the candidate. This information will be notified to the user via their device.
[0135] As a concrete example, suppose a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and is determined to be in a calm emotional state. The server queries the database to list candidates who match the criteria, and when negotiating with candidates, it maintains a friendly and slow negotiation style to preserve the user's calm emotional state. Care is also taken to schedule online meetings at times when the user is most relaxed. In this way, by considering the user's emotions, it is possible to provide an even more personalized matchmaking experience.
[0136] The following describes the processing flow.
[0137] Step 1:
[0138] Users input their profile information and ideal partner profile using a dedicated terminal or application. This will likely include information such as age, occupation, hobbies, and desired annual income. At that time, an emotion engine evaluates the user's current emotional state based on their facial expressions and voice.
[0139] Step 2:
[0140] The terminal receives the entered information and sentiment data and immediately sends it to the server. The data is transmitted through a secure channel and managed in an orderly manner.
[0141] Step 3:
[0142] The server analyzes the received information and stores it in a database. Furthermore, it references the user's emotional data and prepares to proceed with the optimal processing, taking into account the user's current psychological state.
[0143] Step 4:
[0144] The server activates an AI agent and searches the database for other users based on the conditions specified by the user. The sentiment engine data is incorporated into the search algorithm, listing candidates that match the user's sentiment.
[0145] Step 5:
[0146] The server evaluates the degree of match with the criteria and prioritizes candidates using sentiment data. As a result, it generates the optimal list of candidates.
[0147] Step 6:
[0148] The server initiates the negotiation process with candidates through an AI agent. The negotiation is adjusted to the user's emotional state; for example, if the user is nervous, a softer tone of voice is used.
[0149] Step 7:
[0150] If an agreement is reached during negotiations, the server generates potential dates and times for an online meeting. It checks the schedules of both the user and the candidate, and determines the optimal time based on sentiment data.
[0151] Step 8:
[0152] The device receives a notification from the server, informing the user that their consent has been obtained and providing the date and time of the meeting. The user can then review this notification and proceed with preparations.
[0153] Step 9:
[0154] If an agreement is not reached, the server generates and sends an appropriate rejection message to the candidate, taking their feelings into consideration. It then prepares to negotiate with the next available candidate.
[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] In today's matchmaking market, finding an ideal partner efficiently and effectively requires significant time and effort from the user. Furthermore, the difficulty in making appropriate approaches based on established candidate lists leads to a lower success rate in negotiations. Additionally, a lack of consideration for the user's emotional state can cause stress and anxiety, potentially degrading the overall quality of the matchmaking process.
[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 receiving information from the user and searching for candidates based on that information; means for evaluating the emotional state and optimizing the candidate list based on that emotional state; and means for conducting negotiations considering the degree of matching conditions with each candidate and emotional data. This makes it possible to provide a personalized matchmaking experience that corresponds to the user's emotional state and improve the success rate of negotiations.
[0160] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0161] "Means of receiving information" refers to the function of incorporating user-provided profile data and search criteria into the system.
[0162] "Means of searching for candidates" refers to a function that searches a database based on the user's criteria and identifies suitable potential partners.
[0163] "Evaluating emotional state" refers to a technology that measures the user's current psychological state and emotions and adapts the system's operation based on that.
[0164] "Methods for optimizing the candidate list" refers to a function that prioritizes potential partners by taking into account the user's emotional state.
[0165] "Criteria match rate" is an indicator that shows how well the attributes and criteria of a candidate match the ideal partner criteria specified by the user.
[0166] "Means for conducting negotiations" refers to functions that automate communication between employers and candidates and facilitate consensus building.
[0167] "Means of adjusting schedules if an agreement is reached" refers to the process of coordinating the availability of both the employer and the candidate and setting up events or meetings on a schedule that is convenient for both parties.
[0168] This system's implementation utilizes an AI agent aimed at supporting matchmaking, efficiently searching for and negotiating with ideal partner candidates while taking into account the user's emotional state.
[0169] First, users use a dedicated terminal or application to input their profile information and criteria for their ideal partner. The input information is then used by an emotion engine to evaluate the user's emotional state in real time, and data such as stress and relaxation levels are collected.
[0170] The device then encrypts the entered profile information and acquired sentiment data and sends it to the server. The server receives this data and stores the information in its database.
[0171] The server uses an AI agent to search the database for partner candidates that match the criteria entered by the user. The AI agent uses a generative AI model to perform a detailed analysis of candidate information based on natural language processing. Furthermore, it evaluates data from the emotion engine and generates a candidate list based on optimized priorities according to the user's emotional state.
[0172] Once a list is generated, the server, via an AI agent, automates negotiations with candidates, adjusting the pace and style to match the user's emotional state. If an agreement is reached, the system uses the emotional and scheduling data of both parties to set up an online meeting at the optimal time and notifies the user of this information via their device.
[0173] As a concrete example, if a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and the system determines that the user is in a calm emotional state, it will use a generative AI model to quickly select a suitable partner and conduct friendly negotiations. This negotiation will use the following prompt as an example: "A female user in her 30s is looking for a partner who shares outdoor hobbies. She is currently in a relaxed state. Please generate a list of suitable candidates, taking priority into consideration."
[0174] In this way, the system provides an intelligent matchmaking experience that takes emotions into account.
[0175] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0176] Step 1:
[0177] Users enter their profile information (e.g., age, occupation, hobbies, etc.) and ideal partner criteria using a dedicated terminal or application. This input is collected through a UI interface. The entered data is processed by an emotion engine to evaluate the user's current emotional state, generating emotional data such as relaxed or stressed. The output provides the user's profile information and emotional data.
[0178] Step 2:
[0179] The device encrypts the collected profile information and sentiment data and sends it to the server. This process employs encryption protocols to ensure data security. It receives user profile information and sentiment data as input and sends the encrypted data to the server as output.
[0180] Step 3:
[0181] The server receives data sent from the terminal and stores it in the database. In this phase, the database management system is used to structure the information and make it available for subsequent search processes. It receives encrypted user information and sentiment data as input and stores the information in the database as output.
[0182] Step 4:
[0183] The server uses an AI agent to search the database for potential partners that match the user's criteria. This process utilizes generative AI models and natural language processing techniques to improve the accuracy of candidate selection. Using the user's criteria and sentiment data stored as input, it generates a list of suitable candidates as output.
[0184] Step 5:
[0185] The server uses an emotion engine to optimize the candidate list based on the user's emotional state. In this step, quick responses are prioritized when the user is relaxed, while a more cautious approach is taken when the user is stressed. The server receives the generated candidate list and emotion data as input and outputs an optimized candidate list adapted to the emotional state.
[0186] Step 6:
[0187] The server automates negotiations with candidates via an AI agent, adjusting the pace and style based on sentiment data. For example, the sentiment engine selects a swift or cautious negotiation stance. It uses an optimized candidate list as input and negotiation results and, where possible, agreements as output.
[0188] Step 7:
[0189] If an agreement is reached, the server will take into account the user's and candidate's sentiments and schedule data to set up an online meeting at the optimal time. The configured information will be notified to the user via their device. The server will use the negotiation agreement information and schedule data as input and provide the user with the date, time, and details of the online meeting as output.
[0190] (Application Example 2)
[0191] 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".
[0192] Conventional matchmaking support systems often fail to adequately address the emotional state of users, leading to stress and discomfort. Therefore, there is a need for a system that considers the user's emotional state and provides personalized matchmaking support that is empathetic to their feelings.
[0193] 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.
[0194] This invention includes a server that receives attribute information and emotional information from the user, searches for candidates based on this information, and optimizes priorities according to the user's emotional state; evaluates the degree of match with each candidate, conducts negotiations, and adjusts the progress of negotiations according to the user's emotional state; and, when an agreement is reached in the negotiations, adjusts the schedule at the optimal timing based on the user's emotional information and scheduling information, and notifies the user. This enables personalized matchmaking support that takes the user's emotions into consideration.
[0195] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0196] "Attribute information" refers to information that includes the conditions and characteristics of the partner the user desires.
[0197] "Emotional information" refers to data that indicates the user's current emotional state.
[0198] A "candidate" refers to a partner who is being considered based on the user's ideals and requirements.
[0199] "Methods for optimizing priorities" refer to methods and techniques for adjusting candidate lists according to the user's emotional state.
[0200] "Condition Match" is a measure that indicates the degree to which the conditions set by the employer match the conditions of the candidate.
[0201] "Negotiation" refers to communication aimed at building relationships and adjusting terms between employers and candidates.
[0202] "Means of adjusting the progress" refers to methods and techniques for adjusting the speed and method of negotiation to suit the user's emotions.
[0203] "Means for adjusting schedules and notifying users" refers to methods and technologies for setting agreed-upon schedules at the optimal time and notifying users of them.
[0204] "Emotionally responsive communication" is a method of dialogue that responds according to the user's emotional state, providing a sense of security and comfort.
[0205] This system consists of a user terminal, a server, and emotion recognition software. The terminal receives attribute and emotion information from the user as input and transmits the data to the server using a secure communication protocol. To evaluate the user's emotional state, the terminal uses a microphone for voice input and a camera to read facial expressions. This allows for the collection of emotion data in real time.
[0206] The server searches a database based on the received information and lists candidates that match the user's criteria. Furthermore, it optimizes candidate prioritization based on sentiment information. To do this, an AI model is used to analyze sentiment data and apply an optimization algorithm. Server-side processing may utilize high-performance cloud infrastructure for data processing and specialized processing units to run the AI model.
[0207] Once the candidate list is generated, the server adjusts the negotiation process. It dynamically manages the negotiations so that reaching an agreement with the candidates proceeds at a pace that suits the user's emotions. For example, if the user is stressed, the negotiations proceed slowly, and if they are relaxed, they proceed quickly. This process can utilize natural language processing techniques that leverage emotion recognition technology.
[0208] If the user and candidate reach an agreement, the server will schedule an online meeting at the optimal time based on both parties' schedules and emotional states. This information will then be communicated back to the user via their device.
[0209] For example, if a user enters "someone in their 30s who shares outdoor hobbies" as their desired criteria, and the server determines they are in a relaxed state, the server will generate a list of candidates, quickly proceed with negotiations, and schedule online meetings during a time when they can relax.
[0210] Examples of prompts to input into a generative AI model:
[0211] "Optimize the priority of the candidate list to match the user's calm emotional state. Also, suggest topics that will help the user relax."
[0212] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0213] Step 1:
[0214] Users input attribute and emotional information using a device. This input includes text-based conditions and emotional expressions using voice and images. The device converts voice input to text and analyzes facial expressions from images captured by the camera to generate emotional data. This data is transmitted to the server via a secure communication protocol.
[0215] Step 2:
[0216] The server analyzes the data received from the terminal and performs a database search. It lists candidates that match the user's criteria and calculates the degree of match. It also analyzes emotional information using an AI model and optimizes candidate priorities based on their emotional state. Based on the analysis results, it generates a list and creates a candidate list with adjusted priorities.
[0217] Step 3:
[0218] The server initiates negotiations with candidates based on the generated list. It utilizes natural language processing to design conversation content tailored to the user's emotional state. For example, if the user is relaxed, it generates messages in a frank tone; if they are stressed, it develops topics in a calm tone. The progress of the negotiations is adjusted by continuously analyzing the user's emotional data.
[0219] Step 4:
[0220] If an agreement is reached during negotiations, the server will coordinate the schedules of both the user and the candidate. It will combine sentiment information and scheduling data to suggest the optimal date and time for an online meeting. The suggested date and time will be notified to the user again via their device, and if accepted, the meeting will be added to the schedule.
[0221] Step 5:
[0222] When notifying users, the system utilizes a generated AI model to suggest actions that address emotional needs. For example, it might send suggestions for relaxation, such as playing background music tailored to a relaxing topic or suggesting deep breathing exercises. User feedback is also collected and used to improve the system.
[0223] 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.
[0224] 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.
[0225] 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.
[0226] [Second Embodiment]
[0227] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0228] 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.
[0229] 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).
[0230] 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.
[0231] 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.
[0232] 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).
[0233] 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.
[0234] 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.
[0235] 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.
[0236] 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.
[0237] 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.
[0238] 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".
[0239] This invention is a matchmaking support system that utilizes an AI agent. Based on the user's input information, it searches for ideal partner candidates and, if an agreement is reached, proceeds to the next step. The specific form of this system is described below.
[0240] First, users use a dedicated terminal or application to enter their profile information and ideal partner criteria. The system then collects the necessary information. Users enter basic information such as age, location, and occupation, as well as criteria such as personality and hobbies they seek in a partner.
[0241] Next, the terminal sends this information received from the user to the server. The server processes the received information and stores it in a database. The database also contains information about other users, and this information is used to search for potential partners.
[0242] The server uses an AI agent to search its database for candidates that match the received criteria and creates a list. The AI agent is equipped with an algorithm to determine how well the candidates' criteria match the user's preferences.
[0243] The AI agent then begins negotiations with the user's candidate list, one candidate at a time. It automates the process of systematically negotiating terms with each candidate's AI agent and leading to an agreement. If an agreement is reached, the system then sets the date for the first online meeting.
[0244] The server coordinates the schedules of both candidates and users, recommends the optimal meeting time, and notifies the user of that time, creating a smooth opportunity for them to meet.
[0245] As a concrete example, a 30-year-old female user living in Tokyo enters her requirements, stating that she is looking for a man aged 30-35 who lives in Tokyo and earns over 7 million yen annually. The server searches its database for male candidates who may meet the submitted criteria and creates a list. The AI agent then negotiates with the candidates in order of matching criteria, and once an agreement is reached, it sets up an online meeting for 7 PM on the following Friday and notifies the user.
[0246] Thus, the present invention provides a system that allows users to efficiently meet their ideal partner and proceed with their marriage search without stress.
[0247] The following describes the processing flow.
[0248] Step 1:
[0249] Users enter their profile information and the criteria for their ideal partner using a dedicated terminal or application. This includes information such as age, occupation, annual income, and hobbies.
[0250] Step 2:
[0251] The terminal receives the entered information and prepares it for transmission to the server. It delivers accurate data to the server while maintaining security.
[0252] Step 3:
[0253] The server receives information sent from the terminal. The received information is organized by user and recorded in a database on the server. This makes it available for use in subsequent processing.
[0254] Step 4:
[0255] An AI agent installed on the server searches the database for candidates based on the user's criteria. It evaluates the degree of matching with all registered users to generate a list of potential partners.
[0256] Step 5:
[0257] The server creates and prioritizes the best candidate list based on the assessed match scores. The candidate list is then sorted in order of how well it matches the user's requirements.
[0258] Step 6:
[0259] The server connects with the AI agents of the top candidates on the list and begins negotiations. Negotiations regarding terms with each candidate agent are conducted automatically.
[0260] Step 7:
[0261] The server analyzes the negotiation results and, if an agreement is reached, schedules an online meeting. It selects the optimal meeting date and time from the schedules of both the candidate and the user.
[0262] Step 8:
[0263] The server sends the coordinated schedule to the terminal and notifies the user. The user receives this notification and can confirm the meeting date.
[0264] Step 9:
[0265] If an agreement is not reached, the server uses AI to generate and send an appropriate rejection message to the candidate. Based on that, the negotiation process proceeds to the next candidate.
[0266] (Example 1)
[0267] 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."
[0268] Traditional matchmaking systems struggled to efficiently find a partner based on user-entered criteria and to smoothly guide the process towards agreement. In particular, they required finding suitable partners from a large pool of candidates and automatically scheduling mutually agreeable dates. Furthermore, they needed to respond quickly and appropriately if negotiations failed.
[0269] 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.
[0270] In this invention, the server includes means for acquiring information from the user and searching for potential partners based on that information, means for determining the degree of compatibility with each potential partner and conducting negotiations, and means for scheduling a meeting and notifying the user when an agreement is reached in the negotiations. This automates the process for users to find their ideal partner and makes it possible to create opportunities for smooth encounters.
[0271] A "user" refers to an individual who uses the system to input their information and search for their ideal partner.
[0272] "Information" refers to data, including personal profiles and conditions, that users enter into the system.
[0273] "Potential partners" refers to potential partners selected by the system based on the user's criteria.
[0274] "Device" refers to a component used within a system to perform specific information processing or data transmission / reception.
[0275] "Reaching an agreement" refers to a state where the user and the potential partner's conditions match, and consent is obtained to proceed to the next step.
[0276] "Recording" refers to the act of saving information about users and potential partners in a database.
[0277] An "information storage device" refers to a mechanism within a system for storing user and candidate information for use in later processing.
[0278] The following are examples of embodiments for carrying out this invention.
[0279] Users first use a dedicated device or application to enter their profile information and the criteria for their ideal partner. This device can be a standard smartphone or computer, configured to communicate with the server via an internet connection. Users enter information such as "age," "location," "occupation," and the "personality" and "hobbies" they seek in a partner through on-screen input forms. This information is protected on the device using SSL / TLS encryption technology and transmitted to the server.
[0280] After receiving information from the user, the server utilizes a database system to record it in a management database. The database used here is a common database management system (DBMS) that enables high-speed access and data management. The server then uses a generative AI model to search the database for partner candidates that best match the user's criteria. This AI model uses machine learning algorithms to calculate similarity scores and generate a list of candidates.
[0281] Once candidates are selected, the server uses AI agents to automatically negotiate with each candidate's AI agent. The negotiation process involves checking the degree of agreement between both parties and evaluating the likelihood of reaching an agreement. During this process, the AI agents primarily utilize natural language processing (NLP) techniques.
[0282] When negotiations reach an agreement, the server collects the schedules of both the user and the candidate from their respective calendar information and coordinates the optimal online meeting time. This scheduling process is carried out efficiently using numerous calendar APIs. The server then notifies the user of the agreed-upon date and time, creating a smooth opportunity for a meeting.
[0283] As a specific example, when a 30-year-old female user living in Tokyo enters a specific prompt of "earning 7 million yen or more annually and a male aged 30 to 35 living in Tokyo", the server extracts male candidates meeting the conditions from the database, and the AI agent proceeds with the negotiation. If an agreement is reached, an online meeting is set at 7 pm on Friday of the following week and notified to the user.
[0284] Example of prompt sentence:
[0285] "Looking for a partner aged 30, living in Tokyo, and earning 7 million yen or more annually. Please introduce someone who meets the desired partner conditions."
[0286] The flow of the specific process in Example 1 will be described using FIG. 11.
[0287] Step 1:
[0288] The user inputs their profile information and ideal partner conditions through a dedicated terminal or application. As inputs, information such as "age", "residence", "occupation", etc., and conditions required for a partner such as "personality", "hobbies", etc. are input using the input form of the terminal. After the system checks whether the input data is correctly formatted, it is encrypted and sent to the server.
[0289] Step 2:
[0290] The terminal sends the data input by the user to the server in a secure manner. As an input, it receives the user's information and performs data processing to encrypt the data using the SSL / TLS protocol. As an output, the encrypted data is sent to the server.
[0291] Step 3:
[0292] The server stores the received user information in a database. It receives encrypted data as input, decrypts it, and then processes the data by adding it as a new record in the database. As output, it stores the organized user information in the database.
[0293] Step 4:
[0294] The server uses a generative AI model to search the database for potential partners that match the user's criteria. As input, it retrieves all candidate information from the database and performs data calculations to evaluate them using the generative AI model. As output, it generates a list of multiple candidates that best match the criteria.
[0295] Step 5:
[0296] The server utilizes AI agents to negotiate with each candidate based on a candidate list. It receives a generated candidate list as input and evaluates the likelihood of agreement based on an existing algorithm. Specifically, it communicates with each candidate's AI agent and negotiates whether they best match the user's conditions. The output is a list of candidates who have reached an agreement.
[0297] Step 6:
[0298] The server, if an agreement is reached, will schedule an initial online meeting. It receives a list of agreed-upon candidates and their respective schedules as input, and uses a scheduling API to calculate the optimal meeting date and time. The server then generates the adjusted meeting date and time as output and notifies the user.
[0299] (Application Example 1)
[0300] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0301] In modern society, it is a complex and time-consuming task for an individual to find an ideal partner. In particular, manual information input and condition adjustment are burdensome, and there are problems in that efficient matching is difficult. Furthermore, appropriate follow-up is required when negotiations end in failure, but many current systems do not have a function to sufficiently handle this.
[0302] The specific processing by the specific processing unit 290 of the data processing apparatus 12 in Application Example 1 is realized by the following means.
[0303] In this invention, the server includes means for receiving voice data from a user and converting the data into text data, means for searching for candidates based on the text data and evaluating the degree of match of conditions with the candidates, and means for automatically conducting negotiations based on the evaluation result and adjusting the date and time of a meeting and notifying the user when an agreement is reached. As a result, the user can easily search for an ideal partner through voice input, negotiations automatically proceed, and appropriate responses are possible even when an agreement is not reached.
[0304] A "user" is an individual who attempts to find an ideal partner using the system.
[0305] "Voice data" is data obtained by digitally recording the voice emitted by the user to a robot or terminal.
[0306] "Text data" is data expressed as characters obtained by analyzing voice data.
[0307] A "candidate" is a partner who may be matched based on the conditions input by the user.
[0308] The "degree of match of conditions" is an index for evaluating how well the partner conditions set by the user match the attributes of the candidate.
[0309] "Negotiation" is a communication process between employers and candidates to adjust or reach an agreement on terms and conditions.
[0310] "Agreement" means that both the employer and the candidate are satisfied with the conditions and can proceed to the next step.
[0311] "Meeting date and time" refers to the date and time designated for the employer and the candidate to communicate in person or online.
[0312] "Means of notification" refers to methods or devices for communicating decided information to the user.
[0313] This invention provides support for users' matchmaking activities using a system equipped with a home robot. The home robot has a voice recognition function and receives voice data from the user as input, converting it into text data. To enable this, the robot incorporates voice recognition technology using the Google Speech-to-Text API.
[0314] The server receives and analyzes the converted text data, and uses a matching algorithm to search for suitable candidates from the database. During this process, a Support Vector Machine (SVM) algorithm implemented in Python evaluates the degree of matching. Based on the evaluation results, the server automatically negotiates, and if an agreement is reached, it uses a calendar management API (e.g., Google Calendar API) to schedule a meeting and notifies the user.
[0315] As a concrete example, the robot asks the user, "Please tell me about your ideal partner." When the user replies, "I'm looking for someone aged 30-35 with an annual income of 7 million yen or more, living in an urban area," the robot converts that information into text and sends it to the server. The server searches for candidates that match these criteria and suggests, "We have a 30-year-old who fits your criteria. Shall we schedule an online meeting?"
[0316] An example of a prompt message is as follows:
[0317] "Please check your schedule for today and set up an online meeting with your potential partner."
[0318] "Please tell us your ideal partner's criteria using voice input."
[0319] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0320] Step 1:
[0321] The user communicates their ideal partner criteria to a home robot via voice. The robot uses the Google Speech-to-Text API to convert the voice data into text data. The input is the user's voice data, and the output is the converted text data.
[0322] Step 2:
[0323] The terminal sends text data to the server. The server parses the received text data and searches the database for candidates based on matching criteria. The input is the converted text data, and the output is a list of candidates that meet the criteria. The database stores candidate information and uses the SVM algorithm implemented in Python for matching.
[0324] Step 3:
[0325] The server evaluates the degree of match between the candidate and the criteria based on the matching results. Based on the evaluation, the candidate list is prioritized. The input is the candidate list, and the output is the prioritized candidate list. This process calculates the degree of match and performs scoring.
[0326] Step 4:
[0327] The server attempts to negotiate with the most suitable partner candidate from a prioritized list. It automatically determines whether a deal can be reached with the current candidates. The input is a list of prioritized candidates, and the output is the negotiation agreement status.
[0328] Step 5:
[0329] If an agreement is reached, the server uses the calendar management API to schedule the meeting and notify the user. The input is information about the agreed-upon candidates and the user's schedule, and the output is a notification of the proposed meeting date and time.
[0330] Step 6:
[0331] If an agreement is not reached, the server will write and send an appropriate rejection message to the candidate. The input is the reason for the failure to reach an agreement and the candidate's information, and the output is the rejection message.
[0332] 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.
[0333] This invention is a matchmaking support system that takes user emotions into consideration. The AI agent efficiently searches for and negotiates with the user's ideal partner, and also has the ability to adapt the system's operation according to the user's emotional state. Its specific form is described below.
[0334] First, the user uses a dedicated terminal or application to enter their profile information and ideal partner criteria. In this initial step, the emotion engine assesses the user's current emotional state and obtains emotional data such as whether they are relaxed or stressed.
[0335] The device sends the entered information and emotional data to the server. Because this data contains sensitive information, appropriate security measures are in place.
[0336] The server stores the received data in a database and begins searching for potential partners. The AI agent identifies candidates who match the user's criteria from other users in the database, and also incorporates sentiment data obtained from the sentiment engine into the evaluation. This generates a candidate list with priority optimized by emotional state.
[0337] Once the candidate list is complete, the server automates negotiations with candidates via an AI agent. Here, the emotion engine is utilized again to adjust the pace of the negotiations to match the user's emotional state. If the user is relaxed, negotiations proceed quickly; if the user is stressed, a slower pace is chosen.
[0338] If an agreement is reached, the server will schedule an online meeting at the optimal time based on the sentiment and scheduling data of both the user and the candidate. This information will be notified to the user via their device.
[0339] As a concrete example, suppose a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and is determined to be in a calm emotional state. The server queries the database to list candidates who match the criteria, and when negotiating with candidates, it maintains a friendly and slow negotiation style to preserve the user's calm emotional state. Care is also taken to schedule online meetings at times when the user is most relaxed. In this way, by considering the user's emotions, it is possible to provide an even more personalized matchmaking experience.
[0340] The following describes the processing flow.
[0341] Step 1:
[0342] Users input their profile information and ideal partner profile using a dedicated terminal or application. This will likely include information such as age, occupation, hobbies, and desired annual income. At that time, an emotion engine evaluates the user's current emotional state based on their facial expressions and voice.
[0343] Step 2:
[0344] The terminal receives the entered information and sentiment data and immediately sends it to the server. The data is transmitted through a secure channel and managed in an orderly manner.
[0345] Step 3:
[0346] The server analyzes the received information and stores it in a database. Furthermore, it references the user's emotional data and prepares to proceed with the optimal processing, taking into account the user's current psychological state.
[0347] Step 4:
[0348] The server activates an AI agent and searches the database for other users based on the conditions specified by the user. The sentiment engine data is incorporated into the search algorithm, listing candidates that match the user's sentiment.
[0349] Step 5:
[0350] The server evaluates the degree of match with the criteria and prioritizes candidates using sentiment data. As a result, it generates the optimal list of candidates.
[0351] Step 6:
[0352] The server initiates the negotiation process with candidates through an AI agent. The negotiation is adjusted to the user's emotional state; for example, if the user is nervous, a softer tone of voice is used.
[0353] Step 7:
[0354] If an agreement is reached during negotiations, the server generates potential dates and times for an online meeting. It checks the schedules of both the user and the candidate, and determines the optimal time based on sentiment data.
[0355] Step 8:
[0356] The device receives a notification from the server, informing the user that their consent has been obtained and providing the date and time of the meeting. The user can then review this notification and proceed with preparations.
[0357] Step 9:
[0358] If an agreement is not reached, the server generates and sends an appropriate rejection message to the candidate, taking their feelings into consideration. It then prepares to negotiate with the next available candidate.
[0359] (Example 2)
[0360] 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".
[0361] In today's matchmaking market, finding an ideal partner efficiently and effectively requires significant time and effort from the user. Furthermore, the difficulty in making appropriate approaches based on established candidate lists leads to a lower success rate in negotiations. Additionally, a lack of consideration for the user's emotional state can cause stress and anxiety, potentially degrading the overall quality of the matchmaking process.
[0362] 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.
[0363] In this invention, the server includes means for receiving information from the user and searching for candidates based on that information; means for evaluating the emotional state and optimizing the candidate list based on that emotional state; and means for conducting negotiations considering the degree of matching conditions with each candidate and emotional data. This makes it possible to provide a personalized matchmaking experience that corresponds to the user's emotional state and improve the success rate of negotiations.
[0364] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0365] "Means of receiving information" refers to the function of incorporating user-provided profile data and search criteria into the system.
[0366] "Means of searching for candidates" refers to a function that searches a database based on the user's criteria and identifies suitable potential partners.
[0367] "Evaluating emotional state" refers to a technology that measures the user's current psychological state and emotions and adapts the system's operation based on that.
[0368] "Methods for optimizing the candidate list" refers to a function that prioritizes potential partners by taking into account the user's emotional state.
[0369] "Criteria match rate" is an indicator that shows how well the attributes and criteria of a candidate match the ideal partner criteria specified by the user.
[0370] "Means for conducting negotiations" refers to functions that automate communication between employers and candidates and facilitate consensus building.
[0371] "Means of adjusting schedules if an agreement is reached" refers to the process of coordinating the availability of both the employer and the candidate and setting up events or meetings on a schedule that is convenient for both parties.
[0372] This system's implementation utilizes an AI agent aimed at supporting matchmaking, efficiently searching for and negotiating with ideal partner candidates while taking into account the user's emotional state.
[0373] First, users use a dedicated terminal or application to input their profile information and criteria for their ideal partner. The input information is then used by an emotion engine to evaluate the user's emotional state in real time, and data such as stress and relaxation levels are collected.
[0374] The device then encrypts the entered profile information and acquired sentiment data and sends it to the server. The server receives this data and stores the information in its database.
[0375] The server uses an AI agent to search the database for partner candidates that match the criteria entered by the user. The AI agent uses a generative AI model to perform a detailed analysis of candidate information based on natural language processing. Furthermore, it evaluates data from the emotion engine and generates a candidate list based on optimized priorities according to the user's emotional state.
[0376] Once a list is generated, the server, via an AI agent, automates negotiations with candidates, adjusting the pace and style to match the user's emotional state. If an agreement is reached, the system uses the emotional and scheduling data of both parties to set up an online meeting at the optimal time and notifies the user of this information via their device.
[0377] As a concrete example, if a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and the system determines that the user is in a calm emotional state, it will use a generative AI model to quickly select a suitable partner and conduct friendly negotiations. This negotiation will use the following prompt as an example: "A female user in her 30s is looking for a partner who shares outdoor hobbies. She is currently in a relaxed state. Please generate a list of suitable candidates, taking priority into consideration."
[0378] In this way, the system provides an intelligent matchmaking experience that takes emotions into account.
[0379] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0380] Step 1:
[0381] Users enter their profile information (e.g., age, occupation, hobbies, etc.) and ideal partner criteria using a dedicated terminal or application. This input is collected through a UI interface. The entered data is processed by an emotion engine to evaluate the user's current emotional state, generating emotional data such as relaxed or stressed. The output provides the user's profile information and emotional data.
[0382] Step 2:
[0383] The device encrypts the collected profile information and sentiment data and sends it to the server. This process employs encryption protocols to ensure data security. It receives user profile information and sentiment data as input and sends the encrypted data to the server as output.
[0384] Step 3:
[0385] The server receives data sent from the terminal and stores it in the database. In this phase, the database management system is used to structure the information and make it available for subsequent search processes. It receives encrypted user information and sentiment data as input and stores the information in the database as output.
[0386] Step 4:
[0387] The server uses an AI agent to search the database for potential partners that match the user's criteria. This process utilizes generative AI models and natural language processing techniques to improve the accuracy of candidate selection. Using the user's criteria and sentiment data stored as input, it generates a list of suitable candidates as output.
[0388] Step 5:
[0389] The server uses an emotion engine to optimize the candidate list based on the user's emotional state. In this step, quick responses are prioritized when the user is relaxed, while a more cautious approach is taken when the user is stressed. The server receives the generated candidate list and emotion data as input and outputs an optimized candidate list adapted to the emotional state.
[0390] Step 6:
[0391] The server automates negotiations with candidates via an AI agent, adjusting the pace and style based on sentiment data. For example, the sentiment engine selects a swift or cautious negotiation stance. It uses an optimized candidate list as input and negotiation results and, where possible, agreements as output.
[0392] Step 7:
[0393] If an agreement is reached, the server will take into account the user's and candidate's sentiments and schedule data to set up an online meeting at the optimal time. The configured information will be notified to the user via their device. The server will use the negotiation agreement information and schedule data as input and provide the user with the date, time, and details of the online meeting as output.
[0394] (Application Example 2)
[0395] 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."
[0396] Conventional matchmaking support systems often fail to adequately address the emotional state of users, leading to stress and discomfort. Therefore, there is a need for a system that considers the user's emotional state and provides personalized matchmaking support that is empathetic to their feelings.
[0397] 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.
[0398] This invention includes a server that receives attribute information and emotional information from the user, searches for candidates based on this information, and optimizes priorities according to the user's emotional state; evaluates the degree of match with each candidate, conducts negotiations, and adjusts the progress of negotiations according to the user's emotional state; and, when an agreement is reached in the negotiations, adjusts the schedule at the optimal timing based on the user's emotional information and scheduling information, and notifies the user. This enables personalized matchmaking support that takes the user's emotions into consideration.
[0399] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0400] "Attribute information" refers to information that includes the conditions and characteristics of the partner the user desires.
[0401] "Emotional information" refers to data that indicates the user's current emotional state.
[0402] A "candidate" refers to a partner who is being considered based on the user's ideals and requirements.
[0403] "Methods for optimizing priorities" refer to methods and techniques for adjusting candidate lists according to the user's emotional state.
[0404] "Condition Match" is a measure that indicates the degree to which the conditions set by the employer match the conditions of the candidate.
[0405] "Negotiation" refers to communication aimed at building relationships and adjusting terms between employers and candidates.
[0406] "Means of adjusting the progress" refers to methods and techniques for adjusting the speed and method of negotiation to suit the user's emotions.
[0407] "Means for adjusting schedules and notifying users" refers to methods and technologies for setting agreed-upon schedules at the optimal time and notifying users of them.
[0408] "Emotionally responsive communication" is a method of dialogue that responds according to the user's emotional state, providing a sense of security and comfort.
[0409] This system consists of a user terminal, a server, and emotion recognition software. The terminal receives attribute and emotion information from the user as input and transmits the data to the server using a secure communication protocol. To evaluate the user's emotional state, the terminal uses a microphone for voice input and a camera to read facial expressions. This allows for the collection of emotion data in real time.
[0410] The server searches a database based on the received information and lists candidates that match the user's criteria. Furthermore, it optimizes candidate prioritization based on sentiment information. To do this, an AI model is used to analyze sentiment data and apply an optimization algorithm. Server-side processing may utilize high-performance cloud infrastructure for data processing and specialized processing units to run the AI model.
[0411] Once the candidate list is generated, the server adjusts the negotiation process. It dynamically manages the negotiations so that reaching an agreement with the candidates proceeds at a pace that suits the user's emotions. For example, if the user is stressed, the negotiations proceed slowly, and if they are relaxed, they proceed quickly. This process can utilize natural language processing techniques that leverage emotion recognition technology.
[0412] If the user and candidate reach an agreement, the server will schedule an online meeting at the optimal time based on both parties' schedules and emotional states. This information will then be communicated back to the user via their device.
[0413] For example, if a user enters "someone in their 30s who shares outdoor hobbies" as their desired criteria, and the server determines they are in a relaxed state, the server will generate a list of candidates, quickly proceed with negotiations, and schedule online meetings during a time when they can relax.
[0414] Examples of prompts to input into a generative AI model:
[0415] "Optimize the priority of the candidate list to match the user's calm emotional state. Also, suggest topics that will help the user relax."
[0416] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0417] Step 1:
[0418] Users input attribute and emotional information using a device. This input includes text-based conditions and emotional expressions using voice and images. The device converts voice input to text and analyzes facial expressions from images captured by the camera to generate emotional data. This data is transmitted to the server via a secure communication protocol.
[0419] Step 2:
[0420] The server analyzes the data received from the terminal and performs a database search. It lists candidates that match the user's criteria and calculates the degree of match. It also analyzes emotional information using an AI model and optimizes candidate priorities based on their emotional state. Based on the analysis results, it generates a list and creates a candidate list with adjusted priorities.
[0421] Step 3:
[0422] The server initiates negotiations with candidates based on the generated list. It utilizes natural language processing to design conversation content tailored to the user's emotional state. For example, if the user is relaxed, it generates messages in a frank tone; if they are stressed, it develops topics in a calm tone. The progress of the negotiations is adjusted by continuously analyzing the user's emotional data.
[0423] Step 4:
[0424] If an agreement is reached during negotiations, the server will coordinate the schedules of both the user and the candidate. It will combine sentiment information and scheduling data to suggest the optimal date and time for an online meeting. The suggested date and time will be notified to the user again via their device, and if accepted, the meeting will be added to the schedule.
[0425] Step 5:
[0426] When notifying users, the system utilizes a generated AI model to suggest actions that address emotional needs. For example, it might send suggestions for relaxation, such as playing background music tailored to a relaxing topic or suggesting deep breathing exercises. User feedback is also collected and used to improve the system.
[0427] 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.
[0428] 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.
[0429] 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.
[0430] [Third Embodiment]
[0431] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0432] 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.
[0433] 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).
[0434] 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.
[0435] 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.
[0436] 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).
[0437] 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.
[0438] 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.
[0439] 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.
[0440] 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.
[0441] 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.
[0442] 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".
[0443] This invention is a matchmaking support system that utilizes an AI agent. Based on the user's input information, it searches for ideal partner candidates and, if an agreement is reached, proceeds to the next step. The specific form of this system is described below.
[0444] First, users use a dedicated terminal or application to enter their profile information and ideal partner criteria. The system then collects the necessary information. Users enter basic information such as age, location, and occupation, as well as criteria such as personality and hobbies they seek in a partner.
[0445] Next, the terminal sends this information received from the user to the server. The server processes the received information and stores it in a database. The database also contains information about other users, and this information is used to search for potential partners.
[0446] The server uses an AI agent to search its database for candidates that match the received criteria and creates a list. The AI agent is equipped with an algorithm to determine how well the candidates' criteria match the user's preferences.
[0447] The AI agent then begins negotiations with the user's candidate list, one candidate at a time. It automates the process of systematically negotiating terms with each candidate's AI agent and leading to an agreement. If an agreement is reached, the system then sets the date for the first online meeting.
[0448] The server coordinates the schedules of both candidates and users, recommends the optimal meeting time, and notifies the user of that time, creating a smooth opportunity for them to meet.
[0449] As a concrete example, a 30-year-old female user living in Tokyo enters her requirements, stating that she is looking for a man aged 30-35 who lives in Tokyo and earns over 7 million yen annually. The server searches its database for male candidates who may meet the submitted criteria and creates a list. The AI agent then negotiates with the candidates in order of matching criteria, and once an agreement is reached, it sets up an online meeting for 7 PM on the following Friday and notifies the user.
[0450] Thus, the present invention provides a system that allows users to efficiently meet their ideal partner and proceed with their marriage search without stress.
[0451] The following describes the processing flow.
[0452] Step 1:
[0453] Users enter their profile information and the criteria for their ideal partner using a dedicated terminal or application. This includes information such as age, occupation, annual income, and hobbies.
[0454] Step 2:
[0455] The terminal receives the entered information and prepares it for transmission to the server. It delivers accurate data to the server while maintaining security.
[0456] Step 3:
[0457] The server receives information sent from the terminal. The received information is organized by user and recorded in a database on the server. This makes it available for use in subsequent processing.
[0458] Step 4:
[0459] An AI agent installed on the server searches the database for candidates based on the user's criteria. It evaluates the degree of matching with all registered users to generate a list of potential partners.
[0460] Step 5:
[0461] The server creates and prioritizes the best candidate list based on the assessed match scores. The candidate list is then sorted in order of how well it matches the user's requirements.
[0462] Step 6:
[0463] The server connects with the AI agents of the top candidates on the list and begins negotiations. Negotiations regarding terms with each candidate agent are conducted automatically.
[0464] Step 7:
[0465] The server analyzes the negotiation results and, if an agreement is reached, schedules an online meeting. It selects the optimal meeting date and time from the schedules of both the candidate and the user.
[0466] Step 8:
[0467] The server sends the coordinated schedule to the terminal and notifies the user. The user receives this notification and can confirm the meeting date.
[0468] Step 9:
[0469] If an agreement is not reached, the server uses AI to generate and send an appropriate rejection message to the candidate. Based on that, the negotiation process proceeds to the next candidate.
[0470] (Example 1)
[0471] 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."
[0472] Traditional matchmaking systems struggled to efficiently find a partner based on user-entered criteria and to smoothly guide the process towards agreement. In particular, they required finding suitable partners from a large pool of candidates and automatically scheduling mutually agreeable dates. Furthermore, they needed to respond quickly and appropriately if negotiations failed.
[0473] 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.
[0474] In this invention, the server includes means for acquiring information from the user and searching for potential partners based on that information, means for determining the degree of compatibility with each potential partner and conducting negotiations, and means for scheduling a meeting and notifying the user when an agreement is reached in the negotiations. This automates the process for users to find their ideal partner and makes it possible to create opportunities for smooth encounters.
[0475] A "user" refers to an individual who uses the system to input their information and search for their ideal partner.
[0476] "Information" refers to data, including personal profiles and conditions, that users enter into the system.
[0477] "Potential partners" refers to potential partners selected by the system based on the user's criteria.
[0478] "Device" refers to a component used within a system to perform specific information processing or data transmission / reception.
[0479] "Reaching an agreement" refers to a state where the user and the potential partner's conditions match, and consent is obtained to proceed to the next step.
[0480] "Recording" refers to the act of saving information about users and potential partners in a database.
[0481] An "information storage device" refers to a mechanism within a system for storing user and candidate information for use in later processing.
[0482] The following are examples of embodiments for carrying out this invention.
[0483] Users first use a dedicated device or application to enter their profile information and the criteria for their ideal partner. This device can be a standard smartphone or computer, configured to communicate with the server via an internet connection. Users enter information such as "age," "location," "occupation," and the "personality" and "hobbies" they seek in a partner through on-screen input forms. This information is protected on the device using SSL / TLS encryption technology and transmitted to the server.
[0484] After receiving information from the user, the server utilizes a database system to record it in a management database. The database used here is a common database management system (DBMS) that enables high-speed access and data management. The server then uses a generative AI model to search the database for partner candidates that best match the user's criteria. This AI model uses machine learning algorithms to calculate similarity scores and generate a list of candidates.
[0485] Once candidates are selected, the server uses AI agents to automatically negotiate with each candidate's AI agent. The negotiation process involves checking the degree of agreement between both parties and evaluating the likelihood of reaching an agreement. During this process, the AI agents primarily utilize natural language processing (NLP) techniques.
[0486] When negotiations reach an agreement, the server collects the schedules of both the user and the candidate from their respective calendar information and coordinates the optimal online meeting time. This scheduling process is carried out efficiently using numerous calendar APIs. The server then notifies the user of the agreed-upon date and time, creating a smooth opportunity for a meeting.
[0487] For example, if a 30-year-old female user living in Tokyo enters the specific prompt "a man aged 30-35 living in Tokyo with an annual income of 7 million yen or more," the server will extract suitable male candidates from its database, and an AI agent will proceed with negotiations. If an agreement is reached, an online meeting will be scheduled for 7 PM on the following Friday, and the user will be notified.
[0488] Example of a prompt:
[0489] "I'm looking for a partner who is 30 years old, lives in Tokyo, and earns over 7 million yen annually. Please introduce me to someone who meets my desired partner criteria."
[0490] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0491] Step 1:
[0492] Users enter their profile information and ideal partner criteria through a dedicated terminal or application. This includes information such as age, location, and occupation, as well as desired partner characteristics like personality and hobbies, entered using the terminal's input form. The system checks the entered data for correct formatting before encrypting it and sending it to the server.
[0493] Step 2:
[0494] The terminal securely transmits user-entered data to the server. It receives user information as input and performs data processing, encrypting the data using the SSL / TLS protocol. As output, it sends the encrypted data to the server.
[0495] Step 3:
[0496] The server stores the received user information in a database. It receives encrypted data as input, decrypts it, and then processes the data by adding it as a new record in the database. As output, it stores the organized user information in the database.
[0497] Step 4:
[0498] The server uses a generative AI model to search the database for potential partners that match the user's criteria. As input, it retrieves all candidate information from the database and performs data calculations to evaluate them using the generative AI model. As output, it generates a list of multiple candidates that best match the criteria.
[0499] Step 5:
[0500] The server utilizes AI agents to negotiate with each candidate based on a candidate list. It receives a generated candidate list as input and evaluates the likelihood of agreement based on an existing algorithm. Specifically, it communicates with each candidate's AI agent and negotiates whether they best match the user's conditions. The output is a list of candidates who have reached an agreement.
[0501] Step 6:
[0502] The server, if an agreement is reached, will schedule an initial online meeting. It receives a list of agreed-upon candidates and their respective schedules as input, and uses a scheduling API to calculate the optimal meeting date and time. The server then generates the adjusted meeting date and time as output and notifies the user.
[0503] (Application Example 1)
[0504] 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."
[0505] In modern society, finding an ideal partner is a complex and time-consuming task. In particular, manual data entry and condition adjustments are burdensome, making efficient matching difficult. Furthermore, proper follow-up is required when negotiations fail, but many current systems lack the functionality to adequately handle this.
[0506] 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.
[0507] In this invention, the server includes means for receiving voice data from the user and converting the data into text data; means for searching for candidates based on the text data and evaluating the degree of match with the candidates; and means for automatically conducting negotiations based on the evaluation results, and if an agreement is reached, adjusting the date and time of the meeting and notifying the user. This allows the user to easily find an ideal partner through voice input, negotiations to proceed automatically, and appropriate action to be taken even if an agreement is not reached.
[0508] A "user" is an individual who uses the system to find their ideal partner.
[0509] "Voice data" refers to digital recordings of voices spoken by the user to a robot or device.
[0510] "Text data" refers to data expressed as characters obtained by analyzing audio data.
[0511] A "candidate" is a potential partner who may be matched based on the criteria entered by the user.
[0512] "Criteria match rate" is an indicator that evaluates how well the candidate's attributes match the partner criteria set by the user.
[0513] "Negotiation" is a communication process between employers and candidates to adjust or reach an agreement on terms and conditions.
[0514] "Agreement" means that both the employer and the candidate are satisfied with the conditions and can proceed to the next step.
[0515] "Meeting date and time" refers to the date and time designated for the employer and the candidate to communicate in person or online.
[0516] "Means of notification" refers to methods or devices for communicating decided information to the user.
[0517] This invention provides support for users' matchmaking activities using a system equipped with a home robot. The home robot has a voice recognition function and receives voice data from the user as input, converting it into text data. To enable this, the robot incorporates voice recognition technology using the Google Speech-to-Text API.
[0518] The server receives and analyzes the converted text data, and uses a matching algorithm to search for suitable candidates from the database. During this process, a Support Vector Machine (SVM) algorithm implemented in Python evaluates the degree of matching. Based on the evaluation results, the server automatically negotiates, and if an agreement is reached, it uses a calendar management API (e.g., Google Calendar API) to schedule a meeting and notifies the user.
[0519] As a concrete example, the robot asks the user, "Please tell me about your ideal partner." When the user replies, "I'm looking for someone aged 30-35 with an annual income of 7 million yen or more, living in an urban area," the robot converts that information into text and sends it to the server. The server searches for candidates that match these criteria and suggests, "We have a 30-year-old who fits your criteria. Shall we schedule an online meeting?"
[0520] An example of a prompt message is as follows:
[0521] "Please check your schedule for today and set up an online meeting with your potential partner."
[0522] "Please tell us your ideal partner's criteria using voice input."
[0523] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0524] Step 1:
[0525] The user communicates their ideal partner criteria to a home robot via voice. The robot uses the Google Speech-to-Text API to convert the voice data into text data. The input is the user's voice data, and the output is the converted text data.
[0526] Step 2:
[0527] The terminal sends text data to the server. The server parses the received text data and searches the database for candidates based on matching criteria. The input is the converted text data, and the output is a list of candidates that meet the criteria. The database stores candidate information and uses the SVM algorithm implemented in Python for matching.
[0528] Step 3:
[0529] The server evaluates the degree of match between the candidate and the criteria based on the matching results. Based on the evaluation, the candidate list is prioritized. The input is the candidate list, and the output is the prioritized candidate list. This process calculates the degree of match and performs scoring.
[0530] Step 4:
[0531] The server attempts to negotiate with the most suitable partner candidate from a prioritized list. It automatically determines whether a deal can be reached with the current candidates. The input is a list of prioritized candidates, and the output is the negotiation agreement status.
[0532] Step 5:
[0533] If an agreement is reached, the server uses the calendar management API to schedule the meeting and notify the user. The input is information about the agreed-upon candidates and the user's schedule, and the output is a notification of the proposed meeting date and time.
[0534] Step 6:
[0535] If an agreement is not reached, the server will write and send an appropriate rejection message to the candidate. The input is the reason for the failure to reach an agreement and the candidate's information, and the output is the rejection message.
[0536] 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.
[0537] This invention is a matchmaking support system that takes user emotions into consideration. The AI agent efficiently searches for and negotiates with the user's ideal partner, and also has the ability to adapt the system's operation according to the user's emotional state. Its specific form is described below.
[0538] First, the user uses a dedicated terminal or application to enter their profile information and ideal partner criteria. In this initial step, the emotion engine assesses the user's current emotional state and obtains emotional data such as whether they are relaxed or stressed.
[0539] The device sends the entered information and emotional data to the server. Because this data contains sensitive information, appropriate security measures are in place.
[0540] The server stores the received data in a database and begins searching for potential partners. The AI agent identifies candidates who match the user's criteria from other users in the database, and also incorporates sentiment data obtained from the sentiment engine into the evaluation. This generates a candidate list with priority optimized by emotional state.
[0541] Once the candidate list is complete, the server automates negotiations with candidates via an AI agent. Here, the emotion engine is utilized again to adjust the pace of the negotiations to match the user's emotional state. If the user is relaxed, negotiations proceed quickly; if the user is stressed, a slower pace is chosen.
[0542] If an agreement is reached, the server will schedule an online meeting at the optimal time based on the sentiment and scheduling data of both the user and the candidate. This information will be notified to the user via their device.
[0543] As a concrete example, suppose a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and is determined to be in a calm emotional state. The server queries the database to list candidates who match the criteria, and when negotiating with candidates, it maintains a friendly and slow negotiation style to preserve the user's calm emotional state. Care is also taken to schedule online meetings at times when the user is most relaxed. In this way, by considering the user's emotions, it is possible to provide an even more personalized matchmaking experience.
[0544] The following describes the processing flow.
[0545] Step 1:
[0546] Users input their profile information and ideal partner profile using a dedicated terminal or application. This will likely include information such as age, occupation, hobbies, and desired annual income. At that time, an emotion engine evaluates the user's current emotional state based on their facial expressions and voice.
[0547] Step 2:
[0548] The terminal receives the entered information and sentiment data and immediately sends it to the server. The data is transmitted through a secure channel and managed in an orderly manner.
[0549] Step 3:
[0550] The server analyzes the received information and stores it in a database. Furthermore, it references the user's emotional data and prepares to proceed with the optimal processing, taking into account the user's current psychological state.
[0551] Step 4:
[0552] The server activates an AI agent and searches the database for other users based on the conditions specified by the user. The sentiment engine data is incorporated into the search algorithm, listing candidates that match the user's sentiment.
[0553] Step 5:
[0554] The server evaluates the degree of match with the criteria and prioritizes candidates using sentiment data. As a result, it generates the optimal list of candidates.
[0555] Step 6:
[0556] The server initiates the negotiation process with candidates through an AI agent. The negotiation is adjusted to the user's emotional state; for example, if the user is nervous, a softer tone of voice is used.
[0557] Step 7:
[0558] If an agreement is reached during negotiations, the server generates potential dates and times for an online meeting. It checks the schedules of both the user and the candidate, and determines the optimal time based on sentiment data.
[0559] Step 8:
[0560] The device receives a notification from the server, informing the user that their consent has been obtained and providing the date and time of the meeting. The user can then review this notification and proceed with preparations.
[0561] Step 9:
[0562] If an agreement is not reached, the server generates and sends an appropriate rejection message to the candidate, taking their feelings into consideration. It then prepares to negotiate with the next available candidate.
[0563] (Example 2)
[0564] 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."
[0565] In today's matchmaking market, finding an ideal partner efficiently and effectively requires significant time and effort from the user. Furthermore, the difficulty in making appropriate approaches based on established candidate lists leads to a lower success rate in negotiations. Additionally, a lack of consideration for the user's emotional state can cause stress and anxiety, potentially degrading the overall quality of the matchmaking process.
[0566] 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.
[0567] In this invention, the server includes means for receiving information from the user and searching for candidates based on that information; means for evaluating the emotional state and optimizing the candidate list based on that emotional state; and means for conducting negotiations considering the degree of matching conditions with each candidate and emotional data. This makes it possible to provide a personalized matchmaking experience that corresponds to the user's emotional state and improve the success rate of negotiations.
[0568] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0569] "Means of receiving information" refers to the function of incorporating user-provided profile data and search criteria into the system.
[0570] "Means of searching for candidates" refers to a function that searches a database based on the user's criteria and identifies suitable potential partners.
[0571] "Evaluating emotional state" refers to a technology that measures the user's current psychological state and emotions and adapts the system's operation based on that.
[0572] "Methods for optimizing the candidate list" refers to a function that prioritizes potential partners by taking into account the user's emotional state.
[0573] "Criteria match rate" is an indicator that shows how well the attributes and criteria of a candidate match the ideal partner criteria specified by the user.
[0574] "Means for conducting negotiations" refers to functions that automate communication between employers and candidates and facilitate consensus building.
[0575] "Means of adjusting schedules if an agreement is reached" refers to the process of coordinating the availability of both the employer and the candidate and setting up events or meetings on a schedule that is convenient for both parties.
[0576] This system's implementation utilizes an AI agent aimed at supporting matchmaking, efficiently searching for and negotiating with ideal partner candidates while taking into account the user's emotional state.
[0577] First, users use a dedicated terminal or application to input their profile information and criteria for their ideal partner. The input information is then used by an emotion engine to evaluate the user's emotional state in real time, and data such as stress and relaxation levels are collected.
[0578] The device then encrypts the entered profile information and acquired sentiment data and sends it to the server. The server receives this data and stores the information in its database.
[0579] The server uses an AI agent to search the database for partner candidates that match the criteria entered by the user. The AI agent uses a generative AI model to perform a detailed analysis of candidate information based on natural language processing. Furthermore, it evaluates data from the emotion engine and generates a candidate list based on optimized priorities according to the user's emotional state.
[0580] Once a list is generated, the server, via an AI agent, automates negotiations with candidates, adjusting the pace and style to match the user's emotional state. If an agreement is reached, the system uses the emotional and scheduling data of both parties to set up an online meeting at the optimal time and notifies the user of this information via their device.
[0581] As a concrete example, if a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and the system determines that the user is in a calm emotional state, it will use a generative AI model to quickly select a suitable partner and conduct friendly negotiations. This negotiation will use the following prompt as an example: "A female user in her 30s is looking for a partner who shares outdoor hobbies. She is currently in a relaxed state. Please generate a list of suitable candidates, taking priority into consideration."
[0582] In this way, the system provides an intelligent matchmaking experience that takes emotions into account.
[0583] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0584] Step 1:
[0585] Users enter their profile information (e.g., age, occupation, hobbies, etc.) and ideal partner criteria using a dedicated terminal or application. This input is collected through a UI interface. The entered data is processed by an emotion engine to evaluate the user's current emotional state, generating emotional data such as relaxed or stressed. The output provides the user's profile information and emotional data.
[0586] Step 2:
[0587] The device encrypts the collected profile information and sentiment data and sends it to the server. This process employs encryption protocols to ensure data security. It receives user profile information and sentiment data as input and sends the encrypted data to the server as output.
[0588] Step 3:
[0589] The server receives data sent from the terminal and stores it in the database. In this phase, the database management system is used to structure the information and make it available for subsequent search processes. It receives encrypted user information and sentiment data as input and stores the information in the database as output.
[0590] Step 4:
[0591] The server uses an AI agent to search the database for potential partners that match the user's criteria. This process utilizes generative AI models and natural language processing techniques to improve the accuracy of candidate selection. Using the user's criteria and sentiment data stored as input, it generates a list of suitable candidates as output.
[0592] Step 5:
[0593] The server uses an emotion engine to optimize the candidate list based on the user's emotional state. In this step, quick responses are prioritized when the user is relaxed, while a more cautious approach is taken when the user is stressed. The server receives the generated candidate list and emotion data as input and outputs an optimized candidate list adapted to the emotional state.
[0594] Step 6:
[0595] The server automates negotiations with candidates via an AI agent, adjusting the pace and style based on sentiment data. For example, the sentiment engine selects a swift or cautious negotiation stance. It uses an optimized candidate list as input and negotiation results and, where possible, agreements as output.
[0596] Step 7:
[0597] If an agreement is reached, the server will take into account the user's and candidate's sentiments and schedule data to set up an online meeting at the optimal time. The configured information will be notified to the user via their device. The server will use the negotiation agreement information and schedule data as input and provide the user with the date, time, and details of the online meeting as output.
[0598] (Application Example 2)
[0599] 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."
[0600] Conventional matchmaking support systems often fail to adequately address the emotional state of users, leading to stress and discomfort. Therefore, there is a need for a system that considers the user's emotional state and provides personalized matchmaking support that is empathetic to their feelings.
[0601] 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.
[0602] This invention includes a server that receives attribute information and emotional information from the user, searches for candidates based on this information, and optimizes priorities according to the user's emotional state; evaluates the degree of match with each candidate, conducts negotiations, and adjusts the progress of negotiations according to the user's emotional state; and, when an agreement is reached in the negotiations, adjusts the schedule at the optimal timing based on the user's emotional information and scheduling information, and notifies the user. This enables personalized matchmaking support that takes the user's emotions into consideration.
[0603] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0604] "Attribute information" refers to information that includes the conditions and characteristics of the partner the user desires.
[0605] "Emotional information" refers to data that indicates the user's current emotional state.
[0606] A "candidate" refers to a partner who is being considered based on the user's ideals and requirements.
[0607] "Methods for optimizing priorities" refer to methods and techniques for adjusting candidate lists according to the user's emotional state.
[0608] "Condition Match" is a measure that indicates the degree to which the conditions set by the employer match the conditions of the candidate.
[0609] "Negotiation" refers to communication aimed at building relationships and adjusting terms between employers and candidates.
[0610] "Means of adjusting the progress" refers to methods and techniques for adjusting the speed and method of negotiation to suit the user's emotions.
[0611] "Means for adjusting schedules and notifying users" refers to methods and technologies for setting agreed-upon schedules at the optimal time and notifying users of them.
[0612] "Emotionally responsive communication" is a method of dialogue that responds according to the user's emotional state, providing a sense of security and comfort.
[0613] This system consists of a user terminal, a server, and emotion recognition software. The terminal receives attribute and emotion information from the user as input and transmits the data to the server using a secure communication protocol. To evaluate the user's emotional state, the terminal uses a microphone for voice input and a camera to read facial expressions. This allows for the collection of emotion data in real time.
[0614] The server searches a database based on the received information and lists candidates that match the user's criteria. Furthermore, it optimizes candidate prioritization based on sentiment information. To do this, an AI model is used to analyze sentiment data and apply an optimization algorithm. Server-side processing may utilize high-performance cloud infrastructure for data processing and specialized processing units to run the AI model.
[0615] Once the candidate list is generated, the server adjusts the negotiation process. It dynamically manages the negotiations so that reaching an agreement with the candidates proceeds at a pace that suits the user's emotions. For example, if the user is stressed, the negotiations proceed slowly, and if they are relaxed, they proceed quickly. This process can utilize natural language processing techniques that leverage emotion recognition technology.
[0616] If the user and candidate reach an agreement, the server will schedule an online meeting at the optimal time based on both parties' schedules and emotional states. This information will then be communicated back to the user via their device.
[0617] For example, if a user enters "someone in their 30s who shares outdoor hobbies" as their desired criteria, and the server determines they are in a relaxed state, the server will generate a list of candidates, quickly proceed with negotiations, and schedule online meetings during a time when they can relax.
[0618] Examples of prompts to input into a generative AI model:
[0619] "Optimize the priority of the candidate list to match the user's calm emotional state. Also, suggest topics that will help the user relax."
[0620] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0621] Step 1:
[0622] Users input attribute and emotional information using a device. This input includes text-based conditions and emotional expressions using voice and images. The device converts voice input to text and analyzes facial expressions from images captured by the camera to generate emotional data. This data is transmitted to the server via a secure communication protocol.
[0623] Step 2:
[0624] The server analyzes the data received from the terminal and performs a database search. It lists candidates that match the user's criteria and calculates the degree of match. It also analyzes emotional information using an AI model and optimizes candidate priorities based on their emotional state. Based on the analysis results, it generates a list and creates a candidate list with adjusted priorities.
[0625] Step 3:
[0626] The server initiates negotiations with candidates based on the generated list. It utilizes natural language processing to design conversation content tailored to the user's emotional state. For example, if the user is relaxed, it generates messages in a frank tone; if they are stressed, it develops topics in a calm tone. The progress of the negotiations is adjusted by continuously analyzing the user's emotional data.
[0627] Step 4:
[0628] If an agreement is reached during negotiations, the server will coordinate the schedules of both the user and the candidate. It will combine sentiment information and scheduling data to suggest the optimal date and time for an online meeting. The suggested date and time will be notified to the user again via their device, and if accepted, the meeting will be added to the schedule.
[0629] Step 5:
[0630] When notifying users, the system utilizes a generated AI model to suggest actions that address emotional needs. For example, it might send suggestions for relaxation, such as playing background music tailored to a relaxing topic or suggesting deep breathing exercises. User feedback is also collected and used to improve the system.
[0631] 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.
[0632] 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.
[0633] 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.
[0634] [Fourth Embodiment]
[0635] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[0636] 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.
[0637] 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).
[0638] 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.
[0639] 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.
[0640] 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).
[0641] 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.
[0642] 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.
[0643] 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.
[0644] 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.
[0645] 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.
[0646] 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.
[0647] 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".
[0648] This invention is a matchmaking support system that utilizes an AI agent. Based on the user's input information, it searches for ideal partner candidates and, if an agreement is reached, proceeds to the next step. The specific form of this system is described below.
[0649] First, users use a dedicated terminal or application to enter their profile information and ideal partner criteria. The system then collects the necessary information. Users enter basic information such as age, location, and occupation, as well as criteria such as personality and hobbies they seek in a partner.
[0650] Next, the terminal sends this information received from the user to the server. The server processes the received information and stores it in a database. The database also contains information about other users, and this information is used to search for potential partners.
[0651] The server uses an AI agent to search its database for candidates that match the received criteria and creates a list. The AI agent is equipped with an algorithm to determine how well the candidates' criteria match the user's preferences.
[0652] The AI agent then begins negotiations with the user's candidate list, one candidate at a time. It automates the process of systematically negotiating terms with each candidate's AI agent and leading to an agreement. If an agreement is reached, the system then sets the date for the first online meeting.
[0653] The server coordinates the schedules of both candidates and users, recommends the optimal meeting time, and notifies the user of that time, creating a smooth opportunity for them to meet.
[0654] As a concrete example, a 30-year-old female user living in Tokyo enters her requirements, stating that she is looking for a man aged 30-35 who lives in Tokyo and earns over 7 million yen annually. The server searches its database for male candidates who may meet the submitted criteria and creates a list. The AI agent then negotiates with the candidates in order of matching criteria, and once an agreement is reached, it sets up an online meeting for 7 PM on the following Friday and notifies the user.
[0655] Thus, the present invention provides a system that allows users to efficiently meet their ideal partner and proceed with their marriage search without stress.
[0656] The following describes the processing flow.
[0657] Step 1:
[0658] Users enter their profile information and the criteria for their ideal partner using a dedicated terminal or application. This includes information such as age, occupation, annual income, and hobbies.
[0659] Step 2:
[0660] The terminal receives the entered information and prepares it for transmission to the server. It delivers accurate data to the server while maintaining security.
[0661] Step 3:
[0662] The server receives information sent from the terminal. The received information is organized by user and recorded in a database on the server. This makes it available for use in subsequent processing.
[0663] Step 4:
[0664] An AI agent installed on the server searches the database for candidates based on the user's criteria. It evaluates the degree of matching with all registered users to generate a list of potential partners.
[0665] Step 5:
[0666] The server creates and prioritizes the best candidate list based on the assessed match scores. The candidate list is then sorted in order of how well it matches the user's requirements.
[0667] Step 6:
[0668] The server connects with the AI agents of the top candidates on the list and begins negotiations. Negotiations regarding terms with each candidate agent are conducted automatically.
[0669] Step 7:
[0670] The server analyzes the negotiation results and, if an agreement is reached, schedules an online meeting. It selects the optimal meeting date and time from the schedules of both the candidate and the user.
[0671] Step 8:
[0672] The server sends the coordinated schedule to the terminal and notifies the user. The user receives this notification and can confirm the meeting date.
[0673] Step 9:
[0674] If an agreement is not reached, the server uses AI to generate and send an appropriate rejection message to the candidate. Based on that, the negotiation process proceeds to the next candidate.
[0675] (Example 1)
[0676] 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".
[0677] Traditional matchmaking systems struggled to efficiently find a partner based on user-entered criteria and to smoothly guide the process towards agreement. In particular, they required finding suitable partners from a large pool of candidates and automatically scheduling mutually agreeable dates. Furthermore, they needed to respond quickly and appropriately if negotiations failed.
[0678] 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.
[0679] In this invention, the server includes means for acquiring information from the user and searching for potential partners based on that information, means for determining the degree of compatibility with each potential partner and conducting negotiations, and means for scheduling a meeting and notifying the user when an agreement is reached in the negotiations. This automates the process for users to find their ideal partner and makes it possible to create opportunities for smooth encounters.
[0680] A "user" refers to an individual who uses the system to input their information and search for their ideal partner.
[0681] "Information" refers to data, including personal profiles and conditions, that users enter into the system.
[0682] "Potential partners" refers to potential partners selected by the system based on the user's criteria.
[0683] "Device" refers to a component used within a system to perform specific information processing or data transmission / reception.
[0684] "Reaching an agreement" refers to a state where the user and the potential partner's conditions match, and consent is obtained to proceed to the next step.
[0685] "Recording" refers to the act of saving information about users and potential partners in a database.
[0686] An "information storage device" refers to a mechanism within a system for storing user and candidate information for use in later processing.
[0687] The following are examples of embodiments for carrying out this invention.
[0688] Users first use a dedicated device or application to enter their profile information and the criteria for their ideal partner. This device can be a standard smartphone or computer, configured to communicate with the server via an internet connection. Users enter information such as "age," "location," "occupation," and the "personality" and "hobbies" they seek in a partner through on-screen input forms. This information is protected on the device using SSL / TLS encryption technology and transmitted to the server.
[0689] After receiving information from the user, the server utilizes a database system to record it in a management database. The database used here is a common database management system (DBMS) that enables high-speed access and data management. The server then uses a generative AI model to search the database for partner candidates that best match the user's criteria. This AI model uses machine learning algorithms to calculate similarity scores and generate a list of candidates.
[0690] Once candidates are selected, the server uses AI agents to automatically negotiate with each candidate's AI agent. The negotiation process involves checking the degree of agreement between both parties and evaluating the likelihood of reaching an agreement. During this process, the AI agents primarily utilize natural language processing (NLP) techniques.
[0691] When negotiations reach an agreement, the server collects the schedules of both the user and the candidate from their respective calendar information and coordinates the optimal online meeting time. This scheduling process is carried out efficiently using numerous calendar APIs. The server then notifies the user of the agreed-upon date and time, creating a smooth opportunity for a meeting.
[0692] For example, if a 30-year-old female user living in Tokyo enters the specific prompt "a man aged 30-35 living in Tokyo with an annual income of 7 million yen or more," the server will extract suitable male candidates from its database, and an AI agent will proceed with negotiations. If an agreement is reached, an online meeting will be scheduled for 7 PM on the following Friday, and the user will be notified.
[0693] Example of a prompt:
[0694] "I'm looking for a partner who is 30 years old, lives in Tokyo, and earns over 7 million yen annually. Please introduce me to someone who meets my desired partner criteria."
[0695] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0696] Step 1:
[0697] Users enter their profile information and ideal partner criteria through a dedicated terminal or application. This includes information such as age, location, and occupation, as well as desired partner characteristics like personality and hobbies, entered using the terminal's input form. The system checks the entered data for correct formatting before encrypting it and sending it to the server.
[0698] Step 2:
[0699] The terminal securely transmits user-entered data to the server. It receives user information as input and performs data processing, encrypting the data using the SSL / TLS protocol. As output, it sends the encrypted data to the server.
[0700] Step 3:
[0701] The server stores the received user information in a database. It receives encrypted data as input, decrypts it, and then processes the data by adding it as a new record in the database. As output, it stores the organized user information in the database.
[0702] Step 4:
[0703] The server uses a generative AI model to search the database for potential partners that match the user's criteria. As input, it retrieves all candidate information from the database and performs data calculations to evaluate them using the generative AI model. As output, it generates a list of multiple candidates that best match the criteria.
[0704] Step 5:
[0705] The server utilizes AI agents to negotiate with each candidate based on a candidate list. It receives a generated candidate list as input and evaluates the likelihood of agreement based on an existing algorithm. Specifically, it communicates with each candidate's AI agent and negotiates whether they best match the user's conditions. The output is a list of candidates who have reached an agreement.
[0706] Step 6:
[0707] The server, if an agreement is reached, will schedule an initial online meeting. It receives a list of agreed-upon candidates and their respective schedules as input, and uses a scheduling API to calculate the optimal meeting date and time. The server then generates the adjusted meeting date and time as output and notifies the user.
[0708] (Application Example 1)
[0709] 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".
[0710] In modern society, finding an ideal partner is a complex and time-consuming task. In particular, manual data entry and condition adjustments are burdensome, making efficient matching difficult. Furthermore, proper follow-up is required when negotiations fail, but many current systems lack the functionality to adequately handle this.
[0711] 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.
[0712] In this invention, the server includes means for receiving voice data from the user and converting the data into text data; means for searching for candidates based on the text data and evaluating the degree of match with the candidates; and means for automatically conducting negotiations based on the evaluation results, and if an agreement is reached, adjusting the date and time of the meeting and notifying the user. This allows the user to easily find an ideal partner through voice input, negotiations to proceed automatically, and appropriate action to be taken even if an agreement is not reached.
[0713] A "user" is an individual who uses the system to find their ideal partner.
[0714] "Voice data" refers to digital recordings of voices spoken by the user to a robot or device.
[0715] "Text data" refers to data expressed as characters obtained by analyzing audio data.
[0716] A "candidate" is a potential partner who may be matched based on the criteria entered by the user.
[0717] "Criteria match rate" is an indicator that evaluates how well the candidate's attributes match the partner criteria set by the user.
[0718] "Negotiation" is a communication process between employers and candidates to adjust or reach an agreement on terms and conditions.
[0719] "Agreement" means that both the employer and the candidate are satisfied with the conditions and can proceed to the next step.
[0720] "Meeting date and time" refers to the date and time designated for the employer and the candidate to communicate in person or online.
[0721] "Means of notification" refers to methods or devices for communicating decided information to the user.
[0722] This invention provides support for users' matchmaking activities using a system equipped with a home robot. The home robot has a voice recognition function and receives voice data from the user as input, converting it into text data. To enable this, the robot incorporates voice recognition technology using the Google Speech-to-Text API.
[0723] The server receives and analyzes the converted text data, and uses a matching algorithm to search for suitable candidates from the database. During this process, a Support Vector Machine (SVM) algorithm implemented in Python evaluates the degree of matching. Based on the evaluation results, the server automatically negotiates, and if an agreement is reached, it uses a calendar management API (e.g., Google Calendar API) to schedule a meeting and notifies the user.
[0724] As a concrete example, the robot asks the user, "Please tell me about your ideal partner." When the user replies, "I'm looking for someone aged 30-35 with an annual income of 7 million yen or more, living in an urban area," the robot converts that information into text and sends it to the server. The server searches for candidates that match these criteria and suggests, "We have a 30-year-old who fits your criteria. Shall we schedule an online meeting?"
[0725] An example of a prompt message is as follows:
[0726] "Please check your schedule for today and set up an online meeting with your potential partner."
[0727] "Please tell us your ideal partner's criteria using voice input."
[0728] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0729] Step 1:
[0730] The user communicates their ideal partner criteria to a home robot via voice. The robot uses the Google Speech-to-Text API to convert the voice data into text data. The input is the user's voice data, and the output is the converted text data.
[0731] Step 2:
[0732] The terminal sends text data to the server. The server parses the received text data and searches the database for candidates based on matching criteria. The input is the converted text data, and the output is a list of candidates that meet the criteria. The database stores candidate information and uses the SVM algorithm implemented in Python for matching.
[0733] Step 3:
[0734] The server evaluates the degree of match between the candidate and the criteria based on the matching results. Based on the evaluation, the candidate list is prioritized. The input is the candidate list, and the output is the prioritized candidate list. This process calculates the degree of match and performs scoring.
[0735] Step 4:
[0736] The server attempts to negotiate with the most suitable partner candidate from a prioritized list. It automatically determines whether a deal can be reached with the current candidates. The input is a list of prioritized candidates, and the output is the negotiation agreement status.
[0737] Step 5:
[0738] If an agreement is reached, the server uses the calendar management API to schedule the meeting and notify the user. The input is information about the agreed-upon candidates and the user's schedule, and the output is a notification of the proposed meeting date and time.
[0739] Step 6:
[0740] If an agreement is not reached, the server will write and send an appropriate rejection message to the candidate. The input is the reason for the failure to reach an agreement and the candidate's information, and the output is the rejection message.
[0741] 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.
[0742] This invention is a matchmaking support system that takes user emotions into consideration. The AI agent efficiently searches for and negotiates with the user's ideal partner, and also has the ability to adapt the system's operation according to the user's emotional state. Its specific form is described below.
[0743] First, the user uses a dedicated terminal or application to enter their profile information and ideal partner criteria. In this initial step, the emotion engine assesses the user's current emotional state and obtains emotional data such as whether they are relaxed or stressed.
[0744] The device sends the entered information and emotional data to the server. Because this data contains sensitive information, appropriate security measures are in place.
[0745] The server stores the received data in a database and begins searching for potential partners. The AI agent identifies candidates who match the user's criteria from other users in the database, and also incorporates sentiment data obtained from the sentiment engine into the evaluation. This generates a candidate list with priority optimized by emotional state.
[0746] Once the candidate list is complete, the server automates negotiations with candidates via an AI agent. Here, the emotion engine is utilized again to adjust the pace of the negotiations to match the user's emotional state. If the user is relaxed, negotiations proceed quickly; if the user is stressed, a slower pace is chosen.
[0747] If an agreement is reached, the server will schedule an online meeting at the optimal time based on the sentiment and scheduling data of both the user and the candidate. This information will be notified to the user via their device.
[0748] As a concrete example, suppose a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and is determined to be in a calm emotional state. The server queries the database to list candidates who match the criteria, and when negotiating with candidates, it maintains a friendly and slow negotiation style to preserve the user's calm emotional state. Care is also taken to schedule online meetings at times when the user is most relaxed. In this way, by considering the user's emotions, it is possible to provide an even more personalized matchmaking experience.
[0749] The following describes the processing flow.
[0750] Step 1:
[0751] Users input their profile information and ideal partner profile using a dedicated terminal or application. This will likely include information such as age, occupation, hobbies, and desired annual income. At that time, an emotion engine evaluates the user's current emotional state based on their facial expressions and voice.
[0752] Step 2:
[0753] The terminal receives the entered information and sentiment data and immediately sends it to the server. The data is transmitted through a secure channel and managed in an orderly manner.
[0754] Step 3:
[0755] The server analyzes the received information and stores it in a database. Furthermore, it references the user's emotional data and prepares to proceed with the optimal processing, taking into account the user's current psychological state.
[0756] Step 4:
[0757] The server activates an AI agent and searches the database for other users based on the conditions specified by the user. The sentiment engine data is incorporated into the search algorithm, listing candidates that match the user's sentiment.
[0758] Step 5:
[0759] The server evaluates the degree of match with the criteria and prioritizes candidates using sentiment data. As a result, it generates the optimal list of candidates.
[0760] Step 6:
[0761] The server initiates the negotiation process with candidates through an AI agent. The negotiation is adjusted to the user's emotional state; for example, if the user is nervous, a softer tone of voice is used.
[0762] Step 7:
[0763] If an agreement is reached during negotiations, the server generates potential dates and times for an online meeting. It checks the schedules of both the user and the candidate, and determines the optimal time based on sentiment data.
[0764] Step 8:
[0765] The device receives a notification from the server, informing the user that their consent has been obtained and providing the date and time of the meeting. The user can then review this notification and proceed with preparations.
[0766] Step 9:
[0767] If an agreement is not reached, the server generates and sends an appropriate rejection message to the candidate, taking their feelings into consideration. It then prepares to negotiate with the next available candidate.
[0768] (Example 2)
[0769] 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".
[0770] In today's matchmaking market, finding an ideal partner efficiently and effectively requires significant time and effort from the user. Furthermore, the difficulty in making appropriate approaches based on established candidate lists leads to a lower success rate in negotiations. Additionally, a lack of consideration for the user's emotional state can cause stress and anxiety, potentially degrading the overall quality of the matchmaking process.
[0771] 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.
[0772] In this invention, the server includes means for receiving information from the user and searching for candidates based on that information; means for evaluating the emotional state and optimizing the candidate list based on that emotional state; and means for conducting negotiations considering the degree of matching conditions with each candidate and emotional data. This makes it possible to provide a personalized matchmaking experience that corresponds to the user's emotional state and improve the success rate of negotiations.
[0773] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0774] "Means of receiving information" refers to the function of incorporating user-provided profile data and search criteria into the system.
[0775] "Means of searching for candidates" refers to a function that searches a database based on the user's criteria and identifies suitable potential partners.
[0776] "Evaluating emotional state" refers to a technology that measures the user's current psychological state and emotions and adapts the system's operation based on that.
[0777] "Methods for optimizing the candidate list" refers to a function that prioritizes potential partners by taking into account the user's emotional state.
[0778] "Criteria match rate" is an indicator that shows how well the attributes and criteria of a candidate match the ideal partner criteria specified by the user.
[0779] "Means for conducting negotiations" refers to functions that automate communication between employers and candidates and facilitate consensus building.
[0780] "Means of adjusting schedules if an agreement is reached" refers to the process of coordinating the availability of both the employer and the candidate and setting up events or meetings on a schedule that is convenient for both parties.
[0781] This system's implementation utilizes an AI agent aimed at supporting matchmaking, efficiently searching for and negotiating with ideal partner candidates while taking into account the user's emotional state.
[0782] First, users use a dedicated terminal or application to input their profile information and criteria for their ideal partner. The input information is then used by an emotion engine to evaluate the user's emotional state in real time, and data such as stress and relaxation levels are collected.
[0783] The device then encrypts the entered profile information and acquired sentiment data and sends it to the server. The server receives this data and stores the information in its database.
[0784] The server uses an AI agent to search the database for partner candidates that match the criteria entered by the user. The AI agent uses a generative AI model to perform a detailed analysis of candidate information based on natural language processing. Furthermore, it evaluates data from the emotion engine and generates a candidate list based on optimized priorities according to the user's emotional state.
[0785] Once a list is generated, the server, via an AI agent, automates negotiations with candidates, adjusting the pace and style to match the user's emotional state. If an agreement is reached, the system uses the emotional and scheduling data of both parties to set up an online meeting at the optimal time and notifies the user of this information via their device.
[0786] As a concrete example, if a user enters the criteria "a man in his 30s with an annual income of 7 million yen or more who shares outdoor hobbies," and the system determines that the user is in a calm emotional state, it will use a generative AI model to quickly select a suitable partner and conduct friendly negotiations. This negotiation will use the following prompt as an example: "A female user in her 30s is looking for a partner who shares outdoor hobbies. She is currently in a relaxed state. Please generate a list of suitable candidates, taking priority into consideration."
[0787] In this way, the system provides an intelligent matchmaking experience that takes emotions into account.
[0788] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0789] Step 1:
[0790] Users enter their profile information (e.g., age, occupation, hobbies, etc.) and ideal partner criteria using a dedicated terminal or application. This input is collected through a UI interface. The entered data is processed by an emotion engine to evaluate the user's current emotional state, generating emotional data such as relaxed or stressed. The output provides the user's profile information and emotional data.
[0791] Step 2:
[0792] The device encrypts the collected profile information and sentiment data and sends it to the server. This process employs encryption protocols to ensure data security. It receives user profile information and sentiment data as input and sends the encrypted data to the server as output.
[0793] Step 3:
[0794] The server receives data sent from the terminal and stores it in the database. In this phase, the database management system is used to structure the information and make it available for subsequent search processes. It receives encrypted user information and sentiment data as input and stores the information in the database as output.
[0795] Step 4:
[0796] The server uses an AI agent to search the database for potential partners that match the user's criteria. This process utilizes generative AI models and natural language processing techniques to improve the accuracy of candidate selection. Using the user's criteria and sentiment data stored as input, it generates a list of suitable candidates as output.
[0797] Step 5:
[0798] The server uses an emotion engine to optimize the candidate list based on the user's emotional state. In this step, quick responses are prioritized when the user is relaxed, while a more cautious approach is taken when the user is stressed. The server receives the generated candidate list and emotion data as input and outputs an optimized candidate list adapted to the emotional state.
[0799] Step 6:
[0800] The server automates negotiations with candidates via an AI agent, adjusting the pace and style based on sentiment data. For example, the sentiment engine selects a swift or cautious negotiation stance. It uses an optimized candidate list as input and negotiation results and, where possible, agreements as output.
[0801] Step 7:
[0802] If an agreement is reached, the server will take into account the user's and candidate's sentiments and schedule data to set up an online meeting at the optimal time. The configured information will be notified to the user via their device. The server will use the negotiation agreement information and schedule data as input and provide the user with the date, time, and details of the online meeting as output.
[0803] (Application Example 2)
[0804] 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".
[0805] Conventional matchmaking support systems often fail to adequately address the emotional state of users, leading to stress and discomfort. Therefore, there is a need for a system that considers the user's emotional state and provides personalized matchmaking support that is empathetic to their feelings.
[0806] 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.
[0807] This invention includes a server that receives attribute information and emotional information from the user, searches for candidates based on this information, and optimizes priorities according to the user's emotional state; evaluates the degree of match with each candidate, conducts negotiations, and adjusts the progress of negotiations according to the user's emotional state; and, when an agreement is reached in the negotiations, adjusts the schedule at the optimal timing based on the user's emotional information and scheduling information, and notifies the user. This enables personalized matchmaking support that takes the user's emotions into consideration.
[0808] A "user" is an individual who uses a matchmaking support system to find their ideal partner.
[0809] "Attribute information" refers to information that includes the conditions and characteristics of the partner the user desires.
[0810] "Emotional information" refers to data that indicates the user's current emotional state.
[0811] A "candidate" refers to a partner who is being considered based on the user's ideals and requirements.
[0812] "Methods for optimizing priorities" refer to methods and techniques for adjusting candidate lists according to the user's emotional state.
[0813] "Condition Match" is a measure that indicates the degree to which the conditions set by the employer match the conditions of the candidate.
[0814] "Negotiation" refers to communication aimed at building relationships and adjusting terms between employers and candidates.
[0815] "Means of adjusting the progress" refers to methods and techniques for adjusting the speed and method of negotiation to suit the user's emotions.
[0816] "Means for adjusting schedules and notifying users" refers to methods and technologies for setting agreed-upon schedules at the optimal time and notifying users of them.
[0817] "Emotionally responsive communication" is a method of dialogue that responds according to the user's emotional state, providing a sense of security and comfort.
[0818] This system consists of a user terminal, a server, and emotion recognition software. The terminal receives attribute and emotion information from the user as input and transmits the data to the server using a secure communication protocol. To evaluate the user's emotional state, the terminal uses a microphone for voice input and a camera to read facial expressions. This allows for the collection of emotion data in real time.
[0819] The server searches a database based on the received information and lists candidates that match the user's criteria. Furthermore, it optimizes candidate prioritization based on sentiment information. To do this, an AI model is used to analyze sentiment data and apply an optimization algorithm. Server-side processing may utilize high-performance cloud infrastructure for data processing and specialized processing units to run the AI model.
[0820] Once the candidate list is generated, the server adjusts the negotiation process. It dynamically manages the negotiations so that reaching an agreement with the candidates proceeds at a pace that suits the user's emotions. For example, if the user is stressed, the negotiations proceed slowly, and if they are relaxed, they proceed quickly. This process can utilize natural language processing techniques that leverage emotion recognition technology.
[0821] If the user and candidate reach an agreement, the server will schedule an online meeting at the optimal time based on both parties' schedules and emotional states. This information will then be communicated back to the user via their device.
[0822] For example, if a user enters "someone in their 30s who shares outdoor hobbies" as their desired criteria, and the server determines they are in a relaxed state, the server will generate a list of candidates, quickly proceed with negotiations, and schedule online meetings during a time when they can relax.
[0823] Examples of prompts to input into a generative AI model:
[0824] "Optimize the priority of the candidate list to match the user's calm emotional state. Also, suggest topics that will help the user relax."
[0825] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0826] Step 1:
[0827] Users input attribute and emotional information using a device. This input includes text-based conditions and emotional expressions using voice and images. The device converts voice input to text and analyzes facial expressions from images captured by the camera to generate emotional data. This data is transmitted to the server via a secure communication protocol.
[0828] Step 2:
[0829] The server analyzes the data received from the terminal and performs a database search. It lists candidates that match the user's criteria and calculates the degree of match. It also analyzes emotional information using an AI model and optimizes candidate priorities based on their emotional state. Based on the analysis results, it generates a list and creates a candidate list with adjusted priorities.
[0830] Step 3:
[0831] The server initiates negotiations with candidates based on the generated list. It utilizes natural language processing to design conversation content tailored to the user's emotional state. For example, if the user is relaxed, it generates messages in a frank tone; if they are stressed, it develops topics in a calm tone. The progress of the negotiations is adjusted by continuously analyzing the user's emotional data.
[0832] Step 4:
[0833] If an agreement is reached during negotiations, the server will coordinate the schedules of both the user and the candidate. It will combine sentiment information and scheduling data to suggest the optimal date and time for an online meeting. The suggested date and time will be notified to the user again via their device, and if accepted, the meeting will be added to the schedule.
[0834] Step 5:
[0835] When notifying users, the system utilizes a generated AI model to suggest actions that address emotional needs. For example, it might send suggestions for relaxation, such as playing background music tailored to a relaxing topic or suggesting deep breathing exercises. User feedback is also collected and used to improve the system.
[0836] 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.
[0837] 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.
[0838] 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.
[0839] 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.
[0840] 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.
[0841] 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.
[0842] 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.
[0843] 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.
[0844] 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."
[0845] 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.
[0846] 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.
[0847] 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.
[0848] 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.
[0849] 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.
[0850] 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.
[0851] 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.
[0852] 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.
[0853] 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.
[0854] 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.
[0855] 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.
[0856] 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.
[0857] The following is further disclosed regarding the embodiments described above.
[0858] (Claim 1)
[0859] A means for receiving information from users and searching for candidates based on said information,
[0860] A means of evaluating the degree of agreement with each candidate's conditions and conducting negotiations,
[0861] A means of adjusting the schedule and notifying the user if an agreement is reached during negotiations,
[0862] A system that includes this.
[0863] (Claim 2)
[0864] The system according to claim 1, further comprising means for generating and sending an appropriate rejection message to a candidate if negotiations fail to reach an agreement.
[0865] (Claim 3)
[0866] The system according to claim 1, comprising a database for storing user information and candidate information for use in subsequent processing.
[0867] "Example 1"
[0868] (Claim 1)
[0869] A device that acquires information from users and uses that information as a basis to find potential partners,
[0870] A device for determining the degree of compatibility of conditions with each potential partner and for conducting negotiations,
[0871] A device that adjusts the schedule and notifies users once an agreement is reached in negotiations,
[0872] A device that evaluates the candidate's qualifications and presents the likelihood of agreement to the user,
[0873] A device that encrypts and transmits user information,
[0874] A system that includes this.
[0875] (Claim 2)
[0876] The system according to claim 1, further comprising a device for creating and sending an appropriate rejection message to a potential counterparty if negotiations fail to reach an agreement.
[0877] (Claim 3)
[0878] The system according to claim 1, comprising an information storage device for recording user information and information on potential partners, and for use in subsequent operations.
[0879] "Application Example 1"
[0880] (Claim 1)
[0881] A means for receiving voice data from the user and converting said data into text data,
[0882] A means for searching for candidates based on the text data and evaluating the degree of matching with the conditions for those candidates,
[0883] A means to automatically conduct negotiations based on the evaluation results, and if an agreement is reached, to adjust the date and time of the meeting and notify the user,
[0884] A human relations support organization, including
[0885] (Claim 2)
[0886] The interpersonal relationship support mechanism according to claim 1, which, if an agreement is not reached, writes and sends an appropriate rejection message to the candidate.
[0887] (Claim 3)
[0888] The human relations support mechanism according to claim 1, comprising storage means for storing user attribute data and candidate attribute data and for using them for continuous processing.
[0889] "Example 2 of combining an emotion engine"
[0890] (Claim 1)
[0891] A means for receiving information from users and searching for candidates based on said information,
[0892] A means for evaluating emotional states and optimizing candidate lists based on those emotional states,
[0893] A means of conducting negotiations that take into account the degree of agreement with each candidate's conditions and emotional data,
[0894] A means of adjusting the schedule and notifying the user if an agreement is reached during negotiations,
[0895] A system that includes this.
[0896] (Claim 2)
[0897] The system according to claim 1, further comprising means for adjusting the pace and style of negotiations based on emotional state, and for generating and sending an appropriate rejection message to a candidate if the negotiations fail to reach an agreement.
[0898] (Claim 3)
[0899] The system according to claim 1, comprising a database for storing user information, sentiment data, and candidate information for use in subsequent processing.
[0900] "Application example 2 when combining with an emotional engine"
[0901] (Claim 1)
[0902] A means for receiving attribute information and emotional information from the user, searching for candidates based on said information, and optimizing priorities according to the user's emotional state,
[0903] A means of evaluating the degree of agreement with each candidate, conducting negotiations, and adjusting the progress of negotiations according to the user's emotional state,
[0904] When negotiations reach an agreement, a means of adjusting the schedule at the optimal time based on the user's emotional information and scheduling information, and notifying the user,
[0905] A means of monitoring the user's emotional state and providing emotionally sensitive communication,
[0906] A system that includes this.
[0907] (Claim 2)
[0908] The system according to claim 1, further comprising means for generating and sending an appropriate rejection message to a candidate and providing feedback that takes the user's feelings into consideration if negotiations fail to reach an agreement.
[0909] (Claim 3)
[0910] The system according to claim 1, comprising data storage that stores data including user information, candidate information, and negotiation history, and uses in subsequent processing to make personalized suggestions based on the user's emotional state. [Explanation of symbols]
[0911] 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 for receiving information from users and searching for candidates based on said information, A means of evaluating the degree of agreement with each candidate's conditions and conducting negotiations, A means of adjusting the schedule and notifying the user if an agreement is reached during negotiations, A system that includes this.
2. The system according to claim 1, further comprising means for generating and sending an appropriate rejection message to a candidate if negotiations fail to reach an agreement.
3. The system according to claim 1, comprising a database for storing user information and candidate information for use in subsequent processing.