system
The system addresses duplicate and misleading property listings and excessive sales calls by organizing property information and preventing unwanted contacts, improving the efficiency and reliability of real estate searches.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
Conventional real estate information systems face issues such as duplicate property listings, bait-and-switch properties, and excessive sales calls, making it difficult for users to efficiently find desired properties and complicating the contract process.
A system that receives user preferences, analyzes them to generate search queries, accesses multiple databases to retrieve and organize property information, removes duplicates and decoy properties, and provides an option to prevent excessive sales contacts, thereby simplifying the search and inquiry process.
The system enhances user satisfaction by providing efficient and reliable property search and contract processes by eliminating duplicates and reducing unwanted sales calls.
Smart Images

Figure 2026064638000001_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, 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 in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In a conventional real estate information providing system, the following problems exist when a user efficiently searches for a property they desire. That is, the user faces problems such as "there are many dummy properties", "the same property is displayed multiple times", and "the sales from the dealer after information request are persistent". For this reason, it is difficult for the user to appropriately obtain the property information they desire, and the property selection has become complicated. In addition, due to the existence of duplicate property information and dummy properties, the user's time and labor are wasted, and there is a problem that the real estate contract process does not proceed smoothly.
Means for Solving the Problems
[0005] To solve the above problems, the present invention provides a system that includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases and acquiring property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, and means for providing the organized property information to the user terminal. Furthermore, by providing a system that includes means for providing an option to prevent excessive sales contact at the time of inquiry based on the received preferences, and means for receiving inquiry information from the user terminal, generating an inquiry message, and sending it to the information provider, the real estate search and contract process can be made more efficient and user satisfaction can be improved.
[0006] A "user" refers to anyone who uses this system to input their desired criteria and receive the property information provided.
[0007] "Desired conditions" refer to the requirements that users specify when searching for properties, such as area, budget, floor plan, and amenities.
[0008] A "terminal" refers to a device used by a user to access this system and enter their desired conditions, specifically such as a smartphone or personal computer.
[0009] A "server" refers to a computer system that analyzes user requests, generates search queries, accesses multiple databases of information providers to retrieve property information, processes that information, and provides it to the user.
[0010] A "search query" refers to a set of commands for database searches that are generated based on the user's desired conditions.
[0011] A "database of information providers" refers to a database that stores property information managed by real estate agents and other information providers.
[0012] "Property information" refers to information about a real estate property, including its location, price, floor plan, and amenities.
[0013] "Duplicate listings" refer to information that refers to the same property among property information obtained from multiple information provider databases.
[0014] A "bait-and-switch" property refers to information about a property that does not actually exist or is unsuitable for the intended purpose, and is misleadingly provided to attract users.
[0015] "Inquiry information" refers to information including questions and requests that users submit to obtain additional information about a specific property.
[0016] An "inquiry message" refers to a message generated based on the user's inquiry information and sent to the information provider.
[0017] The "Sales Contact Prevention Option" refers to settings and functions designed to prevent excessive sales calls from real estate agents after a user makes an inquiry. [Brief explanation of the drawing]
[0018] [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]It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Mode for Carrying Out the Invention
[0019] 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.
[0020] First, the terms used in the following description will be explained.
[0021] In the following embodiments, the signed processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Furthermore, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include CPU (Central Processing Unit), GPU (Graphics Processing Unit), GPGPU (General-Purpose computing on Graphics Processing Units), and APU (Accelerated Processing Unit).
[0022] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0023] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0024] 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).
[0025] 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."
[0026] [First Embodiment]
[0027] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0028] 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.
[0029] 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).
[0030] 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.
[0031] 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.
[0032] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form 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.
[0033] 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.
[0034] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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".
[0039] This invention consists of several main components, including a user, a terminal, and a server. The program processing of this system is described below in natural language.
[0040] 1. Gathering information requested by the user.
[0041] (User): When searching for real estate properties, the user uses a device (e.g., smartphone or PC) to input their desired conditions (area, budget, floor plan, amenities, etc.). This allows the user to obtain a list of properties that can be used as specific consideration.
[0042] 2. Submission and analysis of desired conditions
[0043] (Terminal): Sends the entered desired conditions to the server.
[0044] (Server): Receives the desired conditions and performs analysis. In this analysis step, each item such as desired area and budget is clearly identified and constructed as a search query.
[0045] 3. Collection and integration of property information
[0046] (Server): Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and retrieves property information using generated search queries. The retrieved property information is integrated within the server, and duplicate and bait-and-switch listings are detected.
[0047] 4. Removal and filtering of decoy properties
[0048] (Server): Analyzes the acquired property information. As an analysis method, an AI-based algorithm is used to identify and remove "bait properties". Duplicate property information is also sorted from the list, and a unique property list is generated.
[0049] 5. Generation and provision of the optimal property list
[0050] (Server): Based on the user's desired conditions, it filters the properties deemed most suitable in order of priority and generates a list of final candidates.
[0051] (Server): Send this final list of candidates to the user's terminal.
[0052] (Terminal): Displays the received property list to the user.
[0053] 6. Check property details and make inquiries
[0054] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[0055] (Terminal): Detailed information is displayed as a result, along with an inquiry button. If the user wishes to make an inquiry, they click this button.
[0056] 7. Generating and sending inquiry information
[0057] (Terminal): Enter the required information into the inquiry form and send it to the server.
[0058] (Server): Automatically generates a query message based on the received query information.
[0059] (Server): Apply the option to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[0060] (Server): Sends a notification to the user that the query has been successfully submitted.
[0061] Specific example
[0062] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[0063] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into a smartphone app.
[0064] 2. (Terminal): Sends the entered information to the server.
[0065] 3. (Server): Analyzes the received information and generates search queries.
[0066] 4. (Server): Access the database of real estate agents and collect relevant property information.
[0067] 5. (Server): Analyzes the collected property information, excludes decoy properties, and merges duplicate properties.
[0068] 6. (Server): Sends the organized property list to the user's terminal.
[0069] 7. (Terminal): Display the received property list to the user.
[0070] 8. (User): Click on a property of interest from the displayed list to view detailed information.
[0071] 9. (User): Click the inquiry button to make an inquiry about a specific property.
[0072] 10. (Terminal): Enter the inquiry information and send it to the server.
[0073] 11. (Server): Based on the received inquiry information, it generates an inquiry message and sends it to the real estate agent.
[0074] 12. (Server): Sends a notification to the user that the query has been successfully submitted.
[0075] In this way, this system simplifies the process of searching for and inquiring about real estate properties, and provides a set of functions to improve user convenience and satisfaction.
[0076] The following describes the processing flow.
[0077] Step 1:
[0078] (User) Uses a smartphone or PC to enter desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.).
[0079] Step 2:
[0080] (Terminal) Sends the entered desired conditions to the server.
[0081] Step 3:
[0082] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[0083] Step 4:
[0084] (Server) Generates search queries based on desired conditions. For example, it creates queries for "Shinjuku Ward, Tokyo", "budget under 80,000 yen", "2DK or larger", and "pets allowed".
[0085] Step 5:
[0086] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[0087] Step 6:
[0088] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[0089] Step 7:
[0090] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[0091] Step 8:
[0092] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[0093] Step 9:
[0094] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[0095] Step 10:
[0096] (Server) Remove the decoy property from the property list.
[0097] Step 11:
[0098] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. For example, it prioritizes properties that exactly match the criteria of "Shinjuku Ward, Tokyo," "budget under 80,000 yen," "2DK or larger," and "pets allowed."
[0099] Step 12:
[0100] (Server) Generates the final property list and sends it to the user's terminal.
[0101] Step 13:
[0102] (Terminal) Displays the received property list to the user.
[0103] Step 14:
[0104] (User) To view the displayed property list and check the details of a specific property, click on that property.
[0105] Step 15:
[0106] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[0107] Step 16:
[0108] (User) Click the inquiry button to inquire about a property they are interested in.
[0109] Step 17:
[0110] (Terminal) Displays an inquiry form, and sends the information entered by the user into the form to the server.
[0111] Step 18:
[0112] (Server) The server automatically generates an inquiry message based on the received inquiry information. This message may include, for example, the user's name, contact information, and the question.
[0113] Step 19:
[0114] (Server) After applying options to prevent excessive sales calls, the inquiry message is sent to the information provider.
[0115] Step 20:
[0116] (Server) Notifies the user that the query has been successfully sent.
[0117] (Example 1)
[0118] 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."
[0119] Traditional real estate search systems were time-consuming to retrieve property information that matched users' desired criteria, and often included bait-and-switch listings and duplicate information. Furthermore, they suffered from excessive sales calls during the inquiry process. There is a need to solve these problems and provide a system that is both convenient and reliable for users.
[0120] 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.
[0121] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases and obtaining property information, means for analyzing the obtained property information with an AI algorithm to sort out duplicate properties and remove decoy properties, means for providing the sorted property information to the user terminal, and means for receiving inquiry information from the user, generating an inquiry message, and sending it to the information provider. This simplifies the process from searching for real estate properties to making inquiries, and enables the provision of reliable and satisfying information to the user.
[0122] "User" refers to the end user who is looking for a real estate property.
[0123] "Terminal" refers to a computer device used by a user (such as a smartphone, PC, or tablet).
[0124] A "server" refers to a computer system on a network that receives, analyzes, processes, and provides information to users.
[0125] "Desired conditions" refer to the requests that users enter when searching for properties, such as area, budget, floor plan, and amenities.
[0126] "Means of receiving" refers to the processes and technologies that allow the server to receive user requests and inquiry information.
[0127] "Methods for analyzing and generating search queries" refers to the process or technology of analyzing received desired conditions and generating search queries (commands for database searches) based on those conditions.
[0128] A "database of information providers" refers to a database where property information managed by real estate agents and other related parties is stored.
[0129] "Property information" refers to information about a property, such as its location, price, floor plan, and amenities.
[0130] "Methods for sorting out duplicate listings and removing decoy listings" refers to processes and technologies that eliminate duplicate information from listing information acquired by the server and identify and remove unreliable decoy listings.
[0131] "AI algorithm" refers to analytical methods that utilize artificial intelligence technology.
[0132] "Inquiry information" refers to data entered by users to indicate questions or interest regarding a property.
[0133] A "contact message" refers to a message generated by the server and sent to the information provider, which contains the user's inquiry.
[0134] The "option to prevent excessive sales calls" refers to settings or mechanisms that automatically control excessive sales calls from real estate agents in response to user inquiries.
[0135] Modes for carrying out the invention
[0136] This invention is a system that streamlines the search and inquiry process for real estate properties, comprising key components such as users, terminals, and servers. The system takes the user's desired conditions as input, collects corresponding property information, and performs a series of processes to provide the most suitable property list.
[0137] Hardware and software to be used
[0138] This system uses the following main hardware and software.
[0139] Device: A device used by a user, such as a smartphone, personal computer (PC), or tablet.
[0140] Server: Receives, analyzes, processes, and provides data. Examples include web servers such as Apache® and Nginx.
[0141] Database: Stores and manages property information and user inquiry information. Databases used include, for example, MySQL®, PostgreSQL, and MongoDB.
[0142] Generative AI models: Used for property analysis and optimization. Specifically, frameworks such as TENSORFLOW® and PyTorch are used.
[0143] Specific examples of system processing
[0144] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[0145] 1. (User) User A enters "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into the app on their smartphone.
[0146] 2. (Terminal) The terminal receives the entered information and creates an HTTP POST request to send it to the server.
[0147] 3. (Server) The server analyzes the received information and generates search queries. This process uses libraries such as Python's Pandas library.
[0148] 4. (Server) The server uses the generated search query to access databases of multiple real estate agents and collect relevant property information.
[0149] 5. (Server) The collected property information is analyzed using an AI algorithm to remove decoy properties and organize duplicate information. TensorFlow or PyTorch is used for this analysis.
[0150] 6. (Server) Generates the optimal property list and sends the reformatted data to the user terminal.
[0151] 7. (Terminal) The user's terminal analyzes the received property list and displays it in a format that is easy for the user to view.
[0152] 8. (User) User A clicks on a property of interest from the displayed list to view detailed information.
[0153] 9. (User) Click the inquiry button to make an inquiry about a specific property.
[0154] 10. (Terminal) Enter the inquiry information and format it into data ready to send to the server.
[0155] 11. (Server) Based on the received inquiry information, the server generates an inquiry message, applies options to prevent excessive sales contact as needed, and then sends it to the real estate agent.
[0156] 12. (Server) Send a notification to the user that the query has been successfully sent.
[0157] Thus, this system provides a series of functions to efficiently collect and provide users with the real estate property information they desire, and to simplify the inquiry process.
[0158] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0159] Step 1:
[0160] (User) Users enter their search criteria for real estate properties on a device such as a smartphone or PC. These criteria include area, budget, floor plan, and amenities. For example, a user might enter "Shinjuku Ward, Tokyo; budget under 80,000 yen; 2DK or larger; pets allowed." The device retains the entered data.
[0161] Input: User's desired conditions (area, budget, floor plan, equipment requirements, etc.)
[0162] Output: User preference data stored on the device.
[0163] Step 2:
[0164] (Terminal) The terminal creates an HTTP POST request to send the user's entered desired conditions data to the server. This request has a JSON-formatted payload containing the desired conditions data. After the request is created, it is sent to the server.
[0165] Input: User's desired conditions data
[0166] Output: HTTP POST request sent to the server
[0167] Step 3:
[0168] (Server) The server analyzes the desired conditions data received from the terminal. It analyzes the received data and extracts items such as desired area, budget, floor plan, and equipment requirements. The Python Pandas library is used for this analysis. After the analysis is complete, a search query is generated.
[0169] Input: Desired conditions data from the device
[0170] Output: Analyzed desired criteria elements and search query
[0171] Step 4:
[0172] (Server) The server uses the generated search query to access multiple information provider databases. This is done using SQL queries and API requests. It retrieves property information that matches the search query.
[0173] Input: Search query
[0174] Output: Property information obtained from multiple information providers.
[0175] Step 5:
[0176] (Server) The server stores the acquired property information in an integrated database and performs data integration processing. It identifies duplicate property information from the integrated data and uses an AI algorithm to detect and remove decoy properties. TensorFlow and PyTorch are used for this analysis.
[0177] Input: Acquired property information
[0178] Output: Organized property information with duplicate and decoy properties removed.
[0179] Step 6:
[0180] (Server) The server generates a list of properties that best match the user's desired conditions based on the organized property information. It uses a ranking algorithm to sort the properties in order of priority and converts them into a data format to be sent to the user's terminal.
[0181] Input: Organized property information
[0182] Output: Optimal property list
[0183] Step 7:
[0184] (Terminal) The terminal analyzes the optimal property list data received from the server and displays it in a user-friendly format. This display uses list or card format and includes detailed information and images for each property.
[0185] Input: Property list data sent from the server
[0186] Output: Property list displayed on the user's terminal
[0187] Step 8:
[0188] (User) The user views the provided property list and clicks on a property that interests them. This action causes the device to request detailed information from the server and display the relevant information.
[0189] Input: Property list and user click actions
[0190] Output: Details of the clicked property
[0191] Step 9:
[0192] (User) When a user wants to inquire about a specific property, they click the "Inquiry button." This action displays an inquiry form in a pop-up window. The user then fills in the required information in the form.
[0193] Input: Details of the clicked property and inquiry action
[0194] Output: Input query information
[0195] Step 10:
[0196] (Terminal) The terminal formats the inquiry information entered by the user into data for transmission to the server and creates an HTTP POST request. After the request is created, it is sent to the server.
[0197] Input: User inquiry information
[0198] Output: HTTP POST request sent to the server
[0199] Step 11:
[0200] (Server) The server analyzes the received inquiry information and generates an inquiry message. Options are also applied to prevent excessive sales calls. The generated inquiry message is sent to the information provider.
[0201] Input: User inquiry information
[0202] Output: Generated query message
[0203] Step 12:
[0204] (Server) The server generates and sends a notification to the user confirming that the query has been successfully submitted. The user receives this notification on their device and can confirm that the query was completed successfully.
[0205] Input: Result of sending the inquiry message
[0206] Output: Notification to user that transmission is complete.
[0207] (Application Example 1)
[0208] 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."
[0209] The challenges include improving the efficiency of inventory management and optimizing delivery routes at logistics centers, as well as enhancing user convenience by removing duplicate and decoy information from the information provider database. In conventional systems, these processes are often performed manually, resulting in time-consuming and labor-intensive work, and a high risk of errors. Furthermore, there is a need for improvement in measures to prevent excessive sales communications.
[0210] 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.
[0211] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for monitoring the inventory status of the logistics center in real time and generating alerts according to specific conditions, means for analyzing and proposing the optimal delivery route based on the delivery address using AI, means for integrating multiple delivery orders and removing duplicate order information, means for providing the organized property information to the user terminal, and means for sending notifications to the user. This makes it possible to efficiently and automatically manage inventory at the logistics center and optimize delivery routes. In addition, the automation of duplicate and decoy information management greatly improves user convenience.
[0212] "Means for receiving user preferences" refers to a means for users to input their desired conditions and for that information to be incorporated into the system.
[0213] "Means for analyzing desired conditions and generating search queries" refers to methods for analyzing the desired conditions received from users and generating appropriate search queries.
[0214] "Methods for obtaining property information by accessing multiple information provider databases" refers to methods for obtaining necessary property information by accessing the databases of multiple information providers.
[0215] "Methods for sorting out duplicate properties from acquired property information and removing decoy properties" refers to methods for analyzing acquired property information, sorting out duplicate property information, and removing false decoy properties.
[0216] "A means of monitoring the inventory status of a logistics center in real time and generating alerts according to specific conditions" refers to a means of constantly monitoring the inventory status of a logistics center and generating alerts based on specific conditions (e.g., insufficient inventory, excess inventory).
[0217] "A method for analyzing and proposing the optimal delivery route based on the delivery address using AI" refers to a method for using AI technology to analyze the optimal delivery route based on the delivery address and propose it to the user.
[0218] "Means for integrating multiple delivery orders and removing duplicate order information" refers to means for integrating multiple delivery order information and removing duplicate order information.
[0219] "Means for providing organized property information to a user terminal" refers to means for transmitting and providing organized property information to a user terminal.
[0220] "Means of sending notifications to users" refers to means of notifying users of important information or updates.
[0221] This invention is a system that streamlines the search for real estate properties, inventory management at logistics centers, and optimization of delivery routes. The processing of this system's program is described below in natural language.
[0222] 1. Gathering information requested by the user.
[0223] Users can use a device (such as a smartphone or PC) to input their desired conditions (area, budget, floor plan, equipment requirements, etc.) to request a list of properties that can serve as specific considerations and suggestions for the optimal delivery route.
[0224] 2. Submission and analysis of desired conditions
[0225] The terminal sends the entered desired conditions to the server.
[0226] The server analyzes the received request conditions. In the analysis step, each item, such as the desired area, budget, and delivery volume, is clearly identified and constructed as a search query.
[0227] 3. Collection and integration of property and inventory information
[0228] The server accesses multiple information provider databases and retrieves property information using generated search queries. It also monitors the inventory status of logistics centers in real time and collects necessary data.
[0229] 4. Removal of decoy properties and generation of inventory alerts
[0230] The server analyzes the acquired property information, uses AI-based algorithms to identify and remove decoy properties. It also monitors inventory status based on specific conditions and generates alerts as needed.
[0231] 5. Optimization and integration of delivery routes
[0232] The server uses AI technology to generate the optimal delivery route for the entered delivery address and consolidates multiple delivery orders. Duplicate order information is excluded.
[0233] 6. Generating and providing the optimal list
[0234] The server filters the properties and delivery routes deemed most suitable based on the user's preferences, prioritizing them in order of priority, and generates a list of final candidates.
[0235] The server sends this final list of candidates to the user's terminal.
[0236] The device displays the received information to the user.
[0237] 7. Notifications and Inquiries
[0238] Users browse the presented list and, if necessary, check for more information about specific properties or deliveries.
[0239] The device enters the necessary information into the inquiry form and sends it to the server.
[0240] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully submitted.
[0241] Hardware and software used
[0242] Hardware: Smartphones, servers, PCs
[0243] Software: Python, REST API, AI algorithms
[0244] Specific example
[0245] If User B is looking for the optimal delivery route within Tokyo with a budget of 8,000 yen and a high volume of deliveries:
[0246] 1. The user enters "Tokyo, budget 8000 yen, delivery volume: high" into the smartphone app.
[0247] 2. The terminal sends the entered information to the server.
[0248] 3. The server analyzes the received information and performs delivery optimization that meets the specified conditions.
[0249] 4. The server accesses multiple warehouse databases to collect inventory information.
[0250] 5. The server generates the optimal delivery route based on the delivery address and consolidates duplicate orders.
[0251] 6. The server sends the optimal inventory information and delivery route to the user's terminal.
[0252] 7. The device notifies the user of the received information.
[0253] Example of a prompt:
[0254] "Please propose the optimal delivery route within Tokyo, with a budget of 8,000 yen and a high volume of deliveries."
[0255] In this way, we provide a system that enables efficient inventory management and optimization of delivery routes in logistics centers.
[0256] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0257] Step 1:
[0258] The user uses a device (e.g., a smartphone) to enter their desired conditions (area, budget, delivery volume, etc.).
[0259] Input: Conditions such as area, budget, and delivery volume.
[0260] Output: Data matching the desired conditions.
[0261] Step 2:
[0262] The terminal sends the user's entered preferences to the server.
[0263] Input: User's desired conditions data.
[0264] Output: The result of sending data to the server.
[0265] Step 3:
[0266] The server analyzes the received request conditions and generates a search query based on the analyzed data.
[0267] Input: Desired conditions data received from the terminal.
[0268] Data processing: Analysis of desired conditions, generation of queries.
[0269] Output: Search query.
[0270] Step 4:
[0271] The server uses the generated search query to access multiple information provider databases and retrieve property information and logistics center inventory information.
[0272] Input: Search query.
[0273] Data processing: Accessing information provider databases and retrieving data.
[0274] Output: Acquired property information and inventory information.
[0275] Step 5:
[0276] The server analyzes the acquired property information, uses AI algorithms to filter out duplicate properties, and removes deceptive listings. It also generates alerts under specific conditions based on inventory information.
[0277] Input: Acquired property information and inventory information.
[0278] Data processing: Analysis of property information, sorting of duplicate properties, removal of bait-and-switch properties, monitoring of inventory information, and generation of alerts.
[0279] Output: Organized property information, inventory alerts.
[0280] Step 6:
[0281] The server uses AI technology to analyze and propose the optimal delivery route based on the provided delivery address. Furthermore, it consolidates multiple delivery orders and removes duplicate order information.
[0282] Input: Delivery address, order information.
[0283] Data calculation: analysis of delivery routes, optimization, and integration of duplicate orders.
[0284] Output: optimized delivery route.
[0285] Step 7:
[0286] The server filters the properties and delivery routes optimized according to the user's desired conditions in order of priority and generates a list of final candidates.
[0287] Input: desired conditions, sorted property information, optimized route information.
[0288] Data processing: filtering based on priority, generation of a list.
[0289] Output: list of final candidates.
[0290] Step 8:
[0291] The server sends this list of final candidates to the user's terminal.
[0292] Input: list of final candidates.
[0293] Output: result of sending the list to the user terminal.
[0294] Step 9:
[0295] The terminal displays the received list to the user.
[0296] Input: list of final candidates received from the server.
[0297] Output: displayed list.
[0298] Step 10:
[0299] The user checks specific property or delivery details information from the presented list and makes an inquiry if necessary.
[0300] Input: The presented list. Output: Inquiry content.
[0301] Step 11:
[0302] The terminal inputs the necessary information into the inquiry form and sends it to the server.
[0303] Input: The user's inquiry information.
[0304] Output: Inquiry data to the server.
[0305] Step 12:
[0306] The server generates an inquiry message based on the received inquiry information, sends it to the information provider or the logistics person in charge, and also sends a notice of the completion of the inquiry to the user.
[0307] Input: Inquiry information.
[0308] Data processing: Generation of an inquiry message, sending to the information provider, and notification to the user.
[0309] Output: Inquiry message to the information provider, notification to the user.
[0310] Furthermore, an emotion engine for estimating the user's emotion may be combined. That is, the specific processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform specific processing using the user's emotion.
[0311] The present invention relates to a real estate property search system incorporating an emotion engine for recognizing the user's emotion, and aims to provide property information based on the user's desired conditions in a more personalized form. The processing of the program of this system will be described in natural language below.
[0312] 1. Gathering user preferences and sentiments.
[0313] (User): When searching for real estate properties, the user uses a smartphone or PC to input their desired conditions (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine uses the camera and microphone to analyze the user's facial expressions and voice tone to recognize their emotions.
[0314] 2. Sending and analyzing desired conditions and emotional information
[0315] (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[0316] (Server): Analyzes desired conditions, clearly identifying each item (area, budget, floor plan, equipment requirements), and analyzes emotional information to understand the user's current emotional state.
[0317] 3. Generating search queries and collecting property information
[0318] (Server): Generates search queries based on desired conditions and accesses multiple information provider databases (e.g., real estate agents A, B, and C) to collect property information.
[0319] 4. Integration and organization of property information
[0320] (Server): Uses an AI-based algorithm to integrate acquired property information, sort out duplicate properties, and remove decoy properties.
[0321] 5. Emotion-based filtering and delivery
[0322] (Server): Based on the emotions of the user recognized by the emotion engine, property information is flexibly filtered. For example, if the user is feeling stressed, properties with a relaxing environment will be displayed preferentially.
[0323] (Server): Generates the optimal property list and provides it to the user's terminal.
[0324] (Terminal): Displays the received property list to the user.
[0325] 6. Check property details and make inquiries
[0326] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[0327] (Device): Detailed information is displayed, and a contact button is also displayed.
[0328] 7. Generating inquiry information and reflecting sentiment.
[0329] (User): Click the inquiry button to inquire about a property of interest.
[0330] (Terminal): Enter the required information into the inquiry form and send it to the server.
[0331] (Server): Based on the received inquiry information and the user's emotional state, it automatically generates inquiry messages. For example, for a nervous user, it generates a polite and reassuring message.
[0332] (Server): Sends inquiry messages to information providers (e.g., real estate agents) after applying options to prevent excessive sales calls.
[0333] (Server): Sends a notification to the user that the query has been successfully submitted.
[0334] Specific example
[0335] Example 1: When User B searches for a 1LDK apartment in Shinjuku Ward, Tokyo, with a budget of 100,000 yen or less, and pet-friendly.
[0336] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pets allowed" into a smartphone app, and the emotion engine analyzes the user's facial expression and determines that they are "relaxed."
[0337] 2. (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[0338] 3. (Server): Analyzes the desired conditions and generates search queries. Simultaneously, it analyzes emotional information and considers the emotion of "relaxed."
[0339] 4. (Server): Access the database of real estate agents and collect relevant property information.
[0340] 5. (Server): Analyzes the collected property information and removes duplicate properties and bait properties.
[0341] 6. (Server): Based on emotional information, it prioritizes presenting properties with a quiet environment that allows for relaxation.
[0342] 7. (Server): Sends the organized property list to the user's terminal.
[0343] 8. (Terminal): Display the received property list to the user.
[0344] 9. (User): Click on a property of interest from the displayed list to view detailed information.
[0345] 10. (User): Click the inquiry button to inquire about a specific property.
[0346] 11. (Terminal): Enter the inquiry information and send it to the server.
[0347] 12. (Server): Based on the received inquiry information and emotional state, it generates an inquiry message while maintaining a relaxed atmosphere and sends it to the real estate agent.
[0348] 13. (Server): Sends a notification to the user that the query has been successfully submitted.
[0349] In this way, this system can analyze and recognize users' emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[0350] The following describes the processing flow.
[0351] Step 1:
[0352] The user uses a smartphone or PC to input their desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine analyzes the user's facial expressions and voice tone using the device's camera and microphone to recognize the user's emotions.
[0353] Step 2:
[0354] (Terminal) The entered desired conditions and recognized emotion information are sent to the server.
[0355] Step 3:
[0356] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[0357] Step 4:
[0358] (Server) Analyzes the received emotional information to understand the user's current emotional state.
[0359] Step 5:
[0360] (Server) Generates search queries based on desired conditions, for example, creating queries for "Shinjuku Ward, Tokyo", "Budget under 100,000 yen", "1LDK", and "Pets allowed".
[0361] Step 6:
[0362] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[0363] Step 7:
[0364] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[0365] Step 8:
[0366] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[0367] Step 9:
[0368] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[0369] Step 10:
[0370] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[0371] Step 11:
[0372] (Server) Remove the decoy property from the property list.
[0373] Step 12:
[0374] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. At the same time, it considers emotional information, prioritizing properties with relaxing environments for relaxed users and properties with stress-reducing effects for stressed users.
[0375] Step 13:
[0376] (Server) Generates the final property list and provides it to the user terminal.
[0377] Step 14:
[0378] (Terminal) Displays the received property list to the user. The list reflects filtering results that take sentiment into consideration.
[0379] Step 15:
[0380] (User) To view the displayed property list and check the details of a specific property, click on that property.
[0381] Step 16:
[0382] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[0383] Step 17:
[0384] (User) Click the inquiry button to inquire about a property they are interested in.
[0385] Step 18:
[0386] (Terminal) Displays an inquiry form, and the user enters the necessary information.
[0387] Step 19:
[0388] (Terminal) Sends the entered inquiry information to the server.
[0389] Step 20:
[0390] (Server) The server automatically generates inquiry messages based on the received inquiry information and the user's emotional state. For example, it generates casual messages for relaxed users and polite, reassuring messages for stressed users.
[0391] Step 21:
[0392] (Server) Apply options to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[0393] Step 22:
[0394] (Server) Notifies the user that the query has been successfully sent.
[0395] (Example 2)
[0396] 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".
[0397] Traditional real estate search systems provide property information based on the user's desired conditions, but they often fail to consider the user's emotional state, which can degrade the quality of the user experience. Furthermore, property information obtained from multiple sources often includes duplicates and bait-and-switch listings, and there is a lack of mechanisms to properly organize and remove these. Additionally, there are insufficient mechanisms to prevent excessive sales calls during inquiries.
[0398] The identification processing performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving the user's desired conditions and emotional information, means for analyzing the received desired conditions and emotional information to generate a search query, means for accessing databases of multiple information providers to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for filtering property information based on the user's emotions recognized by the emotion engine, and means for providing the organized and filtered property information to the user terminal. This enables personalized property searches that take into account the user's emotional state, and also allows for the removal of duplicates and decoy properties. Furthermore, the mechanism for preventing excessive sales calls is strengthened.
[0399] A "user" refers to a person who enters their desired criteria to search for real estate properties and whose emotional state is analyzed by an emotion engine.
[0400] "Desired conditions" refers to information about the property the user wants, such as area, budget, floor plan, and amenities.
[0401] "Emotional information" refers to information about the user's emotional state as recognized by the emotion engine.
[0402] An "emotion engine" refers to a system that uses cameras and microphones to analyze a user's facial expressions and voice tone, and recognizes their emotional state.
[0403] A "server" refers to a device or system that receives and analyzes user preferences and emotional information, acquires property information, organizes and filters it, and provides it to the user's terminal.
[0404] A "database of information providers" refers to multiple databases or APIs that can collect real estate property information.
[0405] A "search query" refers to an inquiry generated based on the user's desired conditions and sentiment information, used to retrieve property information.
[0406] "Property information" refers to information about real estate properties, including details such as area, price, floor plan, and amenities.
[0407] "Duplicate listings" refer to identical property information obtained from multiple information providers.
[0408] A "bait-and-switch" property refers to false property information that does not actually exist or is provided with the intention of misleading others.
[0409] "Filtering" refers to the process of flexibly selecting property information based on the emotional state recognized by the emotion engine.
[0410] "User terminal" refers to devices such as smartphones and PCs used by the user.
[0411] "Inquiry information" refers to the information a user enters when they express interest in a particular property and wish to request more detailed information or make an inquiry.
[0412] A "request message" refers to a message sent to an information provider, generated based on the request information and sentiment information.
[0413] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. A specific embodiment of this system is described below.
[0414] System Overview
[0415] This system receives and analyzes user preferences and sentiment information, accesses multiple information provider databases to retrieve property information, organizes and filters it, and provides it to the user's terminal. This system includes the following main components:
[0416] 1. User Interface (UI)
[0417] 2. Emotional Engine
[0418] 3. Server
[0419] 4. Database
[0420] 5. Information provider API
[0421] User interface and emotion engine
[0422] (User) Users search for real estate properties using devices such as smartphones and PCs. They input their desired conditions (area, budget, floor plan, amenities, etc.) through an application or web interface on their device. When users input their desired conditions, the device's camera and microphone are used to analyze the user's facial expressions and voice tone, and the emotion engine recognizes the user's emotional state.
[0423] For example, if a user enters "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pet-friendly," the camera will capture the user's face, and the emotion engine will determine that the user is "relaxed." This emotion information and desired conditions are then sent to the server.
[0424] Servers and databases
[0425] (Server) The server analyzes the received preferences and emotional information and generates search queries. Specifically, it analyzes each item of the preferences (area, budget, floor plan, equipment requirements, etc.) and creates search queries. At the same time, it stores the recognized emotional information in a database and takes the user's emotional state into consideration.
[0426] The server accesses databases from multiple information providers and collects relevant property information. For example, it uses APIs from information providers A, B, and C to retrieve property information.
[0427] Information integration and filtering
[0428] (Server) The server uses AI-based algorithms to integrate acquired property information, sort out duplicate properties, and remove decoy properties. For example, it detects duplicate properties and uses machine learning models (e.g., TensorFlow) to identify and remove decoy properties.
[0429] Next, the emotion engine filters property information based on the user's emotions. If the user is relaxed, it prioritizes properties in quiet environments; if the user is stressed, it prioritizes properties in relaxing environments.
[0430] Property information provision
[0431] (Server) Generates a sorted and filtered list of optimal properties and provides it to the user's terminal. The provided property list is sent in JSON format.
[0432] (Terminal) The received property list is displayed in the user's terminal UI. The user can view the presented property list and check the details of a specific property.
[0433] Handling inquiries
[0434] (User) When a user finds a property they are interested in, they click on the property to view details and then click the inquiry button. This prompts them to fill in the necessary information (name, email address, question, etc.) in the inquiry form.
[0435] (Terminal) Sends inquiry information and user sentiment status to the server.
[0436] (Server) The server automatically generates an inquiry message based on the received inquiry information and emotional state, applies options to prevent excessive sales contact, and sends it to the information provider. For example, if the user is "anxious," the server generates and sends a polite and reassuring message.
[0437] (Server) Sends a notification to the user that the query has been successfully submitted.
[0438] Example of a prompt
[0439] "We have developed a system that provides property information that matches the user's desired conditions. This system incorporates an emotion engine that analyzes the user's facial expressions and tone of voice to recognize their emotions. Based on these emotions, it filters property information and suggests properties that match the user's desired conditions. For example, if the user is feeling stressed, it will prioritize displaying properties that promote relaxation."
[0440] As described above, the present invention can analyze and recognize user emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[0441] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0442] Step 1:
[0443] (User) The user uses a smartphone or PC to enter their desired criteria for searching for real estate properties (area, budget, floor plan, amenities, etc.). The entered criteria are collected by the device.
[0444] Input: Area (e.g., Shinjuku-ku, Tokyo), Budget (e.g., under 100,000 yen), Floor plan (e.g., 1LDK), Amenities (e.g., pets allowed)
[0445] Operation: Enter your desired conditions into the user interface (UI).
[0446] Step 2:
[0447] (Device) The device uses its camera and microphone to enable an emotion engine that analyzes the user's facial expressions and voice tone to recognize emotions.
[0448] Input: User's facial expression and voice tone
[0449] Operation: The system captures the user's facial expressions with a camera and uses facial expression analysis software (e.g., OpenCV) to analyze them. It also collects voice tone with a microphone and uses speech analysis software (e.g., Google Cloud Speech-to-Text API) to analyze it.
[0450] Output: User's emotional information (e.g., "Relaxed")
[0451] Step 3:
[0452] (Terminal) The terminal sends the entered desired conditions and recognized emotion information to the server.
[0453] Input: A set of desired conditions and emotional information.
[0454] Operation: Converts desired conditions and sentiment data into JSON format and sends it to the server via an HTTP POST request.
[0455] Output: Desired conditions and sentiment information sent to the server
[0456] Step 4:
[0457] (Server) The server analyzes the received requests and identifies each item (area, budget, floor plan, equipment requirements). It also analyzes emotional information to understand the user's current emotional state.
[0458] Input: Desired conditions and emotional information
[0459] Operation: Analyzes the received JSON data, extracts each item of the desired conditions (e.g., "Area: Shinjuku Ward, Tokyo", "Budget: Under 100,000 yen"), and saves sentiment information to the database.
[0460] Output: Search queries and sentiment status
[0461] Step 5:
[0462] (Server) The server generates search queries based on the desired conditions and accesses databases of multiple information providers to collect property information.
[0463] Input: Search query (Example: "Shinjuku Ward, Tokyo; budget under 100,000 yen; 1LDK; pet-friendly")
[0464] Operation: Converts search queries into SQL queries and accesses multiple information provider APIs to retrieve matching property information.
[0465] Output: List of retrieved property information
[0466] Step 6:
[0467] (Server) The server integrates the acquired property information, sorts out duplicate properties, and removes decoy properties.
[0468] Input: List of acquired property information
[0469] Operation: Uses an AI-based algorithm to detect duplicate listings and a machine learning model (e.g., TensorFlow) to identify and remove decoy listings.
[0470] Output: Organized property information
[0471] Step 7:
[0472] (Server) The server filters property information based on the user's emotions, as recognized by the emotion engine.
[0473] Input: Organized property information and emotional state
[0474] Operation: Based on the user's emotional state, it filters the results to prioritize properties with a quiet, relaxing environment.
[0475] Output: List of filtered property information
[0476] Step 8:
[0477] (Server) The server generates the optimal property list and provides it to the user's terminal.
[0478] Input: List of filtered property listings
[0479] Operation: The filtered property list is formatted into JSON and sent to the terminal via HTTP POST.
[0480] Output: List of properties sent to the terminal
[0481] Step 9:
[0482] (Terminal) The terminal displays the received property list to the user.
[0483] Input: Received property list
[0484] Function: Displays property information in the app's user interface (UI), either in list format or by placing pins on a map.
[0485] Output: List of properties displayed to the user
[0486] Step 10:
[0487] (User) The user clicks on a property of interest from the presented list of properties to view detailed information.
[0488] Input: Property List
[0489] Action: Click the property card to proceed to the details screen.
[0490] Output: Screen to view detailed information
[0491] Step 11:
[0492] (User) Click the inquiry button to inquire about a property they are interested in.
[0493] Input: Detailed information screen
[0494] How to do it: Click the inquiry button and fill in the required information in the inquiry form that appears.
[0495] Output: Inquiry Information
[0496] Step 12:
[0497] (Terminal) Sends inquiry information and sentiment information to the server.
[0498] Input: Inquiry information and sentiment information
[0499] Operation: Converts query information into JSON format and sends it to the server via an HTTP POST request.
[0500] Output: Query information and sentiment information sent to the server
[0501] Step 13:
[0502] (Server) The server automatically generates a query message based on the received query information and sentiment information.
[0503] Input: Inquiry information and sentiment information
[0504] Function: Generates polite and reassuring messages, or messages with a relaxed atmosphere, depending on the user's emotional state.
[0505] Output: Generated query message
[0506] Step 14:
[0507] (Server) The server sends the inquiry message to the information provider, after applying options to prevent excessive sales calls.
[0508] Input: Generated inquiry message
[0509] Action: Checks the mailing list and applies an option to filter if the same information provider has already been contacted.
[0510] Output: Inquiry message sent to the information provider
[0511] Step 15:
[0512] (Server) The server sends a notification to the user that the query has been successfully sent.
[0513] Input: Inquiry submission status
[0514] Operation: Generates a notification message and sends it to the user's device via push notification or email.
[0515] Output: Inquiry completion notification sent to the user
[0516] (Application Example 2)
[0517] 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".
[0518] In traditional virtual stores, it is difficult to efficiently and appropriately provide users with information about the products they want. In particular, the uniform provision of information without considering the user's emotional state has led to a decrease in user satisfaction. Another challenge is that users often hesitate to make inquiries due to concerns about excessive sales calls, which hinders smooth communication.
[0519] 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.
[0520] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and emotional information to generate search queries, means for accessing multiple databases to obtain information, means for organizing duplicate information and removing invalid information from the obtained information, means for providing the organized information to the user terminal, means including an emotion engine that recognizes the user's emotions using a camera and microphone, and means for adaptively filtering information based on the recognized emotional information. This makes it possible to provide personalized product information that takes into account emotional information in addition to the user's preferences, thereby improving satisfaction with information provision and facilitating smooth inquiries.
[0521] "User preferences" refer to the specific requirements and needs that the user desires, including, for example, product category, budget, and specifications.
[0522] "Emotional information" refers to data that represents the user's emotional state, and is obtained by analyzing facial expressions and voice tone.
[0523] A "search query" is a set of search criteria generated based on the user's preferences and sentiment information, and is used to extract appropriate information from a database.
[0524] A "database" is a system that systematically stores related information, including data from multiple information providers.
[0525] "Invalid information" refers to information that is inappropriate or unhelpful to the user's needs.
[0526] A "camera" is a device that captures the user's facial expressions, thereby providing data for analyzing the user's emotional information.
[0527] A "microphone" is a device that records the user's voice and is used to analyze the tone of the voice to obtain emotional information.
[0528] An "emotion engine" is software or an algorithm used to analyze a user's emotional information, recognizing emotions from facial expressions and voice tone.
[0529] "Filtering" refers to the process of selecting acquired information based on specific criteria and removing unnecessary information.
[0530] A "user terminal" refers to a device that a user directly operates, and includes smartphones and personal computers.
[0531] An "inquiry message" is a message generated based on the user's inquiry information and sent to the information provider.
[0532] This invention relates to a virtual store system that receives user preferences and emotional information and provides optimal product information based on them. This system operates using a user terminal, a server, an emotional engine, and multiple databases.
[0533] System program
[0534] 1. Gathering user preferences and sentiments.
[0535] Users input their desired product category, budget, and other criteria using a smartphone or head-mounted display. Simultaneously, an emotion engine analyzes the user's facial expressions and voice tone using a camera and microphone to recognize emotional information.
[0536] 2. Sending and analyzing desired conditions and emotional information
[0537] The user terminal sends the entered preferences and recognized sentiment information to the server. The server receives this data and analyzes the preferences and sentiment information. The preferences are organized to clarify things like product category and budget.
[0538] 3. Generating search queries and collecting product information
[0539] The server generates search queries based on analyzed preferences and sentiment information. The generated queries are sent to multiple databases to collect relevant product information.
[0540] 4. Integration and organization of product information
[0541] The server uses AI-based algorithms to integrate the acquired product information, organize duplicate information, and remove invalid information.
[0542] 5. Emotion-based filtering and delivery
[0543] The server flexibly filters product information based on the user's emotions recognized by the emotion engine. For example, if the user is feeling stressed, it prioritizes displaying information about products that promote relaxation.
[0544] 6. Product details and inquiries
[0545] The user browses the presented product list and, if they wish to view detailed information about a specific product, they select that product. The user's terminal then displays the detailed information and an inquiry button.
[0546] 7. Generating inquiry information and reflecting sentiment.
[0547] A user clicks the inquiry button to make an inquiry about a product they are interested in. The user's device enters the necessary information and sends it to the server. The server automatically generates an inquiry message based on the received inquiry information and emotional information. For example, it generates a polite and reassuring message for a nervous user. The server sends the inquiry message and notifies the user that the inquiry has been successfully submitted.
[0548] Hardware and software to be used
[0549] Hardware: Smartphone, head-mounted display, camera, microphone
[0550] Software: Emotion recognition library, AI-based information filtering algorithm, user condition analysis module
[0551] Specific example
[0552] When a user wears a head-mounted display and accesses a virtual store:
[0553] 1. The user enters the product category "Home Appliances" and budget "Under 50,000 yen" by voice.
[0554] 2. The system analyzes facial expressions and recognizes that the user is relaxed.
[0555] 3. The user's preferences and emotional information are sent to the server.
[0556] 4. The server retrieves relevant product information from the database and filters it to prioritize information about products that promote relaxation.
[0557] 5. The server provides a well-organized product list to the user's terminal, and the user views the product list.
[0558] 6. The user selects a product they are interested in and checks the details.
[0559] Example of a prompt
[0560] "Please enter your desired category."
[0561] "Do you have any recommended products for relaxation?"
[0562] "Please tell me your recommended products for today (Desired category: Home appliances, Budget: Under 50,000 yen)"
[0563] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0564] Step 1:
[0565] The user inputs their desired product category, budget, and other criteria using a smartphone or head-mounted display. During this process, the camera and microphone capture the user's facial expressions and voice tone. The input consists of the user's desired criteria (product category, budget) and real-time video and audio data of their facial expressions.
[0566] Step 2:
[0567] The emotion engine analyzes the user's emotional information from acquired facial expression video and audio data. Here, it uses facial expression recognition algorithms and audio analysis algorithms to determine emotions and output emotional states such as "relaxed" or "stressed."
[0568] Step 3:
[0569] The user terminal sends the entered preferences and analyzed sentiment information to the server. The input data consists of preferences (in JSON format) and sentiment information (category data), and the output is a data package containing these.
[0570] Step 4:
[0571] The server analyzes the received preferences and sentiment information. The analysis process clarifies preferences based on product categories and budget, and captures sentiment information as the user's current state. The output of this step is organized preference data and sentiment information data.
[0572] Step 5:
[0573] The server generates a search query based on the analyzed preferences. The generated search query is sent to the relevant database to collect the corresponding product information. The input data consists of preferences and sentiment data, while the output is raw data retrieved from the database.
[0574] Step 6:
[0575] The server integrates the acquired product information, sorts out duplicates, and removes invalid information. This process uses an AI-based algorithm. The input is raw data, and the output is a cleaned-up list of product information.
[0576] Step 7:
[0577] The server filters product information based on emotional information. For example, if the server determines that the user is relaxed, it prioritizes displaying information about products that promote relaxation. The input is a cleaned-up list of product information and emotional information, and the output is a prioritized list of products.
[0578] Step 8:
[0579] The server provides the user terminal with an organized product list. The input data is a prioritized product list, and the output is the data sent to the user terminal.
[0580] Step 9:
[0581] The user browses the presented product list and selects a specific product. When the user clicks on a product, detailed information and an inquiry button are displayed. The input data is the product list, and the output is the detailed information of the selected product.
[0582] Step 10:
[0583] The user clicks the inquiry button to make an inquiry about a product they are interested in. The user's terminal presents the necessary inquiry information as an input form and receives it as input data. This inquiry information is sent to the server. The user's input data is the inquiry information, and the output is the data sent to the server.
[0584] Step 11:
[0585] The server generates a query message based on the received query information and sentiment information. For example, if the user is feeling anxious, it will generate a polite message that provides reassurance. The input data consists of query information and sentiment information, and the output is the generated query message.
[0586] Step 12:
[0587] The server sends the query message to the relevant information provider and also sends a notification to the user that the query has been successfully submitted. The input data is the generated query message, and the output is the data sent to the information provider and the notification to the user.
[0588] 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.
[0589] 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.
[0590] 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.
[0591] [Second Embodiment]
[0592] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0593] 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.
[0594] 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).
[0595] 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.
[0596] 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.
[0597] 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).
[0598] 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.
[0599] 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.
[0600] 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.
[0601] 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.
[0602] 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.
[0603] 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".
[0604] This invention consists of several main components, including a user, a terminal, and a server. The program processing of this system is described below in natural language.
[0605] 1. Gathering information requested by the user.
[0606] (User): When searching for real estate properties, the user uses a device (e.g., smartphone or PC) to input their desired conditions (area, budget, floor plan, amenities, etc.). This allows the user to obtain a list of properties that can be used as specific consideration.
[0607] 2. Submission and analysis of desired conditions
[0608] (Terminal): Sends the entered desired conditions to the server.
[0609] (Server): Receives the desired conditions and performs analysis. In this analysis step, each item such as desired area and budget is clearly identified and constructed as a search query.
[0610] 3. Collection and integration of property information
[0611] (Server): Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and retrieves property information using generated search queries. The retrieved property information is integrated within the server, and duplicate and bait-and-switch listings are detected.
[0612] 4. Removal and filtering of decoy properties
[0613] (Server): Analyzes the acquired property information. As an analysis method, an AI-based algorithm is used to identify and remove "bait properties". Duplicate property information is also sorted from the list, and a unique property list is generated.
[0614] 5. Generation and provision of the optimal property list
[0615] (Server): Based on the user's desired conditions, it filters the properties deemed most suitable in order of priority and generates a list of final candidates.
[0616] (Server): Send this final list of candidates to the user's terminal.
[0617] (Terminal): Displays the received property list to the user.
[0618] 6. Check property details and make inquiries
[0619] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[0620] (Terminal): Detailed information is displayed as a result, along with an inquiry button. If the user wishes to make an inquiry, they click this button.
[0621] 7. Generating and sending inquiry information
[0622] (Terminal): Enter the required information into the inquiry form and send it to the server.
[0623] (Server): Automatically generates a query message based on the received query information.
[0624] (Server): Apply the option to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[0625] (Server): Sends a notification to the user that the query has been successfully submitted.
[0626] Specific example
[0627] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[0628] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into a smartphone app.
[0629] 2. (Terminal): Sends the entered information to the server.
[0630] 3. (Server): Analyzes the received information and generates search queries.
[0631] 4. (Server): Access the database of real estate agents and collect relevant property information.
[0632] 5. (Server): Analyzes the collected property information, excludes decoy properties, and merges duplicate properties.
[0633] 6. (Server): Sends the organized property list to the user's terminal.
[0634] 7. (Terminal): Display the received property list to the user.
[0635] 8. (User): Click on a property of interest from the displayed list to view detailed information.
[0636] 9. (User): Click the inquiry button to make an inquiry about a specific property.
[0637] 10. (Terminal): Enter the inquiry information and send it to the server.
[0638] 11. (Server): Based on the received inquiry information, it generates an inquiry message and sends it to the real estate agent.
[0639] 12. (Server): Sends a notification to the user that the query has been successfully submitted.
[0640] In this way, this system simplifies the process of searching for and inquiring about real estate properties, and provides a set of functions to improve user convenience and satisfaction.
[0641] The following describes the processing flow.
[0642] Step 1:
[0643] (User) Uses a smartphone or PC to enter desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.).
[0644] Step 2:
[0645] (Terminal) Sends the entered desired conditions to the server.
[0646] Step 3:
[0647] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[0648] Step 4:
[0649] (Server) Generates search queries based on desired conditions. For example, it creates queries for "Shinjuku Ward, Tokyo", "budget under 80,000 yen", "2DK or larger", and "pets allowed".
[0650] Step 5:
[0651] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[0652] Step 6:
[0653] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[0654] Step 7:
[0655] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[0656] Step 8:
[0657] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[0658] Step 9:
[0659] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[0660] Step 10:
[0661] (Server) Remove the decoy property from the property list.
[0662] Step 11:
[0663] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. For example, it prioritizes properties that exactly match the criteria of "Shinjuku Ward, Tokyo," "budget under 80,000 yen," "2DK or larger," and "pets allowed."
[0664] Step 12:
[0665] (Server) Generates the final property list and sends it to the user's terminal.
[0666] Step 13:
[0667] (Terminal) Displays the received property list to the user.
[0668] Step 14:
[0669] (User) To view the displayed property list and check the details of a specific property, click on that property.
[0670] Step 15:
[0671] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[0672] Step 16:
[0673] (User) Click the inquiry button to inquire about a property they are interested in.
[0674] Step 17:
[0675] (Terminal) Displays an inquiry form, and sends the information entered by the user into the form to the server.
[0676] Step 18:
[0677] (Server) The server automatically generates an inquiry message based on the received inquiry information. This message may include, for example, the user's name, contact information, and the question.
[0678] Step 19:
[0679] (Server) After applying options to prevent excessive sales calls, the inquiry message is sent to the information provider.
[0680] Step 20:
[0681] (Server) Notifies the user that the query has been successfully sent.
[0682] (Example 1)
[0683] 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."
[0684] Traditional real estate search systems were time-consuming to retrieve property information that matched users' desired criteria, and often included bait-and-switch listings and duplicate information. Furthermore, they suffered from excessive sales calls during the inquiry process. There is a need to solve these problems and provide a system that is both convenient and reliable for users.
[0685] 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.
[0686] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases and obtaining property information, means for analyzing the obtained property information with an AI algorithm to sort out duplicate properties and remove decoy properties, means for providing the sorted property information to the user terminal, and means for receiving inquiry information from the user, generating an inquiry message, and sending it to the information provider. This simplifies the process from searching for real estate properties to making inquiries, and enables the provision of reliable and satisfying information to the user.
[0687] "User" refers to the end user who is looking for a real estate property.
[0688] "Terminal" refers to a computer device used by a user (such as a smartphone, PC, or tablet).
[0689] A "server" refers to a computer system on a network that receives, analyzes, processes, and provides information to users.
[0690] "Desired conditions" refer to the requests that users enter when searching for properties, such as area, budget, floor plan, and amenities.
[0691] "Means of receiving" refers to the processes and technologies that allow the server to receive user requests and inquiry information.
[0692] "Methods for analyzing and generating search queries" refers to the process or technology of analyzing received desired conditions and generating search queries (commands for database searches) based on those conditions.
[0693] A "database of information providers" refers to a database where property information managed by real estate agents and other related parties is stored.
[0694] "Property information" refers to information about a property, such as its location, price, floor plan, and amenities.
[0695] "Methods for sorting out duplicate listings and removing decoy listings" refers to processes and technologies that eliminate duplicate information from listing information acquired by the server and identify and remove unreliable decoy listings.
[0696] "AI algorithm" refers to analytical methods that utilize artificial intelligence technology.
[0697] "Inquiry information" refers to data entered by users to indicate questions or interest regarding a property.
[0698] A "contact message" refers to a message generated by the server and sent to the information provider, which contains the user's inquiry.
[0699] The "option to prevent excessive sales calls" refers to settings or mechanisms that automatically control excessive sales calls from real estate agents in response to user inquiries.
[0700] Modes for carrying out the invention
[0701] This invention is a system that streamlines the search and inquiry process for real estate properties, comprising key components such as users, terminals, and servers. The system takes the user's desired conditions as input, collects corresponding property information, and performs a series of processes to provide the most suitable property list.
[0702] Hardware and software to be used
[0703] This system uses the following main hardware and software.
[0704] Device: A device used by a user, such as a smartphone, personal computer (PC), or tablet.
[0705] Server: Receives, analyzes, processes, and provides data. Examples include web servers such as Apache and Nginx.
[0706] Database: Stores and manages property information and user inquiry information. Databases used include, for example, MySQL, PostgreSQL, and MongoDB.
[0707] Generative AI models: Used for property analysis and optimization. Specifically, frameworks such as TensorFlow and PyTorch are utilized.
[0708] Specific examples of system processing
[0709] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[0710] 1. (User) User A enters "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into the app on their smartphone.
[0711] 2. (Terminal) The terminal receives the entered information and creates an HTTP POST request to send it to the server.
[0712] 3. (Server) The server analyzes the received information and generates search queries. This process uses libraries such as Python's Pandas library.
[0713] 4. (Server) The server uses the generated search query to access databases of multiple real estate agents and collect relevant property information.
[0714] 5. (Server) The collected property information is analyzed using an AI algorithm to remove decoy properties and organize duplicate information. TensorFlow or PyTorch is used for this analysis.
[0715] 6. (Server) Generates the optimal property list and sends the reformatted data to the user terminal.
[0716] 7. (Terminal) The user's terminal analyzes the received property list and displays it in a format that is easy for the user to view.
[0717] 8. (User) User A clicks on a property of interest from the displayed list to view detailed information.
[0718] 9. (User) Click the inquiry button to make an inquiry about a specific property.
[0719] 10. (Terminal) Enter the inquiry information and format it into data ready to send to the server.
[0720] 11. (Server) Based on the received inquiry information, the server generates an inquiry message, applies options to prevent excessive sales contact as needed, and then sends it to the real estate agent.
[0721] 12. (Server) Send a notification to the user that the query has been successfully sent.
[0722] Thus, this system provides a series of functions to efficiently collect and provide users with the real estate property information they desire, and to simplify the inquiry process.
[0723] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0724] Step 1:
[0725] (User) Users enter their search criteria for real estate properties on a device such as a smartphone or PC. These criteria include area, budget, floor plan, and amenities. For example, a user might enter "Shinjuku Ward, Tokyo; budget under 80,000 yen; 2DK or larger; pets allowed." The device retains the entered data.
[0726] Input: User's desired conditions (area, budget, floor plan, equipment requirements, etc.)
[0727] Output: User preference data stored on the device.
[0728] Step 2:
[0729] (Terminal) The terminal creates an HTTP POST request to send the user's entered desired conditions data to the server. This request has a JSON-formatted payload containing the desired conditions data. After the request is created, it is sent to the server.
[0730] Input: User's desired conditions data
[0731] Output: HTTP POST request sent to the server
[0732] Step 3:
[0733] (Server) The server analyzes the desired conditions data received from the terminal. It analyzes the received data and extracts items such as desired area, budget, floor plan, and equipment requirements. The Python Pandas library is used for this analysis. After the analysis is complete, a search query is generated.
[0734] Input: Desired conditions data from the device
[0735] Output: Analyzed desired criteria elements and search query
[0736] Step 4:
[0737] (Server) The server uses the generated search query to access multiple information provider databases. This is done using SQL queries and API requests. It retrieves property information that matches the search query.
[0738] Input: Search query
[0739] Output: Property information obtained from multiple information providers.
[0740] Step 5:
[0741] (Server) The server stores the acquired property information in an integrated database and performs data integration processing. It identifies duplicate property information from the integrated data and uses an AI algorithm to detect and remove decoy properties. TensorFlow and PyTorch are used for this analysis.
[0742] Input: Acquired property information
[0743] Output: Organized property information with duplicate and decoy properties removed.
[0744] Step 6:
[0745] (Server) The server generates a list of properties that best match the user's desired conditions based on the organized property information. It uses a ranking algorithm to sort the properties in order of priority and converts them into a data format to be sent to the user's terminal.
[0746] Input: Organized property information
[0747] Output: Optimal property list
[0748] Step 7:
[0749] (Terminal) The terminal analyzes the optimal property list data received from the server and displays it in a user-friendly format. This display uses list or card format and includes detailed information and images for each property.
[0750] Input: Property list data sent from the server
[0751] Output: Property list displayed on the user's terminal
[0752] Step 8:
[0753] (User) The user views the provided property list and clicks on a property that interests them. This action causes the device to request detailed information from the server and display the relevant information.
[0754] Input: Property list and user click actions
[0755] Output: Details of the clicked property
[0756] Step 9:
[0757] (User) When a user wants to inquire about a specific property, they click the "Inquiry button." This action displays an inquiry form in a pop-up window. The user then fills in the required information in the form.
[0758] Input: Details of the clicked property and inquiry action
[0759] Output: Input query information
[0760] Step 10:
[0761] (Terminal) The terminal formats the inquiry information entered by the user into data for transmission to the server and creates an HTTP POST request. After the request is created, it is sent to the server.
[0762] Input: User inquiry information
[0763] Output: HTTP POST request sent to the server
[0764] Step 11:
[0765] (Server) The server analyzes the received inquiry information and generates an inquiry message. Options are also applied to prevent excessive sales calls. The generated inquiry message is sent to the information provider.
[0766] Input: User inquiry information
[0767] Output: Generated query message
[0768] Step 12:
[0769] (Server) The server generates and sends a notification to the user confirming that the query has been successfully submitted. The user receives this notification on their device and can confirm that the query was completed successfully.
[0770] Input: Result of sending the inquiry message
[0771] Output: Notification to user that transmission is complete.
[0772] (Application Example 1)
[0773] 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."
[0774] The challenges include improving the efficiency of inventory management and optimizing delivery routes at logistics centers, as well as enhancing user convenience by removing duplicate and decoy information from the information provider database. In conventional systems, these processes are often performed manually, resulting in time-consuming and labor-intensive work, and a high risk of errors. Furthermore, there is a need for improvement in measures to prevent excessive sales communications.
[0775] 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.
[0776] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for monitoring the inventory status of the logistics center in real time and generating alerts according to specific conditions, means for analyzing and proposing the optimal delivery route based on the delivery address using AI, means for integrating multiple delivery orders and removing duplicate order information, means for providing the organized property information to the user terminal, and means for sending notifications to the user. This makes it possible to efficiently and automatically manage inventory at the logistics center and optimize delivery routes. In addition, the automation of duplicate and decoy information management greatly improves user convenience.
[0777] "Means for receiving user preferences" refers to a means for users to input their desired conditions and for that information to be incorporated into the system.
[0778] "Means for analyzing desired conditions and generating search queries" refers to methods for analyzing the desired conditions received from users and generating appropriate search queries.
[0779] "Methods for obtaining property information by accessing multiple information provider databases" refers to methods for obtaining necessary property information by accessing the databases of multiple information providers.
[0780] "Methods for sorting out duplicate properties from acquired property information and removing decoy properties" refers to methods for analyzing acquired property information, sorting out duplicate property information, and removing false decoy properties.
[0781] "A means of monitoring the inventory status of a logistics center in real time and generating alerts according to specific conditions" refers to a means of constantly monitoring the inventory status of a logistics center and generating alerts based on specific conditions (e.g., insufficient inventory, excess inventory).
[0782] "A method for analyzing and proposing the optimal delivery route based on the delivery address using AI" refers to a method for using AI technology to analyze the optimal delivery route based on the delivery address and propose it to the user.
[0783] "Means for integrating multiple delivery orders and removing duplicate order information" refers to means for integrating multiple delivery order information and removing duplicate order information.
[0784] "Means for providing organized property information to a user terminal" refers to means for transmitting and providing organized property information to a user terminal.
[0785] "Means of sending notifications to users" refers to means of notifying users of important information or updates.
[0786] This invention is a system that streamlines the search for real estate properties, inventory management at logistics centers, and optimization of delivery routes. The processing of this system's program is described below in natural language.
[0787] 1. Gathering information requested by the user.
[0788] Users can use a device (such as a smartphone or PC) to input their desired conditions (area, budget, floor plan, equipment requirements, etc.) to request a list of properties that can serve as specific considerations and suggestions for the optimal delivery route.
[0789] 2. Submission and analysis of desired conditions
[0790] The terminal sends the entered desired conditions to the server.
[0791] The server analyzes the received request conditions. In the analysis step, each item, such as the desired area, budget, and delivery volume, is clearly identified and constructed as a search query.
[0792] 3. Collection and integration of property and inventory information
[0793] The server accesses multiple information provider databases and retrieves property information using generated search queries. It also monitors the inventory status of logistics centers in real time and collects necessary data.
[0794] 4. Removal of decoy properties and generation of inventory alerts
[0795] The server analyzes the acquired property information, uses AI-based algorithms to identify and remove decoy properties. It also monitors inventory status based on specific conditions and generates alerts as needed.
[0796] 5. Optimization and integration of delivery routes
[0797] The server uses AI technology to generate the optimal delivery route for the entered delivery address and consolidates multiple delivery orders. Duplicate order information is excluded.
[0798] 6. Generating and providing the optimal list
[0799] The server filters the properties and delivery routes deemed most suitable based on the user's preferences, prioritizing them in order of priority, and generates a list of final candidates.
[0800] The server sends this final list of candidates to the user's terminal.
[0801] The device displays the received information to the user.
[0802] 7. Notifications and Inquiries
[0803] Users browse the presented list and, if necessary, check for more information about specific properties or deliveries.
[0804] The device enters the necessary information into the inquiry form and sends it to the server.
[0805] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully submitted.
[0806] Hardware and software used
[0807] Hardware: Smartphones, servers, PCs
[0808] Software: Python, REST API, AI algorithms
[0809] Specific example
[0810] If User B is looking for the optimal delivery route within Tokyo with a budget of 8,000 yen and a high volume of deliveries:
[0811] 1. The user enters "Tokyo, budget 8000 yen, delivery volume: high" into the smartphone app.
[0812] 2. The terminal sends the entered information to the server.
[0813] 3. The server analyzes the received information and performs delivery optimization that meets the specified conditions.
[0814] 4. The server accesses multiple warehouse databases to collect inventory information.
[0815] 5. The server generates the optimal delivery route based on the delivery address and consolidates duplicate orders.
[0816] 6. The server sends the optimal inventory information and delivery route to the user's terminal.
[0817] 7. The device notifies the user of the received information.
[0818] Example of a prompt:
[0819] "Please propose the optimal delivery route within Tokyo, with a budget of 8,000 yen and a high volume of deliveries."
[0820] In this way, we provide a system that enables efficient inventory management and optimization of delivery routes in logistics centers.
[0821] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0822] Step 1:
[0823] The user uses a device (e.g., a smartphone) to enter their desired conditions (area, budget, delivery volume, etc.).
[0824] Input: Conditions such as area, budget, and delivery volume.
[0825] Output: Data matching the desired conditions.
[0826] Step 2:
[0827] The terminal sends the user's entered preferences to the server.
[0828] Input: User's desired conditions data.
[0829] Output: The result of sending data to the server.
[0830] Step 3:
[0831] The server analyzes the received request conditions and generates a search query based on the analyzed data.
[0832] Input: Desired conditions data received from the terminal.
[0833] Data processing: Analysis of desired conditions, generation of queries.
[0834] Output: Search query.
[0835] Step 4:
[0836] The server uses the generated search query to access multiple information provider databases and retrieve property information and logistics center inventory information.
[0837] Input: Search query.
[0838] Data processing: Accessing information provider databases and retrieving data.
[0839] Output: Acquired property information and inventory information.
[0840] Step 5:
[0841] The server analyzes the acquired property information, uses AI algorithms to filter out duplicate properties, and removes deceptive listings. It also generates alerts under specific conditions based on inventory information.
[0842] Input: Acquired property information and inventory information.
[0843] Data processing: Analysis of property information, sorting of duplicate properties, removal of bait-and-switch properties, monitoring of inventory information, and generation of alerts.
[0844] Output: Organized property information, inventory alerts.
[0845] Step 6:
[0846] The server uses AI technology to analyze and propose the optimal delivery route based on the provided delivery address. Furthermore, it consolidates multiple delivery orders and removes duplicate order information.
[0847] Input: Delivery address, order information.
[0848] Data processing: Analysis and optimization of delivery routes, and consolidation of duplicate orders.
[0849] Output: Optimized delivery route.
[0850] Step 7:
[0851] The server filters the most suitable properties and delivery routes based on the user's preferences, prioritizing them in order of priority, and generates a final list of candidates.
[0852] Input: Desired conditions, organized property information, optimized route information.
[0853] Data processing: Filtering based on priority, generating lists.
[0854] Output: List of final candidates.
[0855] Step 8:
[0856] The server sends this final list of candidates to the user's terminal.
[0857] Input: List of final candidates.
[0858] Output: Results of sending the list to the user terminal.
[0859] Step 9:
[0860] The device displays the received list to the user.
[0861] Input: The list of final candidates received from the server.
[0862] Output: The displayed list.
[0863] Step 10:
[0864] Users can view specific properties and delivery details from the presented list and make inquiries if necessary.
[0865] Input: The displayed list. Output: The query content.
[0866] Step 11:
[0867] The device enters the necessary information into the inquiry form and sends it to the server.
[0868] Input: User inquiry information.
[0869] Output: Query data sent to the server.
[0870] Step 12:
[0871] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully sent.
[0872] Input: Inquiry information.
[0873] Data processing: Generating inquiry messages, sending them to information providers, and notifying users.
[0874] Output: Inquiry message to information provider, notification to user.
[0875] 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.
[0876] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. The processing of this system's program is described below in natural language.
[0877] 1. Gathering user preferences and sentiments.
[0878] (User): When searching for real estate properties, the user uses a smartphone or PC to input their desired conditions (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine uses the camera and microphone to analyze the user's facial expressions and voice tone to recognize their emotions.
[0879] 2. Sending and analyzing desired conditions and emotional information
[0880] (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[0881] (Server): Analyzes desired conditions, clearly identifying each item (area, budget, floor plan, equipment requirements), and analyzes emotional information to understand the user's current emotional state.
[0882] 3. Generating search queries and collecting property information
[0883] (Server): Generates search queries based on desired conditions and accesses multiple information provider databases (e.g., real estate agents A, B, and C) to collect property information.
[0884] 4. Integration and organization of property information
[0885] (Server): Uses an AI-based algorithm to integrate acquired property information, sort out duplicate properties, and remove decoy properties.
[0886] 5. Emotion-based filtering and delivery
[0887] (Server): Based on the emotions of the user recognized by the emotion engine, property information is flexibly filtered. For example, if the user is feeling stressed, properties with a relaxing environment will be displayed preferentially.
[0888] (Server): Generates the optimal property list and provides it to the user's terminal.
[0889] (Terminal): Displays the received property list to the user.
[0890] 6. Check property details and make inquiries
[0891] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[0892] (Device): Detailed information is displayed, and a contact button is also displayed.
[0893] 7. Generating inquiry information and reflecting sentiment.
[0894] (User): Click the inquiry button to inquire about a property of interest.
[0895] (Terminal): Enter the required information into the inquiry form and send it to the server.
[0896] (Server): Based on the received inquiry information and the user's emotional state, it automatically generates inquiry messages. For example, for a nervous user, it generates a polite and reassuring message.
[0897] (Server): Sends inquiry messages to information providers (e.g., real estate agents) after applying options to prevent excessive sales calls.
[0898] (Server): Sends a notification to the user that the query has been successfully submitted.
[0899] Specific example
[0900] Example 1: When User B searches for a 1LDK apartment in Shinjuku Ward, Tokyo, with a budget of 100,000 yen or less, and pet-friendly.
[0901] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pets allowed" into a smartphone app, and the emotion engine analyzes the user's facial expression and determines that they are "relaxed."
[0902] 2. (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[0903] 3. (Server): Analyzes the desired conditions and generates search queries. Simultaneously, it analyzes emotional information and considers the emotion of "relaxed."
[0904] 4. (Server): Access the database of real estate agents and collect relevant property information.
[0905] 5. (Server): Analyzes the collected property information and removes duplicate properties and bait properties.
[0906] 6. (Server): Based on emotional information, it prioritizes presenting properties with a quiet environment that allows for relaxation.
[0907] 7. (Server): Sends the organized property list to the user's terminal.
[0908] 8. (Terminal): Display the received property list to the user.
[0909] 9. (User): Click on a property of interest from the displayed list to view detailed information.
[0910] 10. (User): Click the inquiry button to inquire about a specific property.
[0911] 11. (Terminal): Enter the inquiry information and send it to the server.
[0912] 12. (Server): Based on the received inquiry information and emotional state, it generates an inquiry message while maintaining a relaxed atmosphere and sends it to the real estate agent.
[0913] 13. (Server): Sends a notification to the user that the query has been successfully submitted.
[0914] In this way, this system can analyze and recognize users' emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[0915] The following describes the processing flow.
[0916] Step 1:
[0917] The user uses a smartphone or PC to input their desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine analyzes the user's facial expressions and voice tone using the device's camera and microphone to recognize the user's emotions.
[0918] Step 2:
[0919] (Terminal) The entered desired conditions and recognized emotion information are sent to the server.
[0920] Step 3:
[0921] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[0922] Step 4:
[0923] (Server) Analyzes the received emotional information to understand the user's current emotional state.
[0924] Step 5:
[0925] (Server) Generates search queries based on desired conditions, for example, creating queries for "Shinjuku Ward, Tokyo", "Budget under 100,000 yen", "1LDK", and "Pets allowed".
[0926] Step 6:
[0927] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[0928] Step 7:
[0929] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[0930] Step 8:
[0931] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[0932] Step 9:
[0933] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[0934] Step 10:
[0935] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[0936] Step 11:
[0937] (Server) Remove the decoy property from the property list.
[0938] Step 12:
[0939] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. At the same time, it considers emotional information, prioritizing properties with relaxing environments for relaxed users and properties with stress-reducing effects for stressed users.
[0940] Step 13:
[0941] (Server) Generates the final property list and provides it to the user terminal.
[0942] Step 14:
[0943] (Terminal) Displays the received property list to the user. The list reflects filtering results that take sentiment into consideration.
[0944] Step 15:
[0945] (User) To view the displayed property list and check the details of a specific property, click on that property.
[0946] Step 16:
[0947] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[0948] Step 17:
[0949] (User) Click the inquiry button to inquire about a property they are interested in.
[0950] Step 18:
[0951] (Terminal) Displays an inquiry form, and the user enters the necessary information.
[0952] Step 19:
[0953] (Terminal) Sends the entered inquiry information to the server.
[0954] Step 20:
[0955] (Server) The server automatically generates inquiry messages based on the received inquiry information and the user's emotional state. For example, it generates casual messages for relaxed users and polite, reassuring messages for stressed users.
[0956] Step 21:
[0957] (Server) Apply options to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[0958] Step 22:
[0959] (Server) Notifies the user that the query has been successfully sent.
[0960] (Example 2)
[0961] 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".
[0962] Traditional real estate search systems provide property information based on the user's desired conditions, but they often fail to consider the user's emotional state, which can degrade the quality of the user experience. Furthermore, property information obtained from multiple sources often includes duplicates and bait-and-switch listings, and there is a lack of mechanisms to properly organize and remove these. Additionally, there are insufficient mechanisms to prevent excessive sales calls during inquiries.
[0963] The identification processing performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving the user's desired conditions and emotional information, means for analyzing the received desired conditions and emotional information to generate a search query, means for accessing databases of multiple information providers to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for filtering property information based on the user's emotions recognized by the emotion engine, and means for providing the organized and filtered property information to the user terminal. This enables personalized property searches that take into account the user's emotional state, and also allows for the removal of duplicates and decoy properties. Furthermore, the mechanism for preventing excessive sales calls is strengthened.
[0964] A "user" refers to a person who enters their desired criteria to search for real estate properties and whose emotional state is analyzed by an emotion engine.
[0965] "Desired conditions" refers to information about the property the user wants, such as area, budget, floor plan, and amenities.
[0966] "Emotional information" refers to information about the user's emotional state as recognized by the emotion engine.
[0967] An "emotion engine" refers to a system that uses cameras and microphones to analyze a user's facial expressions and voice tone, and recognizes their emotional state.
[0968] A "server" refers to a device or system that receives and analyzes user preferences and emotional information, acquires property information, organizes and filters it, and provides it to the user's terminal.
[0969] A "database of information providers" refers to multiple databases or APIs that can collect real estate property information.
[0970] A "search query" refers to an inquiry generated based on the user's desired conditions and sentiment information, used to retrieve property information.
[0971] "Property information" refers to information about real estate properties, including details such as area, price, floor plan, and amenities.
[0972] "Duplicate listings" refer to identical property information obtained from multiple information providers.
[0973] A "bait-and-switch" property refers to false property information that does not actually exist or is provided with the intention of misleading others.
[0974] "Filtering" refers to the process of flexibly selecting property information based on the emotional state recognized by the emotion engine.
[0975] "User terminal" refers to devices such as smartphones and PCs used by the user.
[0976] "Inquiry information" refers to the information a user enters when they express interest in a particular property and wish to request more detailed information or make an inquiry.
[0977] A "request message" refers to a message sent to an information provider, generated based on the request information and sentiment information.
[0978] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. A specific embodiment of this system is described below.
[0979] System Overview
[0980] This system receives and analyzes user preferences and sentiment information, accesses multiple information provider databases to retrieve property information, organizes and filters it, and provides it to the user's terminal. This system includes the following main components:
[0981] 1. User Interface (UI)
[0982] 2. Emotional Engine
[0983] 3. Server
[0984] 4. Database
[0985] 5. Information provider API
[0986] User interface and emotion engine
[0987] (User) Users search for real estate properties using devices such as smartphones and PCs. They input their desired conditions (area, budget, floor plan, amenities, etc.) through an application or web interface on their device. When users input their desired conditions, the device's camera and microphone are used to analyze the user's facial expressions and voice tone, and the emotion engine recognizes the user's emotional state.
[0988] For example, if a user enters "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pet-friendly," the camera will capture the user's face, and the emotion engine will determine that the user is "relaxed." This emotion information and desired conditions are then sent to the server.
[0989] Servers and databases
[0990] (Server) The server analyzes the received preferences and emotional information and generates search queries. Specifically, it analyzes each item of the preferences (area, budget, floor plan, equipment requirements, etc.) and creates search queries. At the same time, it stores the recognized emotional information in a database and takes the user's emotional state into consideration.
[0991] The server accesses databases from multiple information providers and collects relevant property information. For example, it uses APIs from information providers A, B, and C to retrieve property information.
[0992] Information integration and filtering
[0993] (Server) The server uses AI-based algorithms to integrate acquired property information, sort out duplicate properties, and remove decoy properties. For example, it detects duplicate properties and uses machine learning models (e.g., TensorFlow) to identify and remove decoy properties.
[0994] Next, the emotion engine filters property information based on the user's emotions. If the user is relaxed, it prioritizes properties in quiet environments; if the user is stressed, it prioritizes properties in relaxing environments.
[0995] Property information provision
[0996] (Server) Generates a sorted and filtered list of optimal properties and provides it to the user's terminal. The provided property list is sent in JSON format.
[0997] (Terminal) The received property list is displayed in the user's terminal UI. The user can view the presented property list and check the details of a specific property.
[0998] Handling inquiries
[0999] (User) When a user finds a property they are interested in, they click on the property to view details and then click the inquiry button. This prompts them to fill in the necessary information (name, email address, question, etc.) in the inquiry form.
[1000] (Terminal) Sends inquiry information and user sentiment status to the server.
[1001] (Server) The server automatically generates an inquiry message based on the received inquiry information and emotional state, applies options to prevent excessive sales contact, and sends it to the information provider. For example, if the user is "anxious," the server generates and sends a polite and reassuring message.
[1002] (Server) Sends a notification to the user that the query has been successfully submitted.
[1003] Example of a prompt
[1004] "We have developed a system that provides property information that matches the user's desired conditions. This system incorporates an emotion engine that analyzes the user's facial expressions and tone of voice to recognize their emotions. Based on these emotions, it filters property information and suggests properties that match the user's desired conditions. For example, if the user is feeling stressed, it will prioritize displaying properties that promote relaxation."
[1005] As described above, the present invention can analyze and recognize user emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[1006] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1007] Step 1:
[1008] (User) The user uses a smartphone or PC to enter their desired criteria for searching for real estate properties (area, budget, floor plan, amenities, etc.). The entered criteria are collected by the device.
[1009] Input: Area (e.g., Shinjuku-ku, Tokyo), Budget (e.g., under 100,000 yen), Floor plan (e.g., 1LDK), Amenities (e.g., pets allowed)
[1010] Operation: Enter your desired conditions into the user interface (UI).
[1011] Step 2:
[1012] (Device) The device uses its camera and microphone to enable an emotion engine that analyzes the user's facial expressions and voice tone to recognize emotions.
[1013] Input: User's facial expression and voice tone
[1014] Operation: The system captures the user's facial expressions with a camera and uses facial expression analysis software (e.g., OpenCV) to analyze them. It also collects voice tone data with a microphone and analyzes it using speech analysis software (e.g., Google Cloud Speech-to-Text API).
[1015] Output: User's emotional information (e.g., "Relaxed")
[1016] Step 3:
[1017] (Terminal) The terminal sends the entered desired conditions and recognized emotion information to the server.
[1018] Input: A set of desired conditions and emotional information.
[1019] Operation: Converts desired conditions and sentiment data into JSON format and sends it to the server via an HTTP POST request.
[1020] Output: Desired conditions and sentiment information sent to the server
[1021] Step 4:
[1022] (Server) The server analyzes the received requests and identifies each item (area, budget, floor plan, equipment requirements). It also analyzes emotional information to understand the user's current emotional state.
[1023] Input: Desired conditions and emotional information
[1024] Operation: Analyzes the received JSON data, extracts each item of the desired conditions (e.g., "Area: Shinjuku Ward, Tokyo", "Budget: Under 100,000 yen"), and saves sentiment information to the database.
[1025] Output: Search queries and sentiment status
[1026] Step 5:
[1027] (Server) The server generates search queries based on the desired conditions and accesses databases of multiple information providers to collect property information.
[1028] Input: Search query (Example: "Shinjuku Ward, Tokyo; budget under 100,000 yen; 1LDK; pet-friendly")
[1029] Operation: Converts search queries into SQL queries and accesses multiple information provider APIs to retrieve matching property information.
[1030] Output: List of retrieved property information
[1031] Step 6:
[1032] (Server) The server integrates the acquired property information, sorts out duplicate properties, and removes decoy properties.
[1033] Input: List of acquired property information
[1034] Operation: Uses an AI-based algorithm to detect duplicate listings and a machine learning model (e.g., TensorFlow) to identify and remove decoy listings.
[1035] Output: Organized property information
[1036] Step 7:
[1037] (Server) The server filters property information based on the user's emotions, as recognized by the emotion engine.
[1038] Input: Organized property information and emotional state
[1039] Operation: Based on the user's emotional state, it filters the results to prioritize properties with a quiet, relaxing environment.
[1040] Output: List of filtered property information
[1041] Step 8:
[1042] (Server) The server generates the optimal property list and provides it to the user's terminal.
[1043] Input: List of filtered property listings
[1044] Operation: The filtered property list is formatted into JSON and sent to the terminal via HTTP POST.
[1045] Output: List of properties sent to the terminal
[1046] Step 9:
[1047] (Terminal) The terminal displays the received property list to the user.
[1048] Input: Received property list
[1049] Function: Displays property information in the app's user interface (UI), either in list format or by placing pins on a map.
[1050] Output: List of properties displayed to the user
[1051] Step 10:
[1052] (User) The user clicks on a property of interest from the presented list of properties to view detailed information.
[1053] Input: Property List
[1054] Action: Click the property card to proceed to the details screen.
[1055] Output: Screen to view detailed information
[1056] Step 11:
[1057] (User) Click the inquiry button to inquire about a property they are interested in.
[1058] Input: Detailed information screen
[1059] How to do it: Click the inquiry button and fill in the required information in the inquiry form that appears.
[1060] Output: Inquiry Information
[1061] Step 12:
[1062] (Terminal) Sends inquiry information and sentiment information to the server.
[1063] Input: Inquiry information and sentiment information
[1064] Operation: Converts query information into JSON format and sends it to the server via an HTTP POST request.
[1065] Output: Query information and sentiment information sent to the server
[1066] Step 13:
[1067] (Server) The server automatically generates a query message based on the received query information and sentiment information.
[1068] Input: Inquiry information and sentiment information
[1069] Function: Generates polite and reassuring messages, or messages with a relaxed atmosphere, depending on the user's emotional state.
[1070] Output: Generated query message
[1071] Step 14:
[1072] (Server) The server sends the inquiry message to the information provider, after applying options to prevent excessive sales calls.
[1073] Input: Generated inquiry message
[1074] Action: Checks the mailing list and applies an option to filter if the same information provider has already been contacted.
[1075] Output: Inquiry message sent to the information provider
[1076] Step 15:
[1077] (Server) The server sends a notification to the user that the query has been successfully sent.
[1078] Input: Inquiry submission status
[1079] Operation: Generates a notification message and sends it to the user's device via push notification or email.
[1080] Output: Inquiry completion notification sent to the user
[1081] (Application Example 2)
[1082] 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."
[1083] In traditional virtual stores, it is difficult to efficiently and appropriately provide users with information about the products they want. In particular, the uniform provision of information without considering the user's emotional state has led to a decrease in user satisfaction. Another challenge is that users often hesitate to make inquiries due to concerns about excessive sales calls, which hinders smooth communication.
[1084] 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.
[1085] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and emotional information to generate search queries, means for accessing multiple databases to obtain information, means for organizing duplicate information and removing invalid information from the obtained information, means for providing the organized information to the user terminal, means including an emotion engine that recognizes the user's emotions using a camera and microphone, and means for adaptively filtering information based on the recognized emotional information. This makes it possible to provide personalized product information that takes into account emotional information in addition to the user's preferences, thereby improving satisfaction with information provision and facilitating smooth inquiries.
[1086] "User preferences" refer to the specific requirements and needs that the user desires, including, for example, product category, budget, and specifications.
[1087] "Emotional information" refers to data that represents the user's emotional state, and is obtained by analyzing facial expressions and voice tone.
[1088] A "search query" is a set of search criteria generated based on the user's preferences and sentiment information, and is used to extract appropriate information from a database.
[1089] A "database" is a system that systematically stores related information, including data from multiple information providers.
[1090] "Invalid information" refers to information that is inappropriate or unhelpful to the user's needs.
[1091] A "camera" is a device that captures the user's facial expressions, thereby providing data for analyzing the user's emotional information.
[1092] A "microphone" is a device that records the user's voice and is used to analyze the tone of the voice to obtain emotional information.
[1093] An "emotion engine" is software or an algorithm used to analyze a user's emotional information, recognizing emotions from facial expressions and voice tone.
[1094] "Filtering" refers to the process of selecting acquired information based on specific criteria and removing unnecessary information.
[1095] A "user terminal" refers to a device that a user directly operates, and includes smartphones and personal computers.
[1096] An "inquiry message" is a message generated based on the user's inquiry information and sent to the information provider.
[1097] This invention relates to a virtual store system that receives user preferences and emotional information and provides optimal product information based on them. This system operates using a user terminal, a server, an emotional engine, and multiple databases.
[1098] System program
[1099] 1. Gathering user preferences and sentiments.
[1100] Users input their desired product category, budget, and other criteria using a smartphone or head-mounted display. Simultaneously, an emotion engine analyzes the user's facial expressions and voice tone using a camera and microphone to recognize emotional information.
[1101] 2. Sending and analyzing desired conditions and emotional information
[1102] The user terminal sends the entered preferences and recognized sentiment information to the server. The server receives this data and analyzes the preferences and sentiment information. The preferences are organized to clarify things like product category and budget.
[1103] 3. Generating search queries and collecting product information
[1104] The server generates search queries based on analyzed preferences and sentiment information. The generated queries are sent to multiple databases to collect relevant product information.
[1105] 4. Integration and organization of product information
[1106] The server uses AI-based algorithms to integrate the acquired product information, organize duplicate information, and remove invalid information.
[1107] 5. Emotion-based filtering and delivery
[1108] The server flexibly filters product information based on the user's emotions recognized by the emotion engine. For example, if the user is feeling stressed, it prioritizes displaying information about products that promote relaxation.
[1109] 6. Product details and inquiries
[1110] The user browses the presented product list and, if they wish to view detailed information about a specific product, they select that product. The user's terminal then displays the detailed information and an inquiry button.
[1111] 7. Generating inquiry information and reflecting sentiment.
[1112] A user clicks the inquiry button to make an inquiry about a product they are interested in. The user's device enters the necessary information and sends it to the server. The server automatically generates an inquiry message based on the received inquiry information and emotional information. For example, it generates a polite and reassuring message for a nervous user. The server sends the inquiry message and notifies the user that the inquiry has been successfully submitted.
[1113] Hardware and software to be used
[1114] Hardware: Smartphone, head-mounted display, camera, microphone
[1115] Software: Emotion recognition library, AI-based information filtering algorithm, user condition analysis module
[1116] Specific example
[1117] When a user wears a head-mounted display and accesses a virtual store:
[1118] 1. The user enters the product category "Home Appliances" and budget "Under 50,000 yen" by voice.
[1119] 2. The system analyzes facial expressions and recognizes that the user is relaxed.
[1120] 3. The user's preferences and emotional information are sent to the server.
[1121] 4. The server retrieves relevant product information from the database and filters it to prioritize information about products that promote relaxation.
[1122] 5. The server provides a well-organized product list to the user's terminal, and the user views the product list.
[1123] 6. The user selects a product they are interested in and checks the details.
[1124] Example of a prompt
[1125] "Please enter your desired category."
[1126] "Do you have any recommended products for relaxation?"
[1127] "Please tell me your recommended products for today (Desired category: Home appliances, Budget: Under 50,000 yen)"
[1128] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1129] Step 1:
[1130] The user inputs their desired product category, budget, and other criteria using a smartphone or head-mounted display. During this process, the camera and microphone capture the user's facial expressions and voice tone. The input consists of the user's desired criteria (product category, budget) and real-time video and audio data of their facial expressions.
[1131] Step 2:
[1132] The emotion engine analyzes the user's emotional information from acquired facial expression video and audio data. Here, it uses facial expression recognition algorithms and audio analysis algorithms to determine emotions and output emotional states such as "relaxed" or "stressed."
[1133] Step 3:
[1134] The user terminal sends the entered preferences and analyzed sentiment information to the server. The input data consists of preferences (in JSON format) and sentiment information (category data), and the output is a data package containing these.
[1135] Step 4:
[1136] The server analyzes the received preferences and sentiment information. The analysis process clarifies preferences based on product categories and budget, and captures sentiment information as the user's current state. The output of this step is organized preference data and sentiment information data.
[1137] Step 5:
[1138] The server generates a search query based on the analyzed preferences. The generated search query is sent to the relevant database to collect the corresponding product information. The input data consists of preferences and sentiment data, while the output is raw data retrieved from the database.
[1139] Step 6:
[1140] The server integrates the acquired product information, sorts out duplicates, and removes invalid information. This process uses an AI-based algorithm. The input is raw data, and the output is a cleaned-up list of product information.
[1141] Step 7:
[1142] The server filters product information based on emotional information. For example, if the server determines that the user is relaxed, it prioritizes displaying information about products that promote relaxation. The input is a cleaned-up list of product information and emotional information, and the output is a prioritized list of products.
[1143] Step 8:
[1144] The server provides the user terminal with an organized product list. The input data is a prioritized product list, and the output is the data sent to the user terminal.
[1145] Step 9:
[1146] The user browses the presented product list and selects a specific product. When the user clicks on a product, detailed information and an inquiry button are displayed. The input data is the product list, and the output is the detailed information of the selected product.
[1147] Step 10:
[1148] The user clicks the inquiry button to make an inquiry about a product they are interested in. The user's terminal presents the necessary inquiry information as an input form and receives it as input data. This inquiry information is sent to the server. The user's input data is the inquiry information, and the output is the data sent to the server.
[1149] Step 11:
[1150] The server generates a query message based on the received query information and sentiment information. For example, if the user is feeling anxious, it will generate a polite message that provides reassurance. The input data consists of query information and sentiment information, and the output is the generated query message.
[1151] Step 12:
[1152] The server sends the query message to the relevant information provider and also sends a notification to the user that the query has been successfully submitted. The input data is the generated query message, and the output is the data sent to the information provider and the notification to the user.
[1153] 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.
[1154] 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.
[1155] 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.
[1156] [Third Embodiment]
[1157] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[1158] 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.
[1159] 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).
[1160] 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.
[1161] 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.
[1162] 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).
[1163] 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.
[1164] 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.
[1165] 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.
[1166] 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.
[1167] 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.
[1168] 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".
[1169] This invention consists of several main components, including a user, a terminal, and a server. The program processing of this system is described below in natural language.
[1170] 1. Gathering information requested by the user.
[1171] (User): When searching for real estate properties, the user uses a device (e.g., smartphone or PC) to input their desired conditions (area, budget, floor plan, amenities, etc.). This allows the user to obtain a list of properties that can be used as specific consideration.
[1172] 2. Submission and analysis of desired conditions
[1173] (Terminal): Sends the entered desired conditions to the server.
[1174] (Server): Receives the desired conditions and performs analysis. In this analysis step, each item such as desired area and budget is clearly identified and constructed as a search query.
[1175] 3. Collection and integration of property information
[1176] (Server): Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and retrieves property information using generated search queries. The retrieved property information is integrated within the server, and duplicate and bait-and-switch listings are detected.
[1177] 4. Removal and filtering of decoy properties
[1178] (Server): Analyzes the acquired property information. As an analysis method, an AI-based algorithm is used to identify and remove "bait properties". Duplicate property information is also sorted from the list, and a unique property list is generated.
[1179] 5. Generation and provision of the optimal property list
[1180] (Server): Based on the user's desired conditions, it filters the properties deemed most suitable in order of priority and generates a list of final candidates.
[1181] (Server): Send this final list of candidates to the user's terminal.
[1182] (Terminal): Displays the received property list to the user.
[1183] 6. Check property details and make inquiries
[1184] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[1185] (Terminal): Detailed information is displayed as a result, along with an inquiry button. If the user wishes to make an inquiry, they click this button.
[1186] 7. Generating and sending inquiry information
[1187] (Terminal): Enter the required information into the inquiry form and send it to the server.
[1188] (Server): Automatically generates a query message based on the received query information.
[1189] (Server): Apply the option to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[1190] (Server): Sends a notification to the user that the query has been successfully submitted.
[1191] Specific example
[1192] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[1193] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into a smartphone app.
[1194] 2. (Terminal): Sends the entered information to the server.
[1195] 3. (Server): Analyzes the received information and generates search queries.
[1196] 4. (Server): Access the database of real estate agents and collect relevant property information.
[1197] 5. (Server): Analyzes the collected property information, excludes decoy properties, and merges duplicate properties.
[1198] 6. (Server): Sends the organized property list to the user's terminal.
[1199] 7. (Terminal): Display the received property list to the user.
[1200] 8. (User): Click on a property of interest from the displayed list to view detailed information.
[1201] 9. (User): Click the inquiry button to make an inquiry about a specific property.
[1202] 10. (Terminal): Enter the inquiry information and send it to the server.
[1203] 11. (Server): Based on the received inquiry information, it generates an inquiry message and sends it to the real estate agent.
[1204] 12. (Server): Sends a notification to the user that the query has been successfully submitted.
[1205] In this way, this system simplifies the process of searching for and inquiring about real estate properties, and provides a set of functions to improve user convenience and satisfaction.
[1206] The following describes the processing flow.
[1207] Step 1:
[1208] (User) Uses a smartphone or PC to enter desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.).
[1209] Step 2:
[1210] (Terminal) Sends the entered desired conditions to the server.
[1211] Step 3:
[1212] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[1213] Step 4:
[1214] (Server) Generates search queries based on desired conditions. For example, it creates queries for "Shinjuku Ward, Tokyo", "budget under 80,000 yen", "2DK or larger", and "pets allowed".
[1215] Step 5:
[1216] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[1217] Step 6:
[1218] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[1219] Step 7:
[1220] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[1221] Step 8:
[1222] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[1223] Step 9:
[1224] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[1225] Step 10:
[1226] (Server) Remove the decoy property from the property list.
[1227] Step 11:
[1228] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. For example, it prioritizes properties that exactly match the criteria of "Shinjuku Ward, Tokyo," "budget under 80,000 yen," "2DK or larger," and "pets allowed."
[1229] Step 12:
[1230] (Server) Generates the final property list and sends it to the user's terminal.
[1231] Step 13:
[1232] (Terminal) Displays the received property list to the user.
[1233] Step 14:
[1234] (User) To view the displayed property list and check the details of a specific property, click on that property.
[1235] Step 15:
[1236] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[1237] Step 16:
[1238] (User) Click the inquiry button to inquire about a property they are interested in.
[1239] Step 17:
[1240] (Terminal) Displays an inquiry form, and sends the information entered by the user into the form to the server.
[1241] Step 18:
[1242] (Server) The server automatically generates an inquiry message based on the received inquiry information. This message may include, for example, the user's name, contact information, and the question.
[1243] Step 19:
[1244] (Server) After applying options to prevent excessive sales calls, the inquiry message is sent to the information provider.
[1245] Step 20:
[1246] (Server) Notifies the user that the query has been successfully sent.
[1247] (Example 1)
[1248] 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."
[1249] Traditional real estate search systems were time-consuming to retrieve property information that matched users' desired criteria, and often included bait-and-switch listings and duplicate information. Furthermore, they suffered from excessive sales calls during the inquiry process. There is a need to solve these problems and provide a system that is both convenient and reliable for users.
[1250] 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.
[1251] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases and obtaining property information, means for analyzing the obtained property information with an AI algorithm to sort out duplicate properties and remove decoy properties, means for providing the sorted property information to the user terminal, and means for receiving inquiry information from the user, generating an inquiry message, and sending it to the information provider. This simplifies the process from searching for real estate properties to making inquiries, and enables the provision of reliable and satisfying information to the user.
[1252] "User" refers to the end user who is looking for a real estate property.
[1253] "Terminal" refers to a computer device used by a user (such as a smartphone, PC, or tablet).
[1254] A "server" refers to a computer system on a network that receives, analyzes, processes, and provides information to users.
[1255] "Desired conditions" refer to the requests that users enter when searching for properties, such as area, budget, floor plan, and amenities.
[1256] "Means of receiving" refers to the processes and technologies that allow the server to receive user requests and inquiry information.
[1257] "Methods for analyzing and generating search queries" refers to the process or technology of analyzing received desired conditions and generating search queries (commands for database searches) based on those conditions.
[1258] A "database of information providers" refers to a database where property information managed by real estate agents and other related parties is stored.
[1259] "Property information" refers to information about a property, such as its location, price, floor plan, and amenities.
[1260] "Methods for sorting out duplicate listings and removing decoy listings" refers to processes and technologies that eliminate duplicate information from listing information acquired by the server and identify and remove unreliable decoy listings.
[1261] "AI algorithm" refers to analytical methods that utilize artificial intelligence technology.
[1262] "Inquiry information" refers to data entered by users to indicate questions or interest regarding a property.
[1263] A "contact message" refers to a message generated by the server and sent to the information provider, which contains the user's inquiry.
[1264] The "option to prevent excessive sales calls" refers to settings or mechanisms that automatically control excessive sales calls from real estate agents in response to user inquiries.
[1265] Modes for carrying out the invention
[1266] This invention is a system that streamlines the search and inquiry process for real estate properties, comprising key components such as users, terminals, and servers. The system takes the user's desired conditions as input, collects corresponding property information, and performs a series of processes to provide the most suitable property list.
[1267] Hardware and software to be used
[1268] This system uses the following main hardware and software.
[1269] Device: A device used by a user, such as a smartphone, personal computer (PC), or tablet.
[1270] Server: Receives, analyzes, processes, and provides data. Examples include web servers such as Apache and Nginx.
[1271] Database: Stores and manages property information and user inquiry information. Databases used include, for example, MySQL, PostgreSQL, and MongoDB.
[1272] Generative AI models: Used for property analysis and optimization. Specifically, frameworks such as TensorFlow and PyTorch are utilized.
[1273] Specific examples of system processing
[1274] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[1275] 1. (User) User A enters "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into the app on their smartphone.
[1276] 2. (Terminal) The terminal receives the entered information and creates an HTTP POST request to send it to the server.
[1277] 3. (Server) The server analyzes the received information and generates search queries. This process uses libraries such as Python's Pandas library.
[1278] 4. (Server) The server uses the generated search query to access databases of multiple real estate agents and collect relevant property information.
[1279] 5. (Server) The collected property information is analyzed using an AI algorithm to remove decoy properties and organize duplicate information. TensorFlow or PyTorch is used for this analysis.
[1280] 6. (Server) Generates the optimal property list and sends the reformatted data to the user terminal.
[1281] 7. (Terminal) The user's terminal analyzes the received property list and displays it in a format that is easy for the user to view.
[1282] 8. (User) User A clicks on a property of interest from the displayed list to view detailed information.
[1283] 9. (User) Click the inquiry button to make an inquiry about a specific property.
[1284] 10. (Terminal) Enter the inquiry information and format it into data ready to send to the server.
[1285] 11. (Server) Based on the received inquiry information, the server generates an inquiry message, applies options to prevent excessive sales contact as needed, and then sends it to the real estate agent.
[1286] 12. (Server) Send a notification to the user that the query has been successfully sent.
[1287] Thus, this system provides a series of functions to efficiently collect and provide users with the real estate property information they desire, and to simplify the inquiry process.
[1288] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1289] Step 1:
[1290] (User) Users enter their search criteria for real estate properties on a device such as a smartphone or PC. These criteria include area, budget, floor plan, and amenities. For example, a user might enter "Shinjuku Ward, Tokyo; budget under 80,000 yen; 2DK or larger; pets allowed." The device retains the entered data.
[1291] Input: User's desired conditions (area, budget, floor plan, equipment requirements, etc.)
[1292] Output: User preference data stored on the device.
[1293] Step 2:
[1294] (Terminal) The terminal creates an HTTP POST request to send the user's entered desired conditions data to the server. This request has a JSON-formatted payload containing the desired conditions data. After the request is created, it is sent to the server.
[1295] Input: User's desired conditions data
[1296] Output: HTTP POST request sent to the server
[1297] Step 3:
[1298] (Server) The server analyzes the desired conditions data received from the terminal. It analyzes the received data and extracts items such as desired area, budget, floor plan, and equipment requirements. The Python Pandas library is used for this analysis. After the analysis is complete, a search query is generated.
[1299] Input: Desired conditions data from the device
[1300] Output: Analyzed desired criteria elements and search query
[1301] Step 4:
[1302] (Server) The server uses the generated search query to access multiple information provider databases. This is done using SQL queries and API requests. It retrieves property information that matches the search query.
[1303] Input: Search query
[1304] Output: Property information obtained from multiple information providers.
[1305] Step 5:
[1306] (Server) The server stores the acquired property information in an integrated database and performs data integration processing. It identifies duplicate property information from the integrated data and uses an AI algorithm to detect and remove decoy properties. TensorFlow and PyTorch are used for this analysis.
[1307] Input: Acquired property information
[1308] Output: Organized property information with duplicate and decoy properties removed.
[1309] Step 6:
[1310] (Server) The server generates a list of properties that best match the user's desired conditions based on the organized property information. It uses a ranking algorithm to sort the properties in order of priority and converts them into a data format to be sent to the user's terminal.
[1311] Input: Organized property information
[1312] Output: Optimal property list
[1313] Step 7:
[1314] (Terminal) The terminal analyzes the optimal property list data received from the server and displays it in a user-friendly format. This display uses list or card format and includes detailed information and images for each property.
[1315] Input: Property list data sent from the server
[1316] Output: Property list displayed on the user's terminal
[1317] Step 8:
[1318] (User) The user views the provided property list and clicks on a property that interests them. This action causes the device to request detailed information from the server and display the relevant information.
[1319] Input: Property list and user click actions
[1320] Output: Details of the clicked property
[1321] Step 9:
[1322] (User) When a user wants to inquire about a specific property, they click the "Inquiry button." This action displays an inquiry form in a pop-up window. The user then fills in the required information in the form.
[1323] Input: Details of the clicked property and inquiry action
[1324] Output: Input query information
[1325] Step 10:
[1326] (Terminal) The terminal formats the inquiry information entered by the user into data for transmission to the server and creates an HTTP POST request. After the request is created, it is sent to the server.
[1327] Input: User inquiry information
[1328] Output: HTTP POST request sent to the server
[1329] Step 11:
[1330] (Server) The server analyzes the received inquiry information and generates an inquiry message. Options are also applied to prevent excessive sales calls. The generated inquiry message is sent to the information provider.
[1331] Input: User inquiry information
[1332] Output: Generated query message
[1333] Step 12:
[1334] (Server) The server generates and sends a notification to the user confirming that the query has been successfully submitted. The user receives this notification on their device and can confirm that the query was completed successfully.
[1335] Input: Result of sending the inquiry message
[1336] Output: Notification to user that transmission is complete.
[1337] (Application Example 1)
[1338] 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."
[1339] The challenges include improving the efficiency of inventory management and optimizing delivery routes at logistics centers, as well as enhancing user convenience by removing duplicate and decoy information from the information provider database. In conventional systems, these processes are often performed manually, resulting in time-consuming and labor-intensive work, and a high risk of errors. Furthermore, there is a need for improvement in measures to prevent excessive sales communications.
[1340] 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.
[1341] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for monitoring the inventory status of the logistics center in real time and generating alerts according to specific conditions, means for analyzing and proposing the optimal delivery route based on the delivery address using AI, means for integrating multiple delivery orders and removing duplicate order information, means for providing the organized property information to the user terminal, and means for sending notifications to the user. This makes it possible to efficiently and automatically manage inventory at the logistics center and optimize delivery routes. In addition, the automation of duplicate and decoy information management greatly improves user convenience.
[1342] "Means for receiving user preferences" refers to a means for users to input their desired conditions and for that information to be incorporated into the system.
[1343] "Means for analyzing desired conditions and generating search queries" refers to methods for analyzing the desired conditions received from users and generating appropriate search queries.
[1344] "Methods for obtaining property information by accessing multiple information provider databases" refers to methods for obtaining necessary property information by accessing the databases of multiple information providers.
[1345] "Methods for sorting out duplicate properties from acquired property information and removing decoy properties" refers to methods for analyzing acquired property information, sorting out duplicate property information, and removing false decoy properties.
[1346] "A means of monitoring the inventory status of a logistics center in real time and generating alerts according to specific conditions" refers to a means of constantly monitoring the inventory status of a logistics center and generating alerts based on specific conditions (e.g., insufficient inventory, excess inventory).
[1347] "A method for analyzing and proposing the optimal delivery route based on the delivery address using AI" refers to a method for using AI technology to analyze the optimal delivery route based on the delivery address and propose it to the user.
[1348] "Means for integrating multiple delivery orders and removing duplicate order information" refers to means for integrating multiple delivery order information and removing duplicate order information.
[1349] "Means for providing organized property information to a user terminal" refers to means for transmitting and providing organized property information to a user terminal.
[1350] "Means of sending notifications to users" refers to means of notifying users of important information or updates.
[1351] This invention is a system that streamlines the search for real estate properties, inventory management at logistics centers, and optimization of delivery routes. The processing of this system's program is described below in natural language.
[1352] 1. Gathering information requested by the user.
[1353] Users can use a device (such as a smartphone or PC) to input their desired conditions (area, budget, floor plan, equipment requirements, etc.) to request a list of properties that can serve as specific considerations and suggestions for the optimal delivery route.
[1354] 2. Submission and analysis of desired conditions
[1355] The terminal sends the entered desired conditions to the server.
[1356] The server analyzes the received request conditions. In the analysis step, each item, such as the desired area, budget, and delivery volume, is clearly identified and constructed as a search query.
[1357] 3. Collection and integration of property and inventory information
[1358] The server accesses multiple information provider databases and retrieves property information using generated search queries. It also monitors the inventory status of logistics centers in real time and collects necessary data.
[1359] 4. Removal of decoy properties and generation of inventory alerts
[1360] The server analyzes the acquired property information, uses AI-based algorithms to identify and remove decoy properties. It also monitors inventory status based on specific conditions and generates alerts as needed.
[1361] 5. Optimization and integration of delivery routes
[1362] The server uses AI technology to generate the optimal delivery route for the entered delivery address and consolidates multiple delivery orders. Duplicate order information is excluded.
[1363] 6. Generating and providing the optimal list
[1364] The server filters the properties and delivery routes deemed most suitable based on the user's preferences, prioritizing them in order of priority, and generates a list of final candidates.
[1365] The server sends this final list of candidates to the user's terminal.
[1366] The device displays the received information to the user.
[1367] 7. Notifications and Inquiries
[1368] Users browse the presented list and, if necessary, check for more information about specific properties or deliveries.
[1369] The device enters the necessary information into the inquiry form and sends it to the server.
[1370] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully submitted.
[1371] Hardware and software used
[1372] Hardware: Smartphones, servers, PCs
[1373] Software: Python, REST API, AI algorithms
[1374] Specific example
[1375] If User B is looking for the optimal delivery route within Tokyo with a budget of 8,000 yen and a high volume of deliveries:
[1376] 1. The user enters "Tokyo, budget 8000 yen, delivery volume: high" into the smartphone app.
[1377] 2. The terminal sends the entered information to the server.
[1378] 3. The server analyzes the received information and performs delivery optimization that meets the specified conditions.
[1379] 4. The server accesses multiple warehouse databases to collect inventory information.
[1380] 5. The server generates the optimal delivery route based on the delivery address and consolidates duplicate orders.
[1381] 6. The server sends the optimal inventory information and delivery route to the user's terminal.
[1382] 7. The device notifies the user of the received information.
[1383] Example of a prompt:
[1384] "Please propose the optimal delivery route within Tokyo, with a budget of 8,000 yen and a high volume of deliveries."
[1385] In this way, we provide a system that enables efficient inventory management and optimization of delivery routes in logistics centers.
[1386] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1387] Step 1:
[1388] The user uses a device (e.g., a smartphone) to enter their desired conditions (area, budget, delivery volume, etc.).
[1389] Input: Conditions such as area, budget, and delivery volume.
[1390] Output: Data matching the desired conditions.
[1391] Step 2:
[1392] The terminal sends the user's entered preferences to the server.
[1393] Input: User's desired conditions data.
[1394] Output: The result of sending data to the server.
[1395] Step 3:
[1396] The server analyzes the received request conditions and generates a search query based on the analyzed data.
[1397] Input: Desired conditions data received from the terminal.
[1398] Data processing: Analysis of desired conditions, generation of queries.
[1399] Output: Search query.
[1400] Step 4:
[1401] The server uses the generated search query to access multiple information provider databases and retrieve property information and logistics center inventory information.
[1402] Input: Search query.
[1403] Data processing: Accessing information provider databases and retrieving data.
[1404] Output: Acquired property information and inventory information.
[1405] Step 5:
[1406] The server analyzes the acquired property information, uses AI algorithms to filter out duplicate properties, and removes deceptive listings. It also generates alerts under specific conditions based on inventory information.
[1407] Input: Acquired property information and inventory information.
[1408] Data processing: Analysis of property information, sorting of duplicate properties, removal of bait-and-switch properties, monitoring of inventory information, and generation of alerts.
[1409] Output: Organized property information, inventory alerts.
[1410] Step 6:
[1411] The server uses AI technology to analyze and propose the optimal delivery route based on the provided delivery address. Furthermore, it consolidates multiple delivery orders and removes duplicate order information.
[1412] Input: Delivery address, order information.
[1413] Data processing: Analysis and optimization of delivery routes, and consolidation of duplicate orders.
[1414] Output: Optimized delivery route.
[1415] Step 7:
[1416] The server filters the most suitable properties and delivery routes based on the user's preferences, prioritizing them in order of priority, and generates a final list of candidates.
[1417] Input: Desired conditions, organized property information, optimized route information.
[1418] Data processing: Filtering based on priority, generating lists.
[1419] Output: List of final candidates.
[1420] Step 8:
[1421] The server sends this final list of candidates to the user's terminal.
[1422] Input: List of final candidates.
[1423] Output: Results of sending the list to the user terminal.
[1424] Step 9:
[1425] The device displays the received list to the user.
[1426] Input: The list of final candidates received from the server.
[1427] Output: The displayed list.
[1428] Step 10:
[1429] Users can view specific properties and delivery details from the presented list and make inquiries if necessary.
[1430] Input: The displayed list. Output: The query content.
[1431] Step 11:
[1432] The device enters the necessary information into the inquiry form and sends it to the server.
[1433] Input: User inquiry information.
[1434] Output: Query data sent to the server.
[1435] Step 12:
[1436] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully sent.
[1437] Input: Inquiry information.
[1438] Data processing: Generating inquiry messages, sending them to information providers, and notifying users.
[1439] Output: Inquiry message to information provider, notification to user.
[1440] 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.
[1441] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. The processing of this system's program is described below in natural language.
[1442] 1. Gathering user preferences and sentiments.
[1443] (User): When searching for real estate properties, the user uses a smartphone or PC to input their desired conditions (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine uses the camera and microphone to analyze the user's facial expressions and voice tone to recognize their emotions.
[1444] 2. Sending and analyzing desired conditions and emotional information
[1445] (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[1446] (Server): Analyzes desired conditions, clearly identifying each item (area, budget, floor plan, equipment requirements), and analyzes emotional information to understand the user's current emotional state.
[1447] 3. Generating search queries and collecting property information
[1448] (Server): Generates search queries based on desired conditions and accesses multiple information provider databases (e.g., real estate agents A, B, and C) to collect property information.
[1449] 4. Integration and organization of property information
[1450] (Server): Uses an AI-based algorithm to integrate acquired property information, sort out duplicate properties, and remove decoy properties.
[1451] 5. Emotion-based filtering and delivery
[1452] (Server): Based on the emotions of the user recognized by the emotion engine, property information is flexibly filtered. For example, if the user is feeling stressed, properties with a relaxing environment will be displayed preferentially.
[1453] (Server): Generates the optimal property list and provides it to the user's terminal.
[1454] (Terminal): Displays the received property list to the user.
[1455] 6. Check property details and make inquiries
[1456] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[1457] (Device): Detailed information is displayed, and a contact button is also displayed.
[1458] 7. Generating inquiry information and reflecting sentiment.
[1459] (User): Click the inquiry button to inquire about a property of interest.
[1460] (Terminal): Enter the required information into the inquiry form and send it to the server.
[1461] (Server): Based on the received inquiry information and the user's emotional state, it automatically generates inquiry messages. For example, for a nervous user, it generates a polite and reassuring message.
[1462] (Server): Sends inquiry messages to information providers (e.g., real estate agents) after applying options to prevent excessive sales calls.
[1463] (Server): Sends a notification to the user that the query has been successfully submitted.
[1464] Specific example
[1465] Example 1: When User B searches for a 1LDK apartment in Shinjuku Ward, Tokyo, with a budget of 100,000 yen or less, and pet-friendly.
[1466] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pets allowed" into a smartphone app, and the emotion engine analyzes the user's facial expression and determines that they are "relaxed."
[1467] 2. (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[1468] 3. (Server): Analyzes the desired conditions and generates search queries. Simultaneously, it analyzes emotional information and considers the emotion of "relaxed."
[1469] 4. (Server): Access the database of real estate agents and collect relevant property information.
[1470] 5. (Server): Analyzes the collected property information and removes duplicate properties and bait properties.
[1471] 6. (Server): Based on emotional information, it prioritizes presenting properties with a quiet environment that allows for relaxation.
[1472] 7. (Server): Sends the organized property list to the user's terminal.
[1473] 8. (Terminal): Display the received property list to the user.
[1474] 9. (User): Click on a property of interest from the displayed list to view detailed information.
[1475] 10. (User): Click the inquiry button to inquire about a specific property.
[1476] 11. (Terminal): Enter the inquiry information and send it to the server.
[1477] 12. (Server): Based on the received inquiry information and emotional state, it generates an inquiry message while maintaining a relaxed atmosphere and sends it to the real estate agent.
[1478] 13. (Server): Sends a notification to the user that the query has been successfully submitted.
[1479] In this way, this system can analyze and recognize users' emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[1480] The following describes the processing flow.
[1481] Step 1:
[1482] The user uses a smartphone or PC to input their desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine analyzes the user's facial expressions and voice tone using the device's camera and microphone to recognize the user's emotions.
[1483] Step 2:
[1484] (Terminal) The entered desired conditions and recognized emotion information are sent to the server.
[1485] Step 3:
[1486] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[1487] Step 4:
[1488] (Server) Analyzes the received emotional information to understand the user's current emotional state.
[1489] Step 5:
[1490] (Server) Generates search queries based on desired conditions, for example, creating queries for "Shinjuku Ward, Tokyo", "Budget under 100,000 yen", "1LDK", and "Pets allowed".
[1491] Step 6:
[1492] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[1493] Step 7:
[1494] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[1495] Step 8:
[1496] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[1497] Step 9:
[1498] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[1499] Step 10:
[1500] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[1501] Step 11:
[1502] (Server) Remove the decoy property from the property list.
[1503] Step 12:
[1504] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. At the same time, it considers emotional information, prioritizing properties with relaxing environments for relaxed users and properties with stress-reducing effects for stressed users.
[1505] Step 13:
[1506] (Server) Generates the final property list and provides it to the user terminal.
[1507] Step 14:
[1508] (Terminal) Displays the received property list to the user. The list reflects filtering results that take sentiment into consideration.
[1509] Step 15:
[1510] (User) To view the displayed property list and check the details of a specific property, click on that property.
[1511] Step 16:
[1512] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[1513] Step 17:
[1514] (User) Click the inquiry button to inquire about a property they are interested in.
[1515] Step 18:
[1516] (Terminal) Displays an inquiry form, and the user enters the necessary information.
[1517] Step 19:
[1518] (Terminal) Sends the entered inquiry information to the server.
[1519] Step 20:
[1520] (Server) The server automatically generates inquiry messages based on the received inquiry information and the user's emotional state. For example, it generates casual messages for relaxed users and polite, reassuring messages for stressed users.
[1521] Step 21:
[1522] (Server) Apply options to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[1523] Step 22:
[1524] (Server) Notifies the user that the query has been successfully sent.
[1525] (Example 2)
[1526] 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."
[1527] Traditional real estate search systems provide property information based on the user's desired conditions, but they often fail to consider the user's emotional state, which can degrade the quality of the user experience. Furthermore, property information obtained from multiple sources often includes duplicates and bait-and-switch listings, and there is a lack of mechanisms to properly organize and remove these. Additionally, there are insufficient mechanisms to prevent excessive sales calls during inquiries.
[1528] The identification processing performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving the user's desired conditions and emotional information, means for analyzing the received desired conditions and emotional information to generate a search query, means for accessing databases of multiple information providers to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for filtering property information based on the user's emotions recognized by the emotion engine, and means for providing the organized and filtered property information to the user terminal. This enables personalized property searches that take into account the user's emotional state, and also allows for the removal of duplicates and decoy properties. Furthermore, the mechanism for preventing excessive sales calls is strengthened.
[1529] A "user" refers to a person who enters their desired criteria to search for real estate properties and whose emotional state is analyzed by an emotion engine.
[1530] "Desired conditions" refers to information about the property the user wants, such as area, budget, floor plan, and amenities.
[1531] "Emotional information" refers to information about the user's emotional state as recognized by the emotion engine.
[1532] An "emotion engine" refers to a system that uses cameras and microphones to analyze a user's facial expressions and voice tone, and recognizes their emotional state.
[1533] A "server" refers to a device or system that receives and analyzes user preferences and emotional information, acquires property information, organizes and filters it, and provides it to the user's terminal.
[1534] A "database of information providers" refers to multiple databases or APIs that can collect real estate property information.
[1535] A "search query" refers to an inquiry generated based on the user's desired conditions and sentiment information, used to retrieve property information.
[1536] "Property information" refers to information about real estate properties, including details such as area, price, floor plan, and amenities.
[1537] "Duplicate listings" refer to identical property information obtained from multiple information providers.
[1538] A "bait-and-switch" property refers to false property information that does not actually exist or is provided with the intention of misleading others.
[1539] "Filtering" refers to the process of flexibly selecting property information based on the emotional state recognized by the emotion engine.
[1540] "User terminal" refers to devices such as smartphones and PCs used by the user.
[1541] "Inquiry information" refers to the information a user enters when they express interest in a particular property and wish to request more detailed information or make an inquiry.
[1542] A "request message" refers to a message sent to an information provider, generated based on the request information and sentiment information.
[1543] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. A specific embodiment of this system is described below.
[1544] System Overview
[1545] This system receives and analyzes user preferences and sentiment information, accesses multiple information provider databases to retrieve property information, organizes and filters it, and provides it to the user's terminal. This system includes the following main components:
[1546] 1. User Interface (UI)
[1547] 2. Emotional Engine
[1548] 3. Server
[1549] 4. Database
[1550] 5. Information provider API
[1551] User interface and emotion engine
[1552] (User) Users search for real estate properties using devices such as smartphones and PCs. They input their desired conditions (area, budget, floor plan, amenities, etc.) through an application or web interface on their device. When users input their desired conditions, the device's camera and microphone are used to analyze the user's facial expressions and voice tone, and the emotion engine recognizes the user's emotional state.
[1553] For example, if a user enters "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pet-friendly," the camera will capture the user's face, and the emotion engine will determine that the user is "relaxed." This emotion information and desired conditions are then sent to the server.
[1554] Servers and databases
[1555] (Server) The server analyzes the received preferences and emotional information and generates search queries. Specifically, it analyzes each item of the preferences (area, budget, floor plan, equipment requirements, etc.) and creates search queries. At the same time, it stores the recognized emotional information in a database and takes the user's emotional state into consideration.
[1556] The server accesses databases from multiple information providers and collects relevant property information. For example, it uses APIs from information providers A, B, and C to retrieve property information.
[1557] Information integration and filtering
[1558] (Server) The server uses AI-based algorithms to integrate acquired property information, sort out duplicate properties, and remove decoy properties. For example, it detects duplicate properties and uses machine learning models (e.g., TensorFlow) to identify and remove decoy properties.
[1559] Next, the emotion engine filters property information based on the user's emotions. If the user is relaxed, it prioritizes properties in quiet environments; if the user is stressed, it prioritizes properties in relaxing environments.
[1560] Property information provision
[1561] (Server) Generates a sorted and filtered list of optimal properties and provides it to the user's terminal. The provided property list is sent in JSON format.
[1562] (Terminal) The received property list is displayed in the user's terminal UI. The user can view the presented property list and check the details of a specific property.
[1563] Handling inquiries
[1564] (User) When a user finds a property they are interested in, they click on the property to view details and then click the inquiry button. This prompts them to fill in the necessary information (name, email address, question, etc.) in the inquiry form.
[1565] (Terminal) Sends inquiry information and user sentiment status to the server.
[1566] (Server) The server automatically generates an inquiry message based on the received inquiry information and emotional state, applies options to prevent excessive sales contact, and sends it to the information provider. For example, if the user is "anxious," the server generates and sends a polite and reassuring message.
[1567] (Server) Sends a notification to the user that the query has been successfully submitted.
[1568] Example of a prompt
[1569] "We have developed a system that provides property information that matches the user's desired conditions. This system incorporates an emotion engine that analyzes the user's facial expressions and tone of voice to recognize their emotions. Based on these emotions, it filters property information and suggests properties that match the user's desired conditions. For example, if the user is feeling stressed, it will prioritize displaying properties that promote relaxation."
[1570] As described above, the present invention can analyze and recognize user emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[1571] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1572] Step 1:
[1573] (User) The user uses a smartphone or PC to enter their desired criteria for searching for real estate properties (area, budget, floor plan, amenities, etc.). The entered criteria are collected by the device.
[1574] Input: Area (e.g., Shinjuku-ku, Tokyo), Budget (e.g., under 100,000 yen), Floor plan (e.g., 1LDK), Amenities (e.g., pets allowed)
[1575] Operation: Enter your desired conditions into the user interface (UI).
[1576] Step 2:
[1577] (Device) The device uses its camera and microphone to enable an emotion engine that analyzes the user's facial expressions and voice tone to recognize emotions.
[1578] Input: User's facial expression and voice tone
[1579] Operation: The system captures the user's facial expressions with a camera and uses facial expression analysis software (e.g., OpenCV) to analyze them. It also collects voice tone data with a microphone and analyzes it using speech analysis software (e.g., Google Cloud Speech-to-Text API).
[1580] Output: User's emotional information (e.g., "Relaxed")
[1581] Step 3:
[1582] (Terminal) The terminal sends the entered desired conditions and recognized emotion information to the server.
[1583] Input: A set of desired conditions and emotional information.
[1584] Operation: Converts desired conditions and sentiment data into JSON format and sends it to the server via an HTTP POST request.
[1585] Output: Desired conditions and sentiment information sent to the server
[1586] Step 4:
[1587] (Server) The server analyzes the received requests and identifies each item (area, budget, floor plan, equipment requirements). It also analyzes emotional information to understand the user's current emotional state.
[1588] Input: Desired conditions and emotional information
[1589] Operation: Analyzes the received JSON data, extracts each item of the desired conditions (e.g., "Area: Shinjuku Ward, Tokyo", "Budget: Under 100,000 yen"), and saves sentiment information to the database.
[1590] Output: Search queries and sentiment status
[1591] Step 5:
[1592] (Server) The server generates search queries based on the desired conditions and accesses databases of multiple information providers to collect property information.
[1593] Input: Search query (Example: "Shinjuku Ward, Tokyo; budget under 100,000 yen; 1LDK; pet-friendly")
[1594] Operation: Converts search queries into SQL queries and accesses multiple information provider APIs to retrieve matching property information.
[1595] Output: List of retrieved property information
[1596] Step 6:
[1597] (Server) The server integrates the acquired property information, sorts out duplicate properties, and removes decoy properties.
[1598] Input: List of acquired property information
[1599] Operation: Uses an AI-based algorithm to detect duplicate listings and a machine learning model (e.g., TensorFlow) to identify and remove decoy listings.
[1600] Output: Organized property information
[1601] Step 7:
[1602] (Server) The server filters property information based on the user's emotions, as recognized by the emotion engine.
[1603] Input: Organized property information and emotional state
[1604] Operation: Based on the user's emotional state, it filters the results to prioritize properties with a quiet, relaxing environment.
[1605] Output: List of filtered property information
[1606] Step 8:
[1607] (Server) The server generates the optimal property list and provides it to the user's terminal.
[1608] Input: List of filtered property listings
[1609] Operation: The filtered property list is formatted into JSON and sent to the terminal via HTTP POST.
[1610] Output: List of properties sent to the terminal
[1611] Step 9:
[1612] (Terminal) The terminal displays the received property list to the user.
[1613] Input: Received property list
[1614] Function: Displays property information in the app's user interface (UI), either in list format or by placing pins on a map.
[1615] Output: List of properties displayed to the user
[1616] Step 10:
[1617] (User) The user clicks on a property of interest from the presented list of properties to view detailed information.
[1618] Input: Property List
[1619] Action: Click the property card to proceed to the details screen.
[1620] Output: Screen to view detailed information
[1621] Step 11:
[1622] (User) Click the inquiry button to inquire about a property they are interested in.
[1623] Input: Detailed information screen
[1624] How to do it: Click the inquiry button and fill in the required information in the inquiry form that appears.
[1625] Output: Inquiry Information
[1626] Step 12:
[1627] (Terminal) Sends inquiry information and sentiment information to the server.
[1628] Input: Inquiry information and sentiment information
[1629] Operation: Converts query information into JSON format and sends it to the server via an HTTP POST request.
[1630] Output: Query information and sentiment information sent to the server
[1631] Step 13:
[1632] (Server) The server automatically generates a query message based on the received query information and sentiment information.
[1633] Input: Inquiry information and sentiment information
[1634] Function: Generates polite and reassuring messages, or messages with a relaxed atmosphere, depending on the user's emotional state.
[1635] Output: Generated query message
[1636] Step 14:
[1637] (Server) The server sends the inquiry message to the information provider, after applying options to prevent excessive sales calls.
[1638] Input: Generated inquiry message
[1639] Action: Checks the mailing list and applies an option to filter if the same information provider has already been contacted.
[1640] Output: Inquiry message sent to the information provider
[1641] Step 15:
[1642] (Server) The server sends a notification to the user that the query has been successfully sent.
[1643] Input: Inquiry submission status
[1644] Operation: Generates a notification message and sends it to the user's device via push notification or email.
[1645] Output: Inquiry completion notification sent to the user
[1646] (Application Example 2)
[1647] 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."
[1648] In traditional virtual stores, it is difficult to efficiently and appropriately provide users with information about the products they want. In particular, the uniform provision of information without considering the user's emotional state has led to a decrease in user satisfaction. Another challenge is that users often hesitate to make inquiries due to concerns about excessive sales calls, which hinders smooth communication.
[1649] 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.
[1650] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and emotional information to generate search queries, means for accessing multiple databases to obtain information, means for organizing duplicate information and removing invalid information from the obtained information, means for providing the organized information to the user terminal, means including an emotion engine that recognizes the user's emotions using a camera and microphone, and means for adaptively filtering information based on the recognized emotional information. This makes it possible to provide personalized product information that takes into account emotional information in addition to the user's preferences, thereby improving satisfaction with information provision and facilitating smooth inquiries.
[1651] "User preferences" refer to the specific requirements and needs that the user desires, including, for example, product category, budget, and specifications.
[1652] "Emotional information" refers to data that represents the user's emotional state, and is obtained by analyzing facial expressions and voice tone.
[1653] A "search query" is a set of search criteria generated based on the user's preferences and sentiment information, and is used to extract appropriate information from a database.
[1654] A "database" is a system that systematically stores related information, including data from multiple information providers.
[1655] "Invalid information" refers to information that is inappropriate or unhelpful to the user's needs.
[1656] A "camera" is a device that captures the user's facial expressions, thereby providing data for analyzing the user's emotional information.
[1657] A "microphone" is a device that records the user's voice and is used to analyze the tone of the voice to obtain emotional information.
[1658] An "emotion engine" is software or an algorithm used to analyze a user's emotional information, recognizing emotions from facial expressions and voice tone.
[1659] "Filtering" refers to the process of selecting acquired information based on specific criteria and removing unnecessary information.
[1660] A "user terminal" refers to a device that a user directly operates, and includes smartphones and personal computers.
[1661] An "inquiry message" is a message generated based on the user's inquiry information and sent to the information provider.
[1662] This invention relates to a virtual store system that receives user preferences and emotional information and provides optimal product information based on them. This system operates using a user terminal, a server, an emotional engine, and multiple databases.
[1663] System program
[1664] 1. Gathering user preferences and sentiments.
[1665] Users input their desired product category, budget, and other criteria using a smartphone or head-mounted display. Simultaneously, an emotion engine analyzes the user's facial expressions and voice tone using a camera and microphone to recognize emotional information.
[1666] 2. Sending and analyzing desired conditions and emotional information
[1667] The user terminal sends the entered preferences and recognized sentiment information to the server. The server receives this data and analyzes the preferences and sentiment information. The preferences are organized to clarify things like product category and budget.
[1668] 3. Generating search queries and collecting product information
[1669] The server generates search queries based on analyzed preferences and sentiment information. The generated queries are sent to multiple databases to collect relevant product information.
[1670] 4. Integration and organization of product information
[1671] The server uses AI-based algorithms to integrate the acquired product information, organize duplicate information, and remove invalid information.
[1672] 5. Emotion-based filtering and delivery
[1673] The server flexibly filters product information based on the user's emotions recognized by the emotion engine. For example, if the user is feeling stressed, it prioritizes displaying information about products that promote relaxation.
[1674] 6. Product details and inquiries
[1675] The user browses the presented product list and, if they wish to view detailed information about a specific product, they select that product. The user's terminal then displays the detailed information and an inquiry button.
[1676] 7. Generating inquiry information and reflecting sentiment.
[1677] A user clicks the inquiry button to make an inquiry about a product they are interested in. The user's device enters the necessary information and sends it to the server. The server automatically generates an inquiry message based on the received inquiry information and emotional information. For example, it generates a polite and reassuring message for a nervous user. The server sends the inquiry message and notifies the user that the inquiry has been successfully submitted.
[1678] Hardware and software to be used
[1679] Hardware: Smartphone, head-mounted display, camera, microphone
[1680] Software: Emotion recognition library, AI-based information filtering algorithm, user condition analysis module
[1681] Specific example
[1682] When a user wears a head-mounted display and accesses a virtual store:
[1683] 1. The user enters the product category "Home Appliances" and budget "Under 50,000 yen" by voice.
[1684] 2. The system analyzes facial expressions and recognizes that the user is relaxed.
[1685] 3. The user's preferences and emotional information are sent to the server.
[1686] 4. The server retrieves relevant product information from the database and filters it to prioritize information about products that promote relaxation.
[1687] 5. The server provides a well-organized product list to the user's terminal, and the user views the product list.
[1688] 6. The user selects a product they are interested in and checks the details.
[1689] Example of a prompt
[1690] "Please enter your desired category."
[1691] "Do you have any recommended products for relaxation?"
[1692] "Please tell me your recommended products for today (Desired category: Home appliances, Budget: Under 50,000 yen)"
[1693] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1694] Step 1:
[1695] The user inputs their desired product category, budget, and other criteria using a smartphone or head-mounted display. During this process, the camera and microphone capture the user's facial expressions and voice tone. The input consists of the user's desired criteria (product category, budget) and real-time video and audio data of their facial expressions.
[1696] Step 2:
[1697] The emotion engine analyzes the user's emotional information from acquired facial expression video and audio data. Here, it uses facial expression recognition algorithms and audio analysis algorithms to determine emotions and output emotional states such as "relaxed" or "stressed."
[1698] Step 3:
[1699] The user terminal sends the entered preferences and analyzed sentiment information to the server. The input data consists of preferences (in JSON format) and sentiment information (category data), and the output is a data package containing these.
[1700] Step 4:
[1701] The server analyzes the received preferences and sentiment information. The analysis process clarifies preferences based on product categories and budget, and captures sentiment information as the user's current state. The output of this step is organized preference data and sentiment information data.
[1702] Step 5:
[1703] The server generates a search query based on the analyzed preferences. The generated search query is sent to the relevant database to collect the corresponding product information. The input data consists of preferences and sentiment data, while the output is raw data retrieved from the database.
[1704] Step 6:
[1705] The server integrates the acquired product information, sorts out duplicates, and removes invalid information. This process uses an AI-based algorithm. The input is raw data, and the output is a cleaned-up list of product information.
[1706] Step 7:
[1707] The server filters product information based on emotional information. For example, if the server determines that the user is relaxed, it prioritizes displaying information about products that promote relaxation. The input is a cleaned-up list of product information and emotional information, and the output is a prioritized list of products.
[1708] Step 8:
[1709] The server provides the user terminal with an organized product list. The input data is a prioritized product list, and the output is the data sent to the user terminal.
[1710] Step 9:
[1711] The user browses the presented product list and selects a specific product. When the user clicks on a product, detailed information and an inquiry button are displayed. The input data is the product list, and the output is the detailed information of the selected product.
[1712] Step 10:
[1713] The user clicks the inquiry button to make an inquiry about a product they are interested in. The user's terminal presents the necessary inquiry information as an input form and receives it as input data. This inquiry information is sent to the server. The user's input data is the inquiry information, and the output is the data sent to the server.
[1714] Step 11:
[1715] The server generates a query message based on the received query information and sentiment information. For example, if the user is feeling anxious, it will generate a polite message that provides reassurance. The input data consists of query information and sentiment information, and the output is the generated query message.
[1716] Step 12:
[1717] The server sends the query message to the relevant information provider and also sends a notification to the user that the query has been successfully submitted. The input data is the generated query message, and the output is the data sent to the information provider and the notification to the user.
[1718] 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.
[1719] 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.
[1720] 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.
[1721] [Fourth Embodiment]
[1722] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1723] 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.
[1724] 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).
[1725] 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.
[1726] 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.
[1727] 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).
[1728] 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.
[1729] 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.
[1730] 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.
[1731] 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.
[1732] 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.
[1733] 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.
[1734] 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".
[1735] This invention consists of several main components, including a user, a terminal, and a server. The program processing of this system is described below in natural language.
[1736] 1. Gathering information requested by the user.
[1737] (User): When searching for real estate properties, the user uses a device (e.g., smartphone or PC) to input their desired conditions (area, budget, floor plan, amenities, etc.). This allows the user to obtain a list of properties that can be used as specific consideration.
[1738] 2. Submission and analysis of desired conditions
[1739] (Terminal): Sends the entered desired conditions to the server.
[1740] (Server): Receives the desired conditions and performs analysis. In this analysis step, each item such as desired area and budget is clearly identified and constructed as a search query.
[1741] 3. Collection and integration of property information
[1742] (Server): Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and retrieves property information using generated search queries. The retrieved property information is integrated within the server, and duplicate and bait-and-switch listings are detected.
[1743] 4. Removal and filtering of decoy properties
[1744] (Server): Analyzes the acquired property information. As an analysis method, an AI-based algorithm is used to identify and remove "bait properties". Duplicate property information is also sorted from the list, and a unique property list is generated.
[1745] 5. Generation and provision of the optimal property list
[1746] (Server): Based on the user's desired conditions, it filters the properties deemed most suitable in order of priority and generates a list of final candidates.
[1747] (Server): Send this final list of candidates to the user's terminal.
[1748] (Terminal): Displays the received property list to the user.
[1749] 6. Check property details and make inquiries
[1750] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[1751] (Terminal): Detailed information is displayed as a result, along with an inquiry button. If the user wishes to make an inquiry, they click this button.
[1752] 7. Generating and sending inquiry information
[1753] (Terminal): Enter the required information into the inquiry form and send it to the server.
[1754] (Server): Automatically generates a query message based on the received query information.
[1755] (Server): Apply the option to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[1756] (Server): Sends a notification to the user that the query has been successfully submitted.
[1757] Specific example
[1758] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[1759] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into a smartphone app.
[1760] 2. (Terminal): Sends the entered information to the server.
[1761] 3. (Server): Analyzes the received information and generates search queries.
[1762] 4. (Server): Access the database of real estate agents and collect relevant property information.
[1763] 5. (Server): Analyzes the collected property information, excludes decoy properties, and merges duplicate properties.
[1764] 6. (Server): Sends the organized property list to the user's terminal.
[1765] 7. (Terminal): Display the received property list to the user.
[1766] 8. (User): Click on a property of interest from the displayed list to view detailed information.
[1767] 9. (User): Click the inquiry button to make an inquiry about a specific property.
[1768] 10. (Terminal): Enter the inquiry information and send it to the server.
[1769] 11. (Server): Based on the received inquiry information, it generates an inquiry message and sends it to the real estate agent.
[1770] 12. (Server): Sends a notification to the user that the query has been successfully submitted.
[1771] In this way, this system simplifies the process of searching for and inquiring about real estate properties, and provides a set of functions to improve user convenience and satisfaction.
[1772] The following describes the processing flow.
[1773] Step 1:
[1774] (User) Uses a smartphone or PC to enter desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.).
[1775] Step 2:
[1776] (Terminal) Sends the entered desired conditions to the server.
[1777] Step 3:
[1778] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[1779] Step 4:
[1780] (Server) Generates search queries based on desired conditions. For example, it creates queries for "Shinjuku Ward, Tokyo", "budget under 80,000 yen", "2DK or larger", and "pets allowed".
[1781] Step 5:
[1782] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[1783] Step 6:
[1784] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[1785] Step 7:
[1786] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[1787] Step 8:
[1788] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[1789] Step 9:
[1790] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[1791] Step 10:
[1792] (Server) Remove the decoy property from the property list.
[1793] Step 11:
[1794] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. For example, it prioritizes properties that exactly match the criteria of "Shinjuku Ward, Tokyo," "budget under 80,000 yen," "2DK or larger," and "pets allowed."
[1795] Step 12:
[1796] (Server) Generates the final property list and sends it to the user's terminal.
[1797] Step 13:
[1798] (Terminal) Displays the received property list to the user.
[1799] Step 14:
[1800] (User) To view the displayed property list and check the details of a specific property, click on that property.
[1801] Step 15:
[1802] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[1803] Step 16:
[1804] (User) Click the inquiry button to inquire about a property they are interested in.
[1805] Step 17:
[1806] (Terminal) Displays an inquiry form, and sends the information entered by the user into the form to the server.
[1807] Step 18:
[1808] (Server) The server automatically generates an inquiry message based on the received inquiry information. This message may include, for example, the user's name, contact information, and the question.
[1809] Step 19:
[1810] (Server) After applying options to prevent excessive sales calls, the inquiry message is sent to the information provider.
[1811] Step 20:
[1812] (Server) Notifies the user that the query has been successfully sent.
[1813] (Example 1)
[1814] 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".
[1815] Traditional real estate search systems were time-consuming to retrieve property information that matched users' desired criteria, and often included bait-and-switch listings and duplicate information. Furthermore, they suffered from excessive sales calls during the inquiry process. There is a need to solve these problems and provide a system that is both convenient and reliable for users.
[1816] 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.
[1817] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases and obtaining property information, means for analyzing the obtained property information with an AI algorithm to sort out duplicate properties and remove decoy properties, means for providing the sorted property information to the user terminal, and means for receiving inquiry information from the user, generating an inquiry message, and sending it to the information provider. This simplifies the process from searching for real estate properties to making inquiries, and enables the provision of reliable and satisfying information to the user.
[1818] "User" refers to the end user who is looking for a real estate property.
[1819] "Terminal" refers to a computer device used by a user (such as a smartphone, PC, or tablet).
[1820] A "server" refers to a computer system on a network that receives, analyzes, processes, and provides information to users.
[1821] "Desired conditions" refer to the requests that users enter when searching for properties, such as area, budget, floor plan, and amenities.
[1822] "Means of receiving" refers to the processes and technologies that allow the server to receive user requests and inquiry information.
[1823] "Methods for analyzing and generating search queries" refers to the process or technology of analyzing received desired conditions and generating search queries (commands for database searches) based on those conditions.
[1824] A "database of information providers" refers to a database where property information managed by real estate agents and other related parties is stored.
[1825] "Property information" refers to information about a property, such as its location, price, floor plan, and amenities.
[1826] "Methods for sorting out duplicate listings and removing decoy listings" refers to processes and technologies that eliminate duplicate information from listing information acquired by the server and identify and remove unreliable decoy listings.
[1827] "AI algorithm" refers to analytical methods that utilize artificial intelligence technology.
[1828] "Inquiry information" refers to data entered by users to indicate questions or interest regarding a property.
[1829] A "contact message" refers to a message generated by the server and sent to the information provider, which contains the user's inquiry.
[1830] The "option to prevent excessive sales calls" refers to settings or mechanisms that automatically control excessive sales calls from real estate agents in response to user inquiries.
[1831] Modes for carrying out the invention
[1832] This invention is a system that streamlines the search and inquiry process for real estate properties, comprising key components such as users, terminals, and servers. The system takes the user's desired conditions as input, collects corresponding property information, and performs a series of processes to provide the most suitable property list.
[1833] Hardware and software to be used
[1834] This system uses the following main hardware and software.
[1835] Device: A device used by a user, such as a smartphone, personal computer (PC), or tablet.
[1836] Server: Receives, analyzes, processes, and provides data. Examples include web servers such as Apache and Nginx.
[1837] Database: Stores and manages property information and user inquiry information. Databases used include, for example, MySQL, PostgreSQL, and MongoDB.
[1838] Generative AI models: Used for property analysis and optimization. Specifically, frameworks such as TensorFlow and PyTorch are utilized.
[1839] Specific examples of system processing
[1840] Example 1: When User A searches for a pet-friendly property in Shinjuku Ward, Tokyo, with a budget of 80,000 yen or less and a 2DK or larger layout.
[1841] 1. (User) User A enters "Shinjuku Ward, Tokyo, budget under 80,000 yen, 2DK or larger, pets allowed" into the app on their smartphone.
[1842] 2. (Terminal) The terminal receives the entered information and creates an HTTP POST request to send it to the server.
[1843] 3. (Server) The server analyzes the received information and generates search queries. This process uses libraries such as Python's Pandas library.
[1844] 4. (Server) The server uses the generated search query to access databases of multiple real estate agents and collect relevant property information.
[1845] 5. (Server) The collected property information is analyzed using an AI algorithm to remove decoy properties and organize duplicate information. TensorFlow or PyTorch is used for this analysis.
[1846] 6. (Server) Generates the optimal property list and sends the reformatted data to the user terminal.
[1847] 7. (Terminal) The user's terminal analyzes the received property list and displays it in a format that is easy for the user to view.
[1848] 8. (User) User A clicks on a property of interest from the displayed list to view detailed information.
[1849] 9. (User) Click the inquiry button to make an inquiry about a specific property.
[1850] 10. (Terminal) Enter the inquiry information and format it into data ready to send to the server.
[1851] 11. (Server) Based on the received inquiry information, the server generates an inquiry message, applies options to prevent excessive sales contact as needed, and then sends it to the real estate agent.
[1852] 12. (Server) Send a notification to the user that the query has been successfully sent.
[1853] Thus, this system provides a series of functions to efficiently collect and provide users with the real estate property information they desire, and to simplify the inquiry process.
[1854] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1855] Step 1:
[1856] (User) Users enter their search criteria for real estate properties on a device such as a smartphone or PC. These criteria include area, budget, floor plan, and amenities. For example, a user might enter "Shinjuku Ward, Tokyo; budget under 80,000 yen; 2DK or larger; pets allowed." The device retains the entered data.
[1857] Input: User's desired conditions (area, budget, floor plan, equipment requirements, etc.)
[1858] Output: User preference data stored on the device.
[1859] Step 2:
[1860] (Terminal) The terminal creates an HTTP POST request to send the user's entered desired conditions data to the server. This request has a JSON-formatted payload containing the desired conditions data. After the request is created, it is sent to the server.
[1861] Input: User's desired conditions data
[1862] Output: HTTP POST request sent to the server
[1863] Step 3:
[1864] (Server) The server analyzes the desired conditions data received from the terminal. It analyzes the received data and extracts items such as desired area, budget, floor plan, and equipment requirements. The Python Pandas library is used for this analysis. After the analysis is complete, a search query is generated.
[1865] Input: Desired conditions data from the device
[1866] Output: Analyzed desired criteria elements and search query
[1867] Step 4:
[1868] (Server) The server uses the generated search query to access multiple information provider databases. This is done using SQL queries and API requests. It retrieves property information that matches the search query.
[1869] Input: Search query
[1870] Output: Property information obtained from multiple information providers.
[1871] Step 5:
[1872] (Server) The server stores the acquired property information in an integrated database and performs data integration processing. It identifies duplicate property information from the integrated data and uses an AI algorithm to detect and remove decoy properties. TensorFlow and PyTorch are used for this analysis.
[1873] Input: Acquired property information
[1874] Output: Organized property information with duplicate and decoy properties removed.
[1875] Step 6:
[1876] (Server) The server generates a list of properties that best match the user's desired conditions based on the organized property information. It uses a ranking algorithm to sort the properties in order of priority and converts them into a data format to be sent to the user's terminal.
[1877] Input: Organized property information
[1878] Output: Optimal property list
[1879] Step 7:
[1880] (Terminal) The terminal analyzes the optimal property list data received from the server and displays it in a user-friendly format. This display uses list or card format and includes detailed information and images for each property.
[1881] Input: Property list data sent from the server
[1882] Output: Property list displayed on the user's terminal
[1883] Step 8:
[1884] (User) The user views the provided property list and clicks on a property that interests them. This action causes the device to request detailed information from the server and display the relevant information.
[1885] Input: Property list and user click actions
[1886] Output: Details of the clicked property
[1887] Step 9:
[1888] (User) When a user wants to inquire about a specific property, they click the "Inquiry button." This action displays an inquiry form in a pop-up window. The user then fills in the required information in the form.
[1889] Input: Details of the clicked property and inquiry action
[1890] Output: Input query information
[1891] Step 10:
[1892] (Terminal) The terminal formats the inquiry information entered by the user into data for transmission to the server and creates an HTTP POST request. After the request is created, it is sent to the server.
[1893] Input: User inquiry information
[1894] Output: HTTP POST request sent to the server
[1895] Step 11:
[1896] (Server) The server analyzes the received inquiry information and generates an inquiry message. Options are also applied to prevent excessive sales calls. The generated inquiry message is sent to the information provider.
[1897] Input: User inquiry information
[1898] Output: Generated query message
[1899] Step 12:
[1900] (Server) The server generates and sends a notification to the user confirming that the query has been successfully submitted. The user receives this notification on their device and can confirm that the query was completed successfully.
[1901] Input: Result of sending the inquiry message
[1902] Output: Notification to user that transmission is complete.
[1903] (Application Example 1)
[1904] 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".
[1905] The challenges include improving the efficiency of inventory management and optimizing delivery routes at logistics centers, as well as enhancing user convenience by removing duplicate and decoy information from the information provider database. In conventional systems, these processes are often performed manually, resulting in time-consuming and labor-intensive work, and a high risk of errors. Furthermore, there is a need for improvement in measures to prevent excessive sales communications.
[1906] 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.
[1907] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and generating search queries, means for accessing multiple information provider databases to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for monitoring the inventory status of the logistics center in real time and generating alerts according to specific conditions, means for analyzing and proposing the optimal delivery route based on the delivery address using AI, means for integrating multiple delivery orders and removing duplicate order information, means for providing the organized property information to the user terminal, and means for sending notifications to the user. This makes it possible to efficiently and automatically manage inventory at the logistics center and optimize delivery routes. In addition, the automation of duplicate and decoy information management greatly improves user convenience.
[1908] "Means for receiving user preferences" refers to a means for users to input their desired conditions and for that information to be incorporated into the system.
[1909] "Means for analyzing desired conditions and generating search queries" refers to methods for analyzing the desired conditions received from users and generating appropriate search queries.
[1910] "Methods for obtaining property information by accessing multiple information provider databases" refers to methods for obtaining necessary property information by accessing the databases of multiple information providers.
[1911] "Methods for sorting out duplicate properties from acquired property information and removing decoy properties" refers to methods for analyzing acquired property information, sorting out duplicate property information, and removing false decoy properties.
[1912] "A means of monitoring the inventory status of a logistics center in real time and generating alerts according to specific conditions" refers to a means of constantly monitoring the inventory status of a logistics center and generating alerts based on specific conditions (e.g., insufficient inventory, excess inventory).
[1913] "A method for analyzing and proposing the optimal delivery route based on the delivery address using AI" refers to a method for using AI technology to analyze the optimal delivery route based on the delivery address and propose it to the user.
[1914] "Means for integrating multiple delivery orders and removing duplicate order information" refers to means for integrating multiple delivery order information and removing duplicate order information.
[1915] "Means for providing organized property information to a user terminal" refers to means for transmitting and providing organized property information to a user terminal.
[1916] "Means of sending notifications to users" refers to means of notifying users of important information or updates.
[1917] This invention is a system that streamlines the search for real estate properties, inventory management at logistics centers, and optimization of delivery routes. The processing of this system's program is described below in natural language.
[1918] 1. Gathering information requested by the user.
[1919] Users can use a device (such as a smartphone or PC) to input their desired conditions (area, budget, floor plan, equipment requirements, etc.) to request a list of properties that can serve as specific considerations and suggestions for the optimal delivery route.
[1920] 2. Submission and analysis of desired conditions
[1921] The terminal sends the entered desired conditions to the server.
[1922] The server analyzes the received request conditions. In the analysis step, each item, such as the desired area, budget, and delivery volume, is clearly identified and constructed as a search query.
[1923] 3. Collection and integration of property and inventory information
[1924] The server accesses multiple information provider databases and retrieves property information using generated search queries. It also monitors the inventory status of logistics centers in real time and collects necessary data.
[1925] 4. Removal of decoy properties and generation of inventory alerts
[1926] The server analyzes the acquired property information, uses AI-based algorithms to identify and remove decoy properties. It also monitors inventory status based on specific conditions and generates alerts as needed.
[1927] 5. Optimization and integration of delivery routes
[1928] The server uses AI technology to generate the optimal delivery route for the entered delivery address and consolidates multiple delivery orders. Duplicate order information is excluded.
[1929] 6. Generating and providing the optimal list
[1930] The server filters the properties and delivery routes deemed most suitable based on the user's preferences, prioritizing them in order of priority, and generates a list of final candidates.
[1931] The server sends this final list of candidates to the user's terminal.
[1932] The device displays the received information to the user.
[1933] 7. Notifications and Inquiries
[1934] Users browse the presented list and, if necessary, check for more information about specific properties or deliveries.
[1935] The device enters the necessary information into the inquiry form and sends it to the server.
[1936] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully submitted.
[1937] Hardware and software used
[1938] Hardware: Smartphones, servers, PCs
[1939] Software: Python, REST API, AI algorithms
[1940] Specific example
[1941] If User B is looking for the optimal delivery route within Tokyo with a budget of 8,000 yen and a high volume of deliveries:
[1942] 1. The user enters "Tokyo, budget 8000 yen, delivery volume: high" into the smartphone app.
[1943] 2. The terminal sends the entered information to the server.
[1944] 3. The server analyzes the received information and performs delivery optimization that meets the specified conditions.
[1945] 4. The server accesses multiple warehouse databases to collect inventory information.
[1946] 5. The server generates the optimal delivery route based on the delivery address and consolidates duplicate orders.
[1947] 6. The server sends the optimal inventory information and delivery route to the user's terminal.
[1948] 7. The device notifies the user of the received information.
[1949] Example of a prompt:
[1950] "Please propose the optimal delivery route within Tokyo, with a budget of 8,000 yen and a high volume of deliveries."
[1951] In this way, we provide a system that enables efficient inventory management and optimization of delivery routes in logistics centers.
[1952] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1953] Step 1:
[1954] The user uses a device (e.g., a smartphone) to enter their desired conditions (area, budget, delivery volume, etc.).
[1955] Input: Conditions such as area, budget, and delivery volume.
[1956] Output: Data matching the desired conditions.
[1957] Step 2:
[1958] The terminal sends the user's entered preferences to the server.
[1959] Input: User's desired conditions data.
[1960] Output: The result of sending data to the server.
[1961] Step 3:
[1962] The server analyzes the received request conditions and generates a search query based on the analyzed data.
[1963] Input: Desired conditions data received from the terminal.
[1964] Data processing: Analysis of desired conditions, generation of queries.
[1965] Output: Search query.
[1966] Step 4:
[1967] The server uses the generated search query to access multiple information provider databases and retrieve property information and logistics center inventory information.
[1968] Input: Search query.
[1969] Data processing: Accessing information provider databases and retrieving data.
[1970] Output: Acquired property information and inventory information.
[1971] Step 5:
[1972] The server analyzes the acquired property information, uses AI algorithms to filter out duplicate properties, and removes deceptive listings. It also generates alerts under specific conditions based on inventory information.
[1973] Input: Acquired property information and inventory information.
[1974] Data processing: Analysis of property information, sorting of duplicate properties, removal of bait-and-switch properties, monitoring of inventory information, and generation of alerts.
[1975] Output: Organized property information, inventory alerts.
[1976] Step 6:
[1977] The server uses AI technology to analyze and propose the optimal delivery route based on the provided delivery address. Furthermore, it consolidates multiple delivery orders and removes duplicate order information.
[1978] Input: Delivery address, order information.
[1979] Data processing: Analysis and optimization of delivery routes, and consolidation of duplicate orders.
[1980] Output: Optimized delivery route.
[1981] Step 7:
[1982] The server filters the most suitable properties and delivery routes based on the user's preferences, prioritizing them in order of priority, and generates a final list of candidates.
[1983] Input: Desired conditions, organized property information, optimized route information.
[1984] Data processing: Filtering based on priority, generating lists.
[1985] Output: List of final candidates.
[1986] Step 8:
[1987] The server sends this final list of candidates to the user's terminal.
[1988] Input: List of final candidates.
[1989] Output: Results of sending the list to the user terminal.
[1990] Step 9:
[1991] The device displays the received list to the user.
[1992] Input: The list of final candidates received from the server.
[1993] Output: The displayed list.
[1994] Step 10:
[1995] Users can view specific properties and delivery details from the presented list and make inquiries if necessary.
[1996] Input: The displayed list. Output: The query content.
[1997] Step 11:
[1998] The device enters the necessary information into the inquiry form and sends it to the server.
[1999] Input: User inquiry information.
[2000] Output: Query data sent to the server.
[2001] Step 12:
[2002] The server generates an inquiry message based on the received inquiry information and sends it to the information provider or logistics personnel. It also sends a notification to the user that the inquiry has been successfully sent.
[2003] Input: Inquiry information.
[2004] Data processing: Generating inquiry messages, sending them to information providers, and notifying users.
[2005] Output: Inquiry message to information provider, notification to user.
[2006] 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.
[2007] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. The processing of this system's program is described below in natural language.
[2008] 1. Gathering user preferences and sentiments.
[2009] (User): When searching for real estate properties, the user uses a smartphone or PC to input their desired conditions (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine uses the camera and microphone to analyze the user's facial expressions and voice tone to recognize their emotions.
[2010] 2. Sending and analyzing desired conditions and emotional information
[2011] (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[2012] (Server): Analyzes desired conditions, clearly identifying each item (area, budget, floor plan, equipment requirements), and analyzes emotional information to understand the user's current emotional state.
[2013] 3. Generating search queries and collecting property information
[2014] (Server): Generates search queries based on desired conditions and accesses multiple information provider databases (e.g., real estate agents A, B, and C) to collect property information.
[2015] 4. Integration and organization of property information
[2016] (Server): Uses an AI-based algorithm to integrate acquired property information, sort out duplicate properties, and remove decoy properties.
[2017] 5. Emotion-based filtering and delivery
[2018] (Server): Based on the emotions of the user recognized by the emotion engine, property information is flexibly filtered. For example, if the user is feeling stressed, properties with a relaxing environment will be displayed preferentially.
[2019] (Server): Generates the optimal property list and provides it to the user's terminal.
[2020] (Terminal): Displays the received property list to the user.
[2021] 6. Check property details and make inquiries
[2022] (User): View the presented property list and click on a property if you want to see detailed information about that property.
[2023] (Device): Detailed information is displayed, and a contact button is also displayed.
[2024] 7. Generating inquiry information and reflecting sentiment.
[2025] (User): Click the inquiry button to inquire about a property of interest.
[2026] (Terminal): Enter the required information into the inquiry form and send it to the server.
[2027] (Server): Based on the received inquiry information and the user's emotional state, it automatically generates inquiry messages. For example, for a nervous user, it generates a polite and reassuring message.
[2028] (Server): Sends inquiry messages to information providers (e.g., real estate agents) after applying options to prevent excessive sales calls.
[2029] (Server): Sends a notification to the user that the query has been successfully submitted.
[2030] Specific example
[2031] Example 1: When User B searches for a 1LDK apartment in Shinjuku Ward, Tokyo, with a budget of 100,000 yen or less, and pet-friendly.
[2032] 1. (User): Enter "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pets allowed" into a smartphone app, and the emotion engine analyzes the user's facial expression and determines that they are "relaxed."
[2033] 2. (Terminal): Sends the entered desired conditions and recognized emotion information to the server.
[2034] 3. (Server): Analyzes the desired conditions and generates search queries. Simultaneously, it analyzes emotional information and considers the emotion of "relaxed."
[2035] 4. (Server): Access the database of real estate agents and collect relevant property information.
[2036] 5. (Server): Analyzes the collected property information and removes duplicate properties and bait properties.
[2037] 6. (Server): Based on emotional information, it prioritizes presenting properties with a quiet environment that allows for relaxation.
[2038] 7. (Server): Sends the organized property list to the user's terminal.
[2039] 8. (Terminal): Display the received property list to the user.
[2040] 9. (User): Click on a property of interest from the displayed list to view detailed information.
[2041] 10. (User): Click the inquiry button to inquire about a specific property.
[2042] 11. (Terminal): Enter the inquiry information and send it to the server.
[2043] 12. (Server): Based on the received inquiry information and emotional state, it generates an inquiry message while maintaining a relaxed atmosphere and sends it to the real estate agent.
[2044] 13. (Server): Sends a notification to the user that the query has been successfully submitted.
[2045] In this way, this system can analyze and recognize users' emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[2046] The following describes the processing flow.
[2047] Step 1:
[2048] The user uses a smartphone or PC to input their desired search criteria for real estate properties (area, budget, floor plan, amenities, etc.). Simultaneously, the emotion engine analyzes the user's facial expressions and voice tone using the device's camera and microphone to recognize the user's emotions.
[2049] Step 2:
[2050] (Terminal) The entered desired conditions and recognized emotion information are sent to the server.
[2051] Step 3:
[2052] (Server) The server analyzes the received request conditions and clearly identifies each item (area, budget, floor plan, equipment requirements).
[2053] Step 4:
[2054] (Server) Analyzes the received emotional information to understand the user's current emotional state.
[2055] Step 5:
[2056] (Server) Generates search queries based on desired conditions, for example, creating queries for "Shinjuku Ward, Tokyo", "Budget under 100,000 yen", "1LDK", and "Pets allowed".
[2057] Step 6:
[2058] (Server) Accesses multiple information provider databases (e.g., real estate agents A, B, and C) and collects property information using generated search queries.
[2059] Step 7:
[2060] (Server) The collected property information is integrated and compiled into a single dataset within the database.
[2061] Step 8:
[2062] (Server) The server analyzes the integrated property information and identifies duplicate listings. For example, if multiple real estate agents are listing the same property, it consolidates them into one listing.
[2063] Step 9:
[2064] (Server) Duplicate properties identified through analysis are merged to generate a unique property list.
[2065] Step 10:
[2066] (Server) Using AI-based algorithms, it identifies decoy properties. For example, it detects non-existent properties or misleading property information.
[2067] Step 11:
[2068] (Server) Remove the decoy property from the property list.
[2069] Step 12:
[2070] (Server) The server filters the organized property list in order of priority based on the user's desired conditions. At the same time, it considers emotional information, prioritizing properties with relaxing environments for relaxed users and properties with stress-reducing effects for stressed users.
[2071] Step 13:
[2072] (Server) Generates the final property list and provides it to the user terminal.
[2073] Step 14:
[2074] (Terminal) Displays the received property list to the user. The list reflects filtering results that take sentiment into consideration.
[2075] Step 15:
[2076] (User) To view the displayed property list and check the details of a specific property, click on that property.
[2077] Step 16:
[2078] (Terminal) The terminal requests detailed information about the clicked property from the server, receives the detailed information from the server, and displays it to the user.
[2079] Step 17:
[2080] (User) Click the inquiry button to inquire about a property they are interested in.
[2081] Step 18:
[2082] (Terminal) Displays an inquiry form, and the user enters the necessary information.
[2083] Step 19:
[2084] (Terminal) Sends the entered inquiry information to the server.
[2085] Step 20:
[2086] (Server) The server automatically generates inquiry messages based on the received inquiry information and the user's emotional state. For example, it generates casual messages for relaxed users and polite, reassuring messages for stressed users.
[2087] Step 21:
[2088] (Server) Apply options to prevent excessive sales calls and send inquiry messages to information providers (e.g., real estate agents).
[2089] Step 22:
[2090] (Server) Notifies the user that the query has been successfully sent.
[2091] (Example 2)
[2092] 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".
[2093] Traditional real estate search systems provide property information based on the user's desired conditions, but they often fail to consider the user's emotional state, which can degrade the quality of the user experience. Furthermore, property information obtained from multiple sources often includes duplicates and bait-and-switch listings, and there is a lack of mechanisms to properly organize and remove these. Additionally, there are insufficient mechanisms to prevent excessive sales calls during inquiries.
[2094] The identification processing performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving the user's desired conditions and emotional information, means for analyzing the received desired conditions and emotional information to generate a search query, means for accessing databases of multiple information providers to acquire property information, means for organizing duplicate properties and removing decoy properties from the acquired property information, means for filtering property information based on the user's emotions recognized by the emotion engine, and means for providing the organized and filtered property information to the user terminal. This enables personalized property searches that take into account the user's emotional state, and also allows for the removal of duplicates and decoy properties. Furthermore, the mechanism for preventing excessive sales calls is strengthened.
[2095] A "user" refers to a person who enters their desired criteria to search for real estate properties and whose emotional state is analyzed by an emotion engine.
[2096] "Desired conditions" refers to information about the property the user wants, such as area, budget, floor plan, and amenities.
[2097] "Emotional information" refers to information about the user's emotional state as recognized by the emotion engine.
[2098] An "emotion engine" refers to a system that uses cameras and microphones to analyze a user's facial expressions and voice tone, and recognizes their emotional state.
[2099] A "server" refers to a device or system that receives and analyzes user preferences and emotional information, acquires property information, organizes and filters it, and provides it to the user's terminal.
[2100] A "database of information providers" refers to multiple databases or APIs that can collect real estate property information.
[2101] A "search query" refers to an inquiry generated based on the user's desired conditions and sentiment information, used to retrieve property information.
[2102] "Property information" refers to information about real estate properties, including details such as area, price, floor plan, and amenities.
[2103] "Duplicate listings" refer to identical property information obtained from multiple information providers.
[2104] A "bait-and-switch" property refers to false property information that does not actually exist or is provided with the intention of misleading others.
[2105] "Filtering" refers to the process of flexibly selecting property information based on the emotional state recognized by the emotion engine.
[2106] "User terminal" refers to devices such as smartphones and PCs used by the user.
[2107] "Inquiry information" refers to the information a user enters when they express interest in a particular property and wish to request more detailed information or make an inquiry.
[2108] A "request message" refers to a message sent to an information provider, generated based on the request information and sentiment information.
[2109] This invention relates to a real estate property search system incorporating an emotion engine that recognizes user emotions, and aims to provide property information in a more personalized manner based on the user's desired conditions. A specific embodiment of this system is described below.
[2110] System Overview
[2111] This system receives and analyzes user preferences and sentiment information, accesses multiple information provider databases to retrieve property information, organizes and filters it, and provides it to the user's terminal. This system includes the following main components:
[2112] 1. User Interface (UI)
[2113] 2. Emotional Engine
[2114] 3. Server
[2115] 4. Database
[2116] 5. Information provider API
[2117] User interface and emotion engine
[2118] (User) Users search for real estate properties using devices such as smartphones and PCs. They input their desired conditions (area, budget, floor plan, amenities, etc.) through an application or web interface on their device. When users input their desired conditions, the device's camera and microphone are used to analyze the user's facial expressions and voice tone, and the emotion engine recognizes the user's emotional state.
[2119] For example, if a user enters "Shinjuku Ward, Tokyo, budget under 100,000 yen, 1LDK, pet-friendly," the camera will capture the user's face, and the emotion engine will determine that the user is "relaxed." This emotion information and desired conditions are then sent to the server.
[2120] Servers and databases
[2121] (Server) The server analyzes the received preferences and emotional information and generates search queries. Specifically, it analyzes each item of the preferences (area, budget, floor plan, equipment requirements, etc.) and creates search queries. At the same time, it stores the recognized emotional information in a database and takes the user's emotional state into consideration.
[2122] The server accesses databases from multiple information providers and collects relevant property information. For example, it uses APIs from information providers A, B, and C to retrieve property information.
[2123] Information integration and filtering
[2124] (Server) The server uses AI-based algorithms to integrate acquired property information, sort out duplicate properties, and remove decoy properties. For example, it detects duplicate properties and uses machine learning models (e.g., TensorFlow) to identify and remove decoy properties.
[2125] Next, the emotion engine filters property information based on the user's emotions. If the user is relaxed, it prioritizes properties in quiet environments; if the user is stressed, it prioritizes properties in relaxing environments.
[2126] Property information provision
[2127] (Server) Generates a sorted and filtered list of optimal properties and provides it to the user's terminal. The provided property list is sent in JSON format.
[2128] (Terminal) The received property list is displayed in the user's terminal UI. The user can view the presented property list and check the details of a specific property.
[2129] Handling inquiries
[2130] (User) When a user finds a property they are interested in, they click on the property to view details and then click the inquiry button. This prompts them to fill in the necessary information (name, email address, question, etc.) in the inquiry form.
[2131] (Terminal) Sends inquiry information and user sentiment status to the server.
[2132] (Server) The server automatically generates an inquiry message based on the received inquiry information and emotional state, applies options to prevent excessive sales contact, and sends it to the information provider. For example, if the user is "anxious," the server generates and sends a polite and reassuring message.
[2133] (Server) Sends a notification to the user that the query has been successfully submitted.
[2134] Example of a prompt
[2135] "We have developed a system that provides property information that matches the user's desired conditions. This system incorporates an emotion engine that analyzes the user's facial expressions and tone of voice to recognize their emotions. Based on these emotions, it filters property information and suggests properties that match the user's desired conditions. For example, if the user is feeling stressed, it will prioritize displaying properties that promote relaxation."
[2136] As described above, the present invention can analyze and recognize user emotions and utilize that information to provide property information and handle inquiries in a more personalized manner.
[2137] The flow of the specific processing in Example 2 will be explained using Figure 13.
[2138] Step 1:
[2139] (User) The user uses a smartphone or PC to enter their desired criteria for searching for real estate properties (area, budget, floor plan, amenities, etc.). The entered criteria are collected by the device.
[2140] Input: Area (e.g., Shinjuku-ku, Tokyo), Budget (e.g., under 100,000 yen), Floor plan (e.g., 1LDK), Amenities (e.g., pets allowed)
[2141] Operation: Enter your desired conditions into the user interface (UI).
[2142] Step 2:
[2143] (Device) The device uses its camera and microphone to enable an emotion engine that analyzes the user's facial expressions and voice tone to recognize emotions.
[2144] Input: User's facial expression and voice tone
[2145] Operation: The system captures the user's facial expressions with a camera and uses facial expression analysis software (e.g., OpenCV) to analyze them. It also collects voice tone data with a microphone and analyzes it using speech analysis software (e.g., Google Cloud Speech-to-Text API).
[2146] Output: User's emotional information (e.g., "Relaxed")
[2147] Step 3:
[2148] (Terminal) The terminal sends the entered desired conditions and recognized emotion information to the server.
[2149] Input: A set of desired conditions and emotional information.
[2150] Operation: Converts desired conditions and sentiment data into JSON format and sends it to the server via an HTTP POST request.
[2151] Output: Desired conditions and sentiment information sent to the server
[2152] Step 4:
[2153] (Server) The server analyzes the received requests and identifies each item (area, budget, floor plan, equipment requirements). It also analyzes emotional information to understand the user's current emotional state.
[2154] Input: Desired conditions and emotional information
[2155] Operation: Analyzes the received JSON data, extracts each item of the desired conditions (e.g., "Area: Shinjuku Ward, Tokyo", "Budget: Under 100,000 yen"), and saves sentiment information to the database.
[2156] Output: Search queries and sentiment status
[2157] Step 5:
[2158] (Server) The server generates search queries based on the desired conditions and accesses databases of multiple information providers to collect property information.
[2159] Input: Search query (Example: "Shinjuku Ward, Tokyo; budget under 100,000 yen; 1LDK; pet-friendly")
[2160] Operation: Converts search queries into SQL queries and accesses multiple information provider APIs to retrieve matching property information.
[2161] Output: List of retrieved property information
[2162] Step 6:
[2163] (Server) The server integrates the acquired property information, sorts out duplicate properties, and removes decoy properties.
[2164] Input: List of acquired property information
[2165] Operation: Uses an AI-based algorithm to detect duplicate listings and a machine learning model (e.g., TensorFlow) to identify and remove decoy listings.
[2166] Output: Organized property information
[2167] Step 7:
[2168] (Server) The server filters property information based on the user's emotions, as recognized by the emotion engine.
[2169] Input: Organized property information and emotional state
[2170] Operation: Based on the user's emotional state, it filters the results to prioritize properties with a quiet, relaxing environment.
[2171] Output: List of filtered property information
[2172] Step 8:
[2173] (Server) The server generates the optimal property list and provides it to the user's terminal.
[2174] Input: List of filtered property listings
[2175] Operation: The filtered property list is formatted into JSON and sent to the terminal via HTTP POST.
[2176] Output: List of properties sent to the terminal
[2177] Step 9:
[2178] (Terminal) The terminal displays the received property list to the user.
[2179] Input: Received property list
[2180] Function: Displays property information in the app's user interface (UI), either in list format or by placing pins on a map.
[2181] Output: List of properties displayed to the user
[2182] Step 10:
[2183] (User) The user clicks on a property of interest from the presented list of properties to view detailed information.
[2184] Input: Property List
[2185] Action: Click the property card to proceed to the details screen.
[2186] Output: Screen to view detailed information
[2187] Step 11:
[2188] (User) Click the inquiry button to inquire about a property they are interested in.
[2189] Input: Detailed information screen
[2190] How to do it: Click the inquiry button and fill in the required information in the inquiry form that appears.
[2191] Output: Inquiry Information
[2192] Step 12:
[2193] (Terminal) Sends inquiry information and sentiment information to the server.
[2194] Input: Inquiry information and sentiment information
[2195] Operation: Converts query information into JSON format and sends it to the server via an HTTP POST request.
[2196] Output: Query information and sentiment information sent to the server
[2197] Step 13:
[2198] (Server) The server automatically generates a query message based on the received query information and sentiment information.
[2199] Input: Inquiry information and sentiment information
[2200] Function: Generates polite and reassuring messages, or messages with a relaxed atmosphere, depending on the user's emotional state.
[2201] Output: Generated query message
[2202] Step 14:
[2203] (Server) The server sends the inquiry message to the information provider, after applying options to prevent excessive sales calls.
[2204] Input: Generated inquiry message
[2205] Action: Checks the mailing list and applies an option to filter if the same information provider has already been contacted.
[2206] Output: Inquiry message sent to the information provider
[2207] Step 15:
[2208] (Server) The server sends a notification to the user that the query has been successfully sent.
[2209] Input: Inquiry submission status
[2210] Operation: Generates a notification message and sends it to the user's device via push notification or email.
[2211] Output: Inquiry completion notification sent to the user
[2212] (Application Example 2)
[2213] 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".
[2214] In traditional virtual stores, it is difficult to efficiently and appropriately provide users with information about the products they want. In particular, the uniform provision of information without considering the user's emotional state has led to a decrease in user satisfaction. Another challenge is that users often hesitate to make inquiries due to concerns about excessive sales calls, which hinders smooth communication.
[2215] 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.
[2216] In this invention, the server includes means for receiving user preferences, means for analyzing the received preferences and emotional information to generate search queries, means for accessing multiple databases to obtain information, means for organizing duplicate information and removing invalid information from the obtained information, means for providing the organized information to the user terminal, means including an emotion engine that recognizes the user's emotions using a camera and microphone, and means for adaptively filtering information based on the recognized emotional information. This makes it possible to provide personalized product information that takes into account emotional information in addition to the user's preferences, thereby improving satisfaction with information provision and facilitating smooth inquiries.
[2217] "User preferences" refer to the specific requirements and needs that the user desires, including, for example, product category, budget, and specifications.
[2218] "Emotional information" refers to data that represents the user's emotional state, and is obtained by analyzing facial expressions and voice tone.
[2219] A "search query" is a set of search criteria generated based on the user's preferences and sentiment information, and is used to extract appropriate information from a database.
[2220] A "database" is a system that systematically stores related information, including data from multiple information providers.
[2221] "Invalid information" refers to information that is inappropriate or unhelpful to the user's needs.
[2222] A "camera" is a device that captures the user's facial expressions, thereby providing data for analyzing the user's emotional information.
[2223] A "microphone" is a device that records the user's voice and is used to analyze the tone of the voice to obtain emotional information.
[2224] An "emotion engine" is software or an algorithm used to analyze a user's emotional information, recognizing emotions from facial expressions and voice tone.
[2225] "Filtering" refers to the process of selecting acquired information based on specific criteria and removing unnecessary information.
[2226] A "user terminal" refers to a device that a user directly operates, and includes smartphones and personal computers.
[2227] An "inquiry message" is a message generated based on the user's inquiry information and sent to the information provider.
[2228] This invention relates to a virtual store system that receives user preferences and emotional information and provides optimal product information based on them. This system operates using a user terminal, a server, an emotional engine, and multiple databases.
[2229] System program
[2230] 1. Gathering user preferences and sentiments.
[2231] Users input their desired product category, budget, and other criteria using a smartphone or head-mounted display. Simultaneously, an emotion engine analyzes the user's facial expressions and voice tone using a camera and microphone to recognize emotional information.
[2232] 2. Sending and analyzing desired conditions and emotional information
[2233] The user terminal sends the entered preferences and recognized sentiment information to the server. The server receives this data and analyzes the preferences and sentiment information. The preferences are organized to clarify things like product category and budget.
[2234] 3. Generating search queries and collecting product information
[2235] The server generates search queries based on analyzed preferences and sentiment information. The generated queries are sent to multiple databases to collect relevant product information.
[2236] 4. Integration and organization of product information
[2237] The server uses AI-based algorithms to integrate the acquired product informatio...
Claims
1. A means of receiving the user's desired conditions, A means of analyzing the received desired conditions and generating a search query, A means of obtaining property information by accessing multiple information provider databases, A method for sorting out duplicate properties from acquired property information and removing bait properties, A means of providing organized property information to the user terminal, A system that includes this.
2. The system according to claim 1, further comprising means for providing an option to prevent excessive sales contact at the time of inquiry based on the received desired conditions.
3. The system according to claim 1, further comprising means for receiving inquiry information from the user terminal, generating an inquiry message, and sending it to the information provider.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A