System
The system addresses the challenge of comparing prices and timing purchases across multiple online sales sites by automating data collection, analysis, and notification, allowing users to efficiently find the cheapest products and optimal buying times.
Patent Information
- Application Number
- JP2024131328
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2026-02-20
AI Technical Summary
Users face the challenge of comparing prices across multiple online sales sites and determining the best time to purchase a product, which is time-consuming and laborious, especially with varying prices and campaign information.
A system that includes means for saving user-registered information, collecting product data from multiple online sales sites, comparing prices and campaign information, analyzing past data to determine optimal purchase times, and notifying users of the cheapest products and best times to buy.
Enables users to efficiently find and purchase products at the lowest prices without manual comparison, providing real-time price updates and optimal purchase suggestions.
Smart Images

Figure 2026028712000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] With the spread of online shopping, prices for the same product often vary depending on the sales site. To make the best purchase, users must compare prices on multiple sites and check whether coupons or campaigns are available. This is time-consuming and laborious. It is also difficult to predict the best time to purchase a product. The goal of this project is to solve these problems and help users efficiently purchase the cheapest products. [Means for solving the problem]
[0005] In order to solve the above problems, the present invention provides the following means: A system including a means for saving user-registered information, a means for collecting information on target products from multiple online sales sites, a means for comparing the collected information based on price, coupon, and campaign information, a means for providing the user with information on the cheapest products, a means for analyzing past price data and campaign information to calculate the optimal time to purchase, and a means for notifying the user of the results of the analysis, allows users to purchase products efficiently and at a good price without having to perform complicated research work.
[0006] "User" refers to any individual or legal entity who purchases products using the online sales site.
[0007] "Information" refers to all data obtained from online sales sites, including product data, prices, coupons, campaign information, etc.
[0008] "Online Sales Site" means a website or mobile application that sells products over the Internet.
[0009] "Means of collection" refers to the programs and methods for obtaining product information from online sales sites.
[0010] "Storage means" refers to a program and method for storing collected information in a storage device such as a database.
[0011] "Comparison means" refers to the programs and methods used to analyze collected information and select the most suitable product based on price, coupon, and campaign information.
[0012] "Means for providing" refers to a program and method for displaying the analysis results to the user.
[0013] "Means for analysis" refers to a program and method for calculating the optimal time to purchase a product based on past price data and campaign information.
[0014] "Means for notifying" refers to a program and method for notifying users of the analyzed optimal purchase time and lowest price product information. [Brief explanation of the drawings]
[0015] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13]FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0016] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0017] First, the terms used in the following description will be explained.
[0018] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0019] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0020] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0021] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0022] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0026] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0027] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0028] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0029] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0030] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0033] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0034] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0035] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0036] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0037] 1. System Configuration
[0038] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0039] Management of registered user information
[0040] Collecting product information
[0041] Compare prices, coupons and promotions
[0042] Providing information on the lowest priced products
[0043] Analysis of past data and notification of optimal purchase times
[0044] 2. Processing user registration
[0045] First, the user logs in to the system through their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database.
[0046] 3. Product search and information gathering
[0047] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product.
[0048] 4. Price comparison and lowest price calculation
[0049] The server compares the collected information and calculates the cheapest price for the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen.
[0050] 5. Providing the lowest price information
[0051] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0052] 6. Analytics to inform you of the best time to purchase
[0053] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop during the annual November sale, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0054] Specific examples
[0055] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0056] This system allows users to purchase products at the best price without having to go through the trouble of comparing prices on multiple online sales sites. It also notifies users of the best time to purchase, allowing for more efficient shopping.
[0057] The processing flow will be explained below.
[0058] Step 1:
[0059] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[0060] Step 2:
[0061] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[0062] Step 3:
[0063] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[0064] Step 4:
[0065] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[0066] Step 5:
[0067] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[0068] Step 6:
[0069] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[0070] Step 7:
[0071] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[0072] Step 8:
[0073] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0074] Step 9:
[0075] The server analyzes past price data and campaign information to calculate the best time to purchase a product. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[0076] Step 10:
[0077] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[0078] ---
[0079] By following the above steps, users can use the system to efficiently find the cheapest products and make purchases at the right time.
[0080] Example 1
[0081] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0082] When shopping online, it is time-consuming and labor-intensive for users to compare multiple sales sites one by one to find the cheapest product. It is also difficult for users to analyze past price data and campaign information to determine the best time to purchase. There is a need for a system that can reduce this burden on users and help them purchase the cheapest products more efficiently.
[0083] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0084] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for searching for products based on keywords specified by the user and obtaining product information from online sales sites using scraping technology, and means for transmitting the lowest price information to a terminal and displaying it on the user's screen.This allows users to easily compare multiple online sales sites, purchase products at the best price, and also determine the optimal purchase time.
[0085] "User registered information" refers to personal information and preferences provided by users when logging into the system, as well as information about the online retail sites they use.
[0086] "Target products" are specific products that users wish to purchase, and are collected from online sales sites based on search keywords.
[0087] "Multiple Online Sales Sites" means collectively multiple e-commerce platforms or websites registered or designated by a User.
[0088] "Price" refers to the selling price of the product, which is the amount displayed on the online sales site.
[0089] A "coupon" is a code or information that applies a specific discount and is used when purchasing products on an online sales site.
[0090] "Campaign information" is detailed information about promotions and discount events being held for products and services.
[0091] The "cheapest item" is the lowest priced item calculated using the collected prices, coupons, and promotions information.
[0092] "Past price data" is information about the past selling prices of a particular product, and is data recorded in chronological order.
[0093] The "optimal time to purchase" refers to the period during which a product is most likely to be purchased at the lowest price, determined by analyzing past price data and campaign information.
[0094] "Scraping" is a technique for automatically extracting information from websites, and is a method used by systems to collect information about target products.
[0095] A "terminal" is a device such as a computer, smartphone, or tablet that a user uses to access and operate the system.
[0096] A "screen display" is a means of visually presenting information to a user on a terminal, such as through a web page or application interface.
[0097] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0098] 1. System Configuration
[0099] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0100] Management of registered user information
[0101] Collecting product information
[0102] Compare prices, coupons and promotions
[0103] Providing information on the lowest priced products
[0104] Analysis of past data and notification of optimal purchase times
[0105] 2. Processing user registration
[0106] First, the user logs in to the system via their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database. This database uses a relational database system such as MySQL.
[0107] 3. Product search and information gathering
[0108] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product. The server collects the information using a scraping tool (e.g., BeautifulSoup, Selenium).
[0109] 4. Price comparison and lowest price calculation
[0110] The server compares the collected information and calculates the cheapest price of the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen. The price comparison uses an algorithm in the script (e.g., a function to find the minimum value).
[0111] 5. Providing the lowest price information
[0112] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it might display "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B." The terminal has an interface for visually presenting information to the user.
[0113] 6. Analytics to inform you of the best time to purchase
[0114] The server then analyzes past price data and campaign information to calculate the best time to purchase the product at the lowest price. This analysis is performed using data analysis software (e.g., Python's Pandas and NumPy). For example, if the price of a particular product tends to drop every year during the November sales, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Using this information, the user can purchase the product at the best possible time.
[0115] Specific examples
[0116] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0117] Prompt Sentence Examples
[0118] "If a user wants to buy a laptop, they should check the best deals on laptops and the best time to buy."
[0119] By using this system, users can avoid the hassle of comparing prices across multiple online retailers and can purchase products at the best prices.The system also notifies users of the best time to purchase, allowing for more efficient shopping.
[0120] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0121] Step 1: User Registration and Login
[0122] A user accesses the system using a terminal and enters the required information (e.g., email address, password) into a new registration form or login form. The input data is the user's personal information and authentication information for logging into the system.
[0123] The terminal sends the user's input information to the server as an HTTP request (e.g., POST request), which is the specific data that transmits the user's information.
[0124] The server stores the received user information in a database management system (e.g., MySQL), which is then used for subsequent logins and product searches. The server processes the stored data as authentication information, generates a message indicating successful registration or login, and outputs it to the terminal.
[0125] Specific operation: When a user fills out a form in the browser and presses the submit button, the server verifies the user information and saves it in the database. The server returns the results to the terminal, and the terminal displays a message on the screen indicating successful registration or login.
[0126] Step 2: Perform a product search
[0127] The user enters the keyword for the product they are looking for (e.g., "smartphone") on their device and clicks the search button. The search keyword is the input data used to obtain product information.
[0128] The terminal sends the entered search keywords to the server as an HTTP request.
[0129] Specific operation: When a user enters "smartphone" in the search field and clicks the search button, the keyword is sent to the server. After sending, the device enters standby mode.
[0130] Step 3: Collect your product data
[0131] The server collects product information from registered online sales sites based on the received search keywords, including price, coupon, and campaign information.
[0132] The server uses a scraping tool (e.g., BeautifulSoup, Selenium) to access each online sales site and obtain data on the relevant products. The obtained data is stored in memory as collected information and temporarily saved.
[0133] Specific operation: The server automatically accesses online sales sites A and B, scrapes product information, obtains prices, coupons, and campaign information, and temporarily stores it in memory.
[0134] Step 4: Compare prices and find the best deal
[0135] The server uses the price, coupon, and campaign information collected through scraping to calculate the lowest price using an algorithm, which is a function that finds the minimum value.
[0136] The server calculates the price after applying the coupon from the prices on each site and identifies the cheapest price. The calculation result becomes the output data.
[0137] Specific operation: The server executes a calculation script, and if the price on site A is 50,000 yen, the price on site B is 48,000 yen, and a 1,000 yen coupon is applicable on site B, the final price is calculated to be 47,000 yen.
[0138] Step 5: Providing the best price information
[0139] The server then sends the calculated lowest price information to the terminal as data, including the product name, lowest price, and applicable coupon information.
[0140] The terminal receives the lowest price information and displays it to the user in a visually easy-to-understand manner.
[0141] Specific operation: The server sends the information "A smartphone is priced at 47,000 yen (with a 1,000 yen coupon applied) on online sales site B" to the terminal, which then displays it on the screen.
[0142] Step 6: Analyze and notify optimal purchase time
[0143] The server analyzes the best time to purchase based on past price data and campaign information, using data analysis tools (e.g., Python's Pandas and NumPy).
[0144] The server then sends a notification to the user based on the analysis results, including the recommended time to purchase and the reason for the purchase.
[0145] Specific operation: The server analyzes data and determines from past price fluctuation patterns that "there is a high possibility that the price will fall in June," and notifies the user that "the price may fall in June." The user can use this information to efficiently determine the best time to purchase.
[0146] (Application example 1)
[0147] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0148] Conventional price comparison systems have limitations in efficiently providing users with the lowest prices and best times to purchase. In particular, it has been difficult to compare prices in real time or quickly provide products and discount coupons that catch users' attention. Furthermore, notifications of the best time to purchase based on past data are often inappropriate, preventing users from achieving satisfactory results.
[0149] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0150] In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on prices, discount coupons, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal time to purchase, means for notifying the user of the results of the analysis, and means for collecting information on products and discount coupons that interest the user in real time and visually displaying the comparison information. This enables real-time price comparisons and the application of discount coupons, as well as notification of the optimal time to purchase to the user.
[0151] "User registration information" refers to information including personal information, usage history, preferences, etc. of users registered in the system.
[0152] An "online sales site" is a website that sells goods or services over the Internet.
[0153] "Target product information" refers to information such as price, stock status, and ratings about the product specified by the user.
[0154] "Price comparison" is the act of comparing product prices collected from multiple online sales sites to find the cheapest price.
[0155] A "discount coupon" is a promotion that provides a partial discount on the price if certain conditions are met at the time of purchase.
[0156] "Campaign information" refers to information about sales promotion activities such as discounts and special offers that are carried out within a specific period of time.
[0157] "Real-time collection" refers to the process of capturing and updating data instantly.
[0158] "Visual display" refers to a method of displaying collected data and information to users in an intuitive and easy-to-understand manner.
[0159] The "optimal time to purchase" refers to the optimal time to purchase when the price is expected to be lowest.
[0160] "Notification" is the act of the system informing the user of information.
[0161] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0162] 1. System Configuration
[0163] This system mainly uses a server and user terminals to achieve the following functions:
[0164] Managing and storing user registration information
[0165] Collect information on target products from multiple online sales sites
[0166] Comparison based on collected information on prices, discount coupons, and campaign information
[0167] Providing information on the cheapest products
[0168] Analysis of past data and notification of optimal purchase times
[0169] Real-time collection and visual display of product information and discount coupons that interest users
[0170] 2. Hardware and Software
[0171] The server includes hardware and software for collecting, storing, analyzing, and notifying data. Specifically, it uses a relational database management system (RDBMS) to manage user registration information and price data.
[0172] The user device is assumed to be a smartphone, and the application will be developed using a programming language such as Python. In addition, the following software will be used:
[0173] requests: Data collection from online retailers
[0174] BeautifulSoup: HTML parsing and analysis
[0175] pandas: Data manipulation and analysis
[0176] 3. Data processing or data calculation
[0177] The server searches online sales sites for the product specified by the user, collects information about the product (price, discounts, campaign information), and then performs the following specific data calculations:
[0178] Apply discounts and coupons to each product price to find the cheapest price
[0179] Analyze collected historical price data to identify the best time to purchase
[0180] Notify users of the lowest prices and the best time to purchase
[0181] 4. Specific Examples
[0182] When a user wants to purchase a "laptop computer," the following operations are performed. The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A offers a price of 60,000 yen and site B offers a price of 58,000 yen, and B also has a 2,000 yen discount coupon, the final price on site B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, and the user can purchase the cheapest laptop computer.
[0183] The server also analyzes past price data, and if it determines that laptop prices tend to drop in June, it will notify the user that "prices may drop in June" and suggest a better time to purchase.
[0184] Prompt Sentence Examples
[0185] Specific examples of prompt sentences are shown below.
[0186] user_id = 'user_001'
[0187] favorite_sites = ['https: / / example.com', 'https: / / anothersite.com']
[0188] product_name = 'iPhone 13'
[0189] app = SaiyasuMaster()
[0190] app.register_user(user_id, favorite_sites)
[0191] notification = app.notify_user(user_id, product_name)
[0192] print(notification)
[0193] In this way, users can use the system to compare prices in real time and find the best price and the best time to buy.
[0194] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0195] Step 1: Managing user registration information
[0196] When a user logs in to the system, the terminal inputs user registration information, which is sent to the server and stored in a database, including the user ID, favorite online shopping sites, etc.
[0197] Input: User ID, Favorite Online Shopping Site
[0198] Data processing: None
[0199] Output: Save information to a database
[0200] Step 2: Submit a product search request
[0201] The user enters a search keyword (e.g., "iPhone 13") on their device and sends a product search request to the server.
[0202] Input: Search keyword
[0203] Data processing: None
[0204] Output: Search request to the server
[0205] Step 3: Collect product information
[0206] The server collects product information (price, coupons, campaign information, etc.) from multiple online sales sites based on search keywords specified by the user. In this process, it sends HTTP requests to each site using the requests library and parses the HTML data using BeautifulSoup.
[0207] Input: Search keywords, online sales site URL
[0208] Data processing: HTML analysis
[0209] Output: Collected product information (price, coupons, campaigns)
[0210] Step 4: Compare prices and discounts
[0211] The server compares the collected product information and calculates the lowest price by applying coupons and campaign information to the prices. Specifically, it calculates the value by subtracting the discount amount from the base price of each product.
[0212] Input: Collected product information (price, coupons, campaigns)
[0213] Data processing: Price calculation
[0214] Output: Cheapest product information
[0215] Step 5: Provide information on the cheapest products
[0216] The server then sends the calculated lowest price information to the terminal and provides it to the user, along with detailed information including links and the final price.
[0217] Input: Lowest price product information
[0218] Data processing: None
[0219] Output: Send the lowest price information to the terminal
[0220] Step 6: Analyze historical data
[0221] The server analyzes historical price data and campaign information to analyze patterns of product price fluctuations. It uses the pandas library to analyze the data and identify the best time to purchase.
[0222] Input: Historical price data, campaign information
[0223] Data processing: data analysis, pattern recognition
[0224] Output: Information on the best time to purchase
[0225] Step 7: Notification of optimal purchase time
[0226] The server then notifies the user of the best time to purchase based on the analysis results, and details such as specific months and sale periods are sent to the user's device.
[0227] Input: Best time to purchase information
[0228] Data processing: None
[0229] Output: Notification of optimal purchase time to device
[0230] Through these steps, users can purchase the cheapest products efficiently in real time. Furthermore, by knowing the best time to purchase based on past data, they can make even more efficient purchases.
[0231] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0232] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[0233] 1. System Configuration
[0234] This system is primarily composed of a server, a terminal, and an emotion engine. The server manages and analyzes user registration information and product information. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience.
[0235] 2. Processing user registration
[0236] Users log in to the system using their terminals and register the online sales sites they frequently use. For example, a user can register "online sales site A" and "online sales site B." The server stores this information in a database.
[0237] 3. Operation of the Emotion Engine
[0238] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[0239] 4. Product search and information gathering
[0240] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[0241] 5. Price comparison and lowest price calculation
[0242] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[0243] 6. Emotional Data Analysis and Response
[0244] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[0245] 7. Providing the lowest price information
[0246] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0247] 8. Analytics to inform you of the best time to purchase
[0248] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0249] Specific examples
[0250] As a specific example, consider a user wanting to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000 and site B offers a ¥58,000 discount coupon, the final price for site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0251] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[0252] The processing flow will be explained below.
[0253] Step 1:
[0254] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[0255] Step 2:
[0256] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[0257] Step 3:
[0258] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[0259] Step 4:
[0260] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[0261] Step 5:
[0262] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[0263] Step 6:
[0264] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[0265] Step 7:
[0266] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[0267] Step 8:
[0268] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0269] Step 9:
[0270] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize the user's emotions. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for and comparing products.
[0271] Step 10:
[0272] The emotion engine analyzes the user's emotional data and adjusts the information delivery method and content based on their emotional state. For example, if a user feels stressed while searching, the system will provide additional support information and refer the user to a link.
[0273] Step 11:
[0274] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[0275] Step 12:
[0276] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[0277] ---
[0278] Through these steps, users can use the system to efficiently find the cheapest products, make purchases at the right time, and receive emotional support.
[0279] Example 2
[0280] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0281] In recent years, online sales via the Internet have become widespread, allowing users to purchase products from a variety of online sales sites. However, collecting information from multiple sales sites and comparing prices, coupon information, and campaign information takes time and effort for users. In addition, the user's purchasing experience is not optimized because the purchasing process is not handled with consideration for user emotions.
[0282] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0283] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the results of the analysis, means for recognizing and analyzing the user's emotions, and means for adjusting the information provision method and content based on the analyzed emotion data. This allows the user to purchase products at the best price without having to go through the trouble of comparing multiple sales sites and receive support that is sensitive to their emotions.
[0284] "Means for storing user-registered information" refers to the means for storing and managing information registered by users in a database or other storage device.
[0285] "Means for collecting information about target products from multiple online sales sites" refers to programs or applications that collect information about products that users wish to purchase from multiple online sales platforms.
[0286] "Means of comparing collected information based on price, coupon, and campaign information" refers to algorithms or software that analyzes and compares collected product price information, available coupons, and ongoing campaign information.
[0287] "Means for providing users with information about the cheapest products" refers to the interface and notification functions for identifying the cheapest products from the comparison results and presenting that information to users.
[0288] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" refers to analytical tools and algorithms that analyze past price fluctuation data and campaign history to predict when a particular product will be cheapest.
[0289] "Means for notifying the user of the analysis results" refers to a notification system or feedback function for informing the user of the analysis results.
[0290] "Means for recognizing and analyzing user emotions" refers to engines and algorithms that analyze a user's facial expressions and tone of voice based on real-time data collected by sensor devices such as cameras and microphones, and identify their emotions.
[0291] "Means for adjusting the method and content of information provision based on analyzed emotional data" refers to software functions that dynamically change the information displayed and the interface presented according to the user's emotional state.
[0292] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[0293] System Configuration
[0294] This system mainly consists of a server, a terminal, and an emotion engine. The server manages user registration information and product information and performs data analysis. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience. The hardware used includes a camera and microphone, and the software used includes an emotion recognition algorithm.
[0295] Processing user registration
[0296] Users log in to the system using their terminals and register the online sales sites they frequently use. Specifically, the user registers "online sales site A" and "online sales site B." The server stores this information in a database.
[0297] Emotion Engine Operation
[0298] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[0299] Product search and information gathering
[0300] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[0301] Price comparison and lowest price calculation
[0302] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[0303] Emotional data analysis and response
[0304] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[0305] Providing the lowest price information
[0306] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it displays "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B."
[0307] Analysis to inform optimal purchase timing
[0308] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0309] Specific examples
[0310] Example prompt:
[0311] "I want to buy a laptop. Can you tell me the cheapest price?"
[0312] Processing example:
[0313] Consider a scenario where a user wants to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000, site B offers a ¥58,000 discount coupon, and site B offers a ¥2,000 discount coupon, the final price on site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0314] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[0315] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0316] Step 1: User login and registration
[0317] 1. The user accesses the system using a terminal and opens the login screen.
[0318] 2. The terminal prompts the user to enter login information (username, password).
[0319] Input: Username, Password
[0320] 3. The user enters their login information and presses the "Login" button.
[0321] 4. The device sends this login information to the server.
[0322] Output: Authentication request sent to the server
[0323] 5. The server compares the received login information with its database and performs authentication.
[0324] Input: Login information
[0325] Data processing and calculation: Database matching
[0326] Output: Authentication result
[0327] 6. If authentication is successful, the user will proceed to a screen where they can register their favorite online shopping sites.
[0328] 7. The user registers online sales sites A and B.
[0329] 8. The server stores this information in a database.
[0330] Input: Registration site information
[0331] Data processing and calculation: Database storage
[0332] Output: Saved
[0333] Step 2: Emotion Engine in Action
[0334] 1. The camera and microphone installed on the user's device capture the user's facial expressions and voice.
[0335] Input: User's facial expression, voice
[0336] 2. The device formats the captured data for analysis.
[0337] Data processing and calculation: Data format
[0338] Output: Formatted emotion data
[0339] 3. The emotion engine receives the formatted data and parses it using algorithms that recognize the user's emotions.
[0340] Input: Formatted emotion data
[0341] Data processing and calculation: Sentiment analysis
[0342] Output: Emotional state data
[0343] 4. Based on the analysis results, determine the user's current emotional state.
[0344] Input: Emotional state data
[0345] Data processing and calculation: Emotional judgment
[0346] Output: Emotional state determination result
[0347] 5. The server adjusts the interface and information presentation method based on the emotion data.
[0348] Input: Emotional state determination result
[0349] Data processing and calculation: Interface adjustment
[0350] Output: Adjusted interface
[0351] Step 3: Product search and information gathering
[0352] 1. The user enters the keyword for the product they want to purchase (e.g., "smartphone") into the search bar on their device.
[0353] Input: Search keyword
[0354] 2. The device sends the search keywords to the server.
[0355] Output: The search request sent to the server
[0356] 3. The server sends a request to all online sales sites where the user has registered to collect information about the specified product.
[0357] Input: Search keyword
[0358] Output: Information collection request to online retailer
[0359] 4. Each online site returns product prices, coupons, campaign information, etc. to the server.
[0360] Output: Product information data
[0361] 5. The server compiles the returned information and stores it in a database.
[0362] Input: Product information data
[0363] Data processing and calculation: Database storage
[0364] Output: Saved
[0365] Step 4: Compare prices and find the best deal
[0366] 1. The server analyzes the collected product list.
[0367] Input: Product list data
[0368] Data processing and calculation: Data analysis
[0369] Output: Analysis result list
[0370] 2. Extract price information for each product, whether or not there is a coupon, and campaign information, and summarize it in a table format.
[0371] Input: Analysis result list
[0372] Data processing and calculation: Tabular data generation
[0373] Output: Price comparison data
[0374] 3. For example, the price of a smartphone is 50,000 yen on online sales site A and 48,000 yen on online sales site B.
[0375] Input: Price comparison data
[0376] Output: Price information for each site
[0377] 4. The server applies coupons and campaign information to calculate the actual payment amount.
[0378] Input: Price comparison data, coupon information
[0379] Data processing and calculation: Payment amount calculation
[0380] Output: Final payment amount data
[0381] 5. For example, a 1,000 yen discount coupon is applied to an item priced at 48,000 yen on online sales site B, bringing the final price to 47,000 yen.
[0382] Input: Final payment amount data
[0383] Output: Price information after applying coupon
[0384] 6. The server selects the cheapest product based on the analysis results.
[0385] Input: Price information after applying coupon
[0386] Data processing and calculation: Lowest price selection
[0387] Output: Information about the cheapest product
[0388] Step 5: Providing the best price information
[0389] 1. The server sends the lowest price product information to the terminal and provides it to the user.
[0390] Input: Information about the cheapest product
[0391] Output: The lowest price information sent to the terminal
[0392] 2. The user's device displays this information on the screen.
[0393] Input: Lowest price information sent to the terminal
[0394] Output: The lowest price displayed on the screen
[0395] Step 6: Analytics informs optimal purchase times
[0396] 1. The server analyzes historical price data and campaign information.
[0397] Input: Historical price data, campaign information
[0398] Data processing and calculation: Data analysis
[0399] Output: Optimal purchase timing prediction
[0400] 2. If the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[0401] Input: Optimal purchase time prediction
[0402] Output: Notification information for the user
[0403] 3. The terminal displays this notification to the user.
[0404] Input: Notification information for the user
[0405] Output: Notification information displayed on the screen
[0406] (Application example 2)
[0407] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0408] Traditional online shopping requires users to manually search multiple sales sites to find the lowest price, which is time-consuming and distracting, especially when used in autonomous vehicles. Furthermore, existing price comparison systems often fail to provide information that takes into account users' emotions, resulting in a poor purchasing experience. Furthermore, they lack notifications for optimizing purchase timing, making it difficult for users to purchase products at the most advantageous times.
[0409] The identification processing by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for recognizing and analyzing the user's emotions, and means for adjusting the method and content of information provision based on the emotion analysis results. This allows the user to purchase products at the cheapest price and provides information that takes emotions into consideration, improving the purchasing experience and enabling comfortable shopping without losing the user's attention in an autonomous vehicle.
[0410] "Means for storing user-registered information" refers to a function for properly storing and managing personal information and purchase history that users have registered in the system.
[0411] The "means for collecting information about the target product from multiple online sales sites" is a function for automatically collecting data about the product from various sales sites on the Internet.
[0412] "Means of comparing collected information based on price, coupon, and campaign information" refers to a function for comparing and analyzing acquired product information based on price, coupons, and campaign details being implemented on each site.
[0413] "Means for providing users with information on the cheapest products" is a function for presenting users with information on the lowest priced products obtained as a result of comparison and analysis.
[0414] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" is a function that analyzes past price fluctuations and campaign implementation status to predict the best time to purchase a product.
[0415] The "means for notifying the user of the analysis results" is a function for communicating to the user the optimal time to purchase and other important information obtained through the analysis.
[0416] "Means for recognizing and analyzing the user's emotions" refers to a function for recognizing the user's facial expressions and tone of voice and analyzing their emotional state based on that.
[0417] The "means for adjusting the method and content of information provision based on the emotion analysis results" is a function for providing product information in the most optimal way or displaying support messages depending on the user's emotional state.
[0418] This invention relates to a system for improving the user's shopping experience in an autonomous vehicle. This system is mainly composed of a server, a terminal, and an emotion engine, and helps users find the cheapest products from multiple online sales sites, analyzes the user's emotions, and provides appropriate information at the optimal time.
[0419] 1. System Configuration
[0420] The system consists of the following main components:
[0421] Server: Manages and analyzes user registration information and product information.
[0422] Terminal: The infotainment system in an autonomous vehicle that provides the user interface.
[0423] Emotion engine: Recognizes and analyzes emotions from the user's facial expressions, tone of voice, etc.
[0424] 2. Processing user registration
[0425] Users log in to the system using their vehicle's infotainment system and register their favorite online shopping sites, and the server stores this information in a database.
[0426] 3. Operation of the Emotion Engine
[0427] The emotion engine uses cameras and microphones installed in the vehicle to capture the user's facial expressions and tone of voice, then analyzes the data and uses the Microsoft Azure Face API to analyze the user's emotional state (stress, excitement, relief, etc.) in real time.
[0428] 4. Product search and information gathering
[0429] Users enter search keywords for the product they want to purchase by voice, and the voice data is converted to text using the Google Speech-to-Text API. The device then sends this search request to a server, which then collects product information from all registered online sales sites. Information collection is done using a scraping library (BeautifulSoup) and an API client (requests).
[0430] 5. Price comparison and lowest price calculation
[0431] The server analyzes the collected list of products and selects the cheapest product based on price information, whether or not there are coupons, and campaign information.
[0432] 6. Emotional Data Analysis and Response
[0433] The emotional engine's analysis results can be used to tailor the information delivery method and content. For example, if a user is feeling stressed, the system will provide detailed explanations and an easy-to-use interface. If the user is feeling excited, the system will emphasize promotional information to encourage immediate purchases.
[0434] 7. Providing the lowest price information
[0435] The server sends the lowest price product information to the terminal and provides it to the user, who then displays this information on the screen.
[0436] 8. Analytics to inform you of the best time to purchase
[0437] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if it determines that the price of a particular product tends to drop every year on Black Friday in November, it will send a notification to the user saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[0438] Specific examples
[0439] As a concrete example, if a user wants to purchase a laptop, they can say to the vehicle's infotainment system, "I'm looking for a laptop and I want to know the lowest price." The system converts the voice into text and collects product information. For example, if online sales site A is selling a product for 60,000 yen, online sales site B is selling a product for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user of the lowest price of 56,000 yen. The emotion engine analyzes the user's emotional data and displays additional information or support messages if the user is feeling unsure. The system notifies the user that "the price may drop in June," supporting more efficient purchasing.
[0440] Example prompts for generative AI models
[0441] "How can you help passengers who want to buy a smartphone at the lowest possible price? For example, how can you respond if a passenger feels uneasy?"
[0442] This allows users to purchase the cheapest products while receiving optimal emotional support, providing a comfortable shopping experience.
[0443] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0444] Step 1:
[0445] Users input keywords for products they wish to purchase into the vehicle's infotainment system by voice. This voice data is converted into text using the Google Speech-to-Text API. The input is the user's voice command, and the output is the search keyword converted into text. Specifically, the microphone captures the voice, and the API analyzes and converts it into text.
[0446] Step 2:
[0447] The terminal sends search keywords converted to text to the server. The server collects product information from multiple online sales sites registered by the user. A scraping library (BeautifulSoup) and an API client (requests) are used for collection. The input is the search keywords converted to text, and the output is a list of collected product information. Specifically, the server accesses each sales site and retrieves product information.
[0448] Step 3:
[0449] The server analyzes the collected product information based on price, coupon, and campaign information to select the cheapest product. The input is the collected product information, and the output is the lowest-priced product information. Specifically, the server compares price data and applies coupon and discount information to identify the lowest-priced option.
[0450] Step 4:
[0451] The emotion engine recognizes and analyzes the user's emotions using data acquired from the vehicle's cameras and microphones. It analyzes the emotion data using the Microsoft Azure Face API. The input is the user's image and voice data, and the output is analyzed emotion information. Specifically, the camera and microphone capture data, which is then analyzed by the API.
[0452] Step 5:
[0453] Based on the analysis results of the emotion engine, the server adjusts the method and content of information provision. For example, if the user is feeling stressed, the system will provide a detailed explanation and an easy-to-use interface. The input is the analyzed emotion information, and the output is the adjusted information content. Specifically, the server customizes the information provided based on the emotion data.
[0454] Step 6:
[0455] The server sends the cheapest product information and the adjusted information content to the terminal, and the terminal displays this information on the screen. The input is the cheapest product information and the adjusted information content, and the output is the information displayed on the terminal screen. In concrete terms, the terminal visually presents the information to the user.
[0456] Step 7:
[0457] The server analyzes past price data and campaign information to calculate the optimal time to purchase a product at the lowest price. The input is past price data and campaign information, and the output is the optimal time to purchase. Specifically, the server uses a data analysis algorithm to predict the optimal time to purchase.
[0458] Step 8:
[0459] The server notifies the user of the optimal time to purchase based on the analysis results. The input is information about the optimal time to purchase, and the output is a notification to the user. Specifically, it sends a notification message to the terminal to inform the user of the optimal time to purchase.
[0460] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0461] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0462] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0463] [Second embodiment]
[0464] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0465] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0466] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0467] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0468] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0469] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0470] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0471] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0472] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0473] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0474] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0475] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0476] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0477] 1. System Configuration
[0478] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0479] Management of registered user information
[0480] Collecting product information
[0481] Compare prices, coupons and promotions
[0482] Providing information on the lowest priced products
[0483] Analysis of past data and notification of optimal purchase times
[0484] 2. Processing user registration
[0485] First, the user logs in to the system through their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database.
[0486] 3. Product search and information gathering
[0487] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product.
[0488] 4. Price comparison and lowest price calculation
[0489] The server compares the collected information and calculates the cheapest price for the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen.
[0490] 5. Providing the lowest price information
[0491] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0492] 6. Analytics to inform you of the best time to purchase
[0493] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop during the annual November sale, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0494] Specific examples
[0495] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0496] This system allows users to purchase products at the best price without having to go through the trouble of comparing prices on multiple online sales sites. It also notifies users of the best time to purchase, allowing for more efficient shopping.
[0497] The processing flow will be explained below.
[0498] Step 1:
[0499] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[0500] Step 2:
[0501] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[0502] Step 3:
[0503] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[0504] Step 4:
[0505] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[0506] Step 5:
[0507] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[0508] Step 6:
[0509] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[0510] Step 7:
[0511] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[0512] Step 8:
[0513] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0514] Step 9:
[0515] The server analyzes past price data and campaign information to calculate the best time to purchase a product. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[0516] Step 10:
[0517] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[0518] ---
[0519] By following the above steps, users can use the system to efficiently find the cheapest products and make purchases at the right time.
[0520] Example 1
[0521] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0522] When shopping online, it is time-consuming and labor-intensive for users to compare multiple sales sites one by one to find the cheapest product. It is also difficult for users to analyze past price data and campaign information to determine the best time to purchase. There is a need for a system that can reduce this burden on users and help them purchase the cheapest products more efficiently.
[0523] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0524] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for searching for products based on keywords specified by the user and obtaining product information from online sales sites using scraping technology, and means for transmitting the lowest price information to a terminal and displaying it on the user's screen.This allows users to easily compare multiple online sales sites, purchase products at the best price, and also determine the optimal purchase time.
[0525] "User registered information" refers to personal information and preferences provided by users when logging into the system, as well as information about the online retail sites they use.
[0526] "Target products" are specific products that users wish to purchase, and are collected from online sales sites based on search keywords.
[0527] "Multiple Online Sales Sites" means collectively multiple e-commerce platforms or websites registered or designated by a User.
[0528] "Price" refers to the selling price of the product, which is the amount displayed on the online sales site.
[0529] A "coupon" is a code or information that applies a specific discount and is used when purchasing products on an online sales site.
[0530] "Campaign information" is detailed information about promotions and discount events being held for products and services.
[0531] The "cheapest item" is the lowest priced item calculated using the collected prices, coupons, and promotions information.
[0532] "Past price data" is information about the past selling prices of a particular product, and is data recorded in chronological order.
[0533] The "optimal time to purchase" refers to the period during which a product is most likely to be purchased at the lowest price, determined by analyzing past price data and campaign information.
[0534] "Scraping" is a technique for automatically extracting information from websites, and is a method used by systems to collect information about target products.
[0535] A "terminal" is a device such as a computer, smartphone, or tablet that a user uses to access and operate the system.
[0536] A "screen display" is a means of visually presenting information to a user on a terminal, such as through a web page or application interface.
[0537] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0538] 1. System Configuration
[0539] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0540] Management of registered user information
[0541] Collecting product information
[0542] Compare prices, coupons and promotions
[0543] Providing information on the lowest priced products
[0544] Analysis of past data and notification of optimal purchase times
[0545] 2. Processing user registration
[0546] First, the user logs in to the system via their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database. This database uses a relational database system such as MySQL.
[0547] 3. Product search and information gathering
[0548] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product. The server collects the information using a scraping tool (e.g., BeautifulSoup, Selenium).
[0549] 4. Price comparison and lowest price calculation
[0550] The server compares the collected information and calculates the cheapest price of the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen. The price comparison uses an algorithm in the script (e.g., a function to find the minimum value).
[0551] 5. Providing the lowest price information
[0552] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it might display "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B." The terminal has an interface for visually presenting information to the user.
[0553] 6. Analytics to inform you of the best time to purchase
[0554] The server then analyzes past price data and campaign information to calculate the best time to purchase the product at the lowest price. This analysis is performed using data analysis software (e.g., Python's Pandas and NumPy). For example, if the price of a particular product tends to drop every year during the November sales, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Using this information, the user can purchase the product at the best possible time.
[0555] Specific examples
[0556] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0557] Prompt Sentence Examples
[0558] "If a user wants to buy a laptop, they should check the best deals on laptops and the best time to buy."
[0559] By using this system, users can avoid the hassle of comparing prices across multiple online retailers and can purchase products at the best prices.The system also notifies users of the best time to purchase, allowing for more efficient shopping.
[0560] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0561] Step 1: User Registration and Login
[0562] A user accesses the system using a terminal and enters the required information (e.g., email address, password) into a new registration form or login form. The input data is the user's personal information and authentication information for logging into the system.
[0563] The terminal sends the user's input information to the server as an HTTP request (e.g., POST request), which is the specific data that transmits the user's information.
[0564] The server stores the received user information in a database management system (e.g., MySQL), which is then used for subsequent logins and product searches. The server processes the stored data as authentication information, generates a message indicating successful registration or login, and outputs it to the terminal.
[0565] Specific operation: When a user fills out a form in the browser and presses the submit button, the server verifies the user information and saves it in the database. The server returns the results to the terminal, and the terminal displays a message on the screen indicating successful registration or login.
[0566] Step 2: Perform a product search
[0567] The user enters the keyword for the product they are looking for (e.g., "smartphone") on their device and clicks the search button. The search keyword is the input data used to obtain product information.
[0568] The terminal sends the entered search keywords to the server as an HTTP request.
[0569] Specific operation: When a user enters "smartphone" in the search field and clicks the search button, the keyword is sent to the server. After sending, the device enters standby mode.
[0570] Step 3: Collect your product data
[0571] The server collects product information from registered online sales sites based on the received search keywords, including price, coupon, and campaign information.
[0572] The server uses a scraping tool (e.g., BeautifulSoup, Selenium) to access each online sales site and obtain data on the relevant products. The obtained data is stored in memory as collected information and temporarily saved.
[0573] Specific operation: The server automatically accesses online sales sites A and B, scrapes product information, obtains prices, coupons, and campaign information, and temporarily stores it in memory.
[0574] Step 4: Compare prices and find the best deal
[0575] The server uses the price, coupon, and campaign information collected through scraping to calculate the lowest price using an algorithm, which is a function that finds the minimum value.
[0576] The server calculates the price after applying the coupon from the prices on each site and identifies the cheapest price. The calculation result becomes the output data.
[0577] Specific operation: The server executes a calculation script, and if the price on site A is 50,000 yen, the price on site B is 48,000 yen, and a 1,000 yen coupon is applicable on site B, the final price is calculated to be 47,000 yen.
[0578] Step 5: Providing the best price information
[0579] The server then sends the calculated lowest price information to the terminal as data, including the product name, lowest price, and applicable coupon information.
[0580] The terminal receives the lowest price information and displays it to the user in a visually easy-to-understand manner.
[0581] Specific operation: The server sends the information "A smartphone is priced at 47,000 yen (with a 1,000 yen coupon applied) on online sales site B" to the terminal, which then displays it on the screen.
[0582] Step 6: Analyze and notify optimal purchase time
[0583] The server analyzes the best time to purchase based on past price data and campaign information, using data analysis tools (e.g., Python's Pandas and NumPy).
[0584] The server then sends a notification to the user based on the analysis results, including the recommended time to purchase and the reason for the purchase.
[0585] Specific operation: The server analyzes data and determines from past price fluctuation patterns that "there is a high possibility that the price will fall in June," and notifies the user that "the price may fall in June." The user can use this information to efficiently determine the best time to purchase.
[0586] (Application example 1)
[0587] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0588] Conventional price comparison systems have limitations in efficiently providing users with the lowest prices and best times to purchase. In particular, it has been difficult to compare prices in real time or quickly provide products and discount coupons that catch users' attention. Furthermore, notifications of the best time to purchase based on past data are often inappropriate, preventing users from achieving satisfactory results.
[0589] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0590] In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on prices, discount coupons, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal time to purchase, means for notifying the user of the results of the analysis, and means for collecting information on products and discount coupons that interest the user in real time and visually displaying the comparison information. This enables real-time price comparisons and the application of discount coupons, as well as notification of the optimal time to purchase to the user.
[0591] "User registration information" refers to information including personal information, usage history, preferences, etc. of users registered in the system.
[0592] An "online sales site" is a website that sells goods or services over the Internet.
[0593] "Target product information" refers to information such as price, stock status, and ratings about the product specified by the user.
[0594] "Price comparison" is the act of comparing product prices collected from multiple online sales sites to find the cheapest price.
[0595] A "discount coupon" is a promotion that provides a partial discount on the price if certain conditions are met at the time of purchase.
[0596] "Campaign information" refers to information about sales promotion activities such as discounts and special offers that are carried out within a specific period of time.
[0597] "Real-time collection" refers to the process of capturing and updating data instantly.
[0598] "Visual display" refers to a method of displaying collected data and information to users in an intuitive and easy-to-understand manner.
[0599] The "optimal time to purchase" refers to the optimal time to purchase when the price is expected to be lowest.
[0600] "Notification" is the act of the system informing the user of information.
[0601] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0602] 1. System Configuration
[0603] This system mainly uses a server and user terminals to achieve the following functions:
[0604] Managing and storing user registration information
[0605] Collect information on target products from multiple online sales sites
[0606] Comparison based on collected information on prices, discount coupons, and campaign information
[0607] Providing information on the cheapest products
[0608] Analysis of past data and notification of optimal purchase times
[0609] Real-time collection and visual display of product information and discount coupons that interest users
[0610] 2. Hardware and Software
[0611] The server includes hardware and software for collecting, storing, analyzing, and notifying data. Specifically, it uses a relational database management system (RDBMS) to manage user registration information and price data.
[0612] The user device is assumed to be a smartphone, and the application will be developed using a programming language such as Python. In addition, the following software will be used:
[0613] requests: Data collection from online retailers
[0614] BeautifulSoup: HTML parsing and analysis
[0615] pandas: Data manipulation and analysis
[0616] 3. Data processing or data calculation
[0617] The server searches online sales sites for the product specified by the user, collects information about the product (price, discounts, campaign information), and then performs the following specific data calculations:
[0618] Apply discounts and coupons to each product price to find the cheapest price
[0619] Analyze collected historical price data to identify the best time to purchase
[0620] Notify users of the lowest prices and the best time to purchase
[0621] 4. Specific Examples
[0622] When a user wants to purchase a "laptop computer," the following operations are performed. The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A offers a price of 60,000 yen and site B offers a price of 58,000 yen, and B also has a 2,000 yen discount coupon, the final price on site B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, and the user can purchase the cheapest laptop computer.
[0623] The server also analyzes past price data, and if it determines that laptop prices tend to drop in June, it will notify the user that "prices may drop in June" and suggest a better time to purchase.
[0624] Prompt Sentence Examples
[0625] Specific examples of prompt sentences are shown below.
[0626] user_id = 'user_001'
[0627] favorite_sites = ['https: / / example.com', 'https: / / anothersite.com']
[0628] product_name = 'iPhone 13'
[0629] app = SaiyasuMaster()
[0630] app.register_user(user_id, favorite_sites)
[0631] notification = app.notify_user(user_id, product_name)
[0632] print(notification)
[0633] In this way, users can use the system to compare prices in real time and find the best price and the best time to buy.
[0634] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0635] Step 1: Managing user registration information
[0636] When a user logs in to the system, the terminal inputs user registration information, which is sent to the server and stored in a database, including the user ID, favorite online shopping sites, etc.
[0637] Input: User ID, Favorite Online Shopping Site
[0638] Data processing: None
[0639] Output: Save information to a database
[0640] Step 2: Submit a product search request
[0641] The user enters a search keyword (e.g., "iPhone 13") on their device and sends a product search request to the server.
[0642] Input: Search keyword
[0643] Data processing: None
[0644] Output: Search request to the server
[0645] Step 3: Collect product information
[0646] The server collects product information (price, coupons, campaign information, etc.) from multiple online sales sites based on search keywords specified by the user. In this process, it sends HTTP requests to each site using the requests library and parses the HTML data using BeautifulSoup.
[0647] Input: Search keywords, online sales site URL
[0648] Data processing: HTML analysis
[0649] Output: Collected product information (price, coupons, campaigns)
[0650] Step 4: Compare prices and discounts
[0651] The server compares the collected product information and calculates the lowest price by applying coupons and campaign information to the prices. Specifically, it calculates the value by subtracting the discount amount from the base price of each product.
[0652] Input: Collected product information (price, coupons, campaigns)
[0653] Data processing: Price calculation
[0654] Output: Cheapest product information
[0655] Step 5: Provide information on the cheapest products
[0656] The server then sends the calculated lowest price information to the terminal and provides it to the user, along with detailed information including links and the final price.
[0657] Input: Lowest price product information
[0658] Data processing: None
[0659] Output: Send the lowest price information to the terminal
[0660] Step 6: Analyze historical data
[0661] The server analyzes historical price data and campaign information to analyze patterns of product price fluctuations. It uses the pandas library to analyze the data and identify the best time to purchase.
[0662] Input: Historical price data, campaign information
[0663] Data processing: data analysis, pattern recognition
[0664] Output: Information on the best time to purchase
[0665] Step 7: Notification of optimal purchase time
[0666] The server then notifies the user of the best time to purchase based on the analysis results, and details such as specific months and sale periods are sent to the user's device.
[0667] Input: Best time to purchase information
[0668] Data processing: None
[0669] Output: Notification of optimal purchase time to device
[0670] Through these steps, users can purchase the cheapest products efficiently in real time. Furthermore, by knowing the best time to purchase based on past data, they can make even more efficient purchases.
[0671] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0672] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[0673] 1. System Configuration
[0674] This system is primarily composed of a server, a terminal, and an emotion engine. The server manages and analyzes user registration information and product information. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience.
[0675] 2. Processing user registration
[0676] Users log in to the system using their terminals and register the online sales sites they frequently use. For example, a user can register "online sales site A" and "online sales site B." The server stores this information in a database.
[0677] 3. Operation of the Emotion Engine
[0678] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[0679] 4. Product search and information gathering
[0680] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[0681] 5. Price comparison and lowest price calculation
[0682] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[0683] 6. Emotional Data Analysis and Response
[0684] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[0685] 7. Providing the lowest price information
[0686] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0687] 8. Analytics to inform you of the best time to purchase
[0688] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0689] Specific examples
[0690] As a specific example, consider a user wanting to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000 and site B offers a ¥58,000 discount coupon, the final price for site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0691] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[0692] The processing flow will be explained below.
[0693] Step 1:
[0694] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[0695] Step 2:
[0696] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[0697] Step 3:
[0698] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[0699] Step 4:
[0700] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[0701] Step 5:
[0702] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[0703] Step 6:
[0704] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[0705] Step 7:
[0706] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[0707] Step 8:
[0708] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0709] Step 9:
[0710] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize the user's emotions. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for and comparing products.
[0711] Step 10:
[0712] The emotion engine analyzes the user's emotional data and adjusts the information delivery method and content based on their emotional state. For example, if a user feels stressed while searching, the system will provide additional support information and refer the user to a link.
[0713] Step 11:
[0714] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[0715] Step 12:
[0716] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[0717] ---
[0718] Through these steps, users can use the system to efficiently find the cheapest products, make purchases at the right time, and receive emotional support.
[0719] Example 2
[0720] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0721] In recent years, online sales via the Internet have become widespread, allowing users to purchase products from a variety of online sales sites. However, collecting information from multiple sales sites and comparing prices, coupon information, and campaign information takes time and effort for users. In addition, the user's purchasing experience is not optimized because the purchasing process is not handled with consideration for user emotions.
[0722] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0723] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the results of the analysis, means for recognizing and analyzing the user's emotions, and means for adjusting the information provision method and content based on the analyzed emotion data. This allows the user to purchase products at the best price without having to go through the trouble of comparing multiple sales sites and receive support that is sensitive to their emotions.
[0724] "Means for storing user-registered information" refers to the means for storing and managing information registered by users in a database or other storage device.
[0725] "Means for collecting information about target products from multiple online sales sites" refers to programs or applications that collect information about products that users wish to purchase from multiple online sales platforms.
[0726] "Means of comparing collected information based on price, coupon, and campaign information" refers to algorithms or software that analyzes and compares collected product price information, available coupons, and ongoing campaign information.
[0727] "Means for providing users with information about the cheapest products" refers to the interface and notification functions for identifying the cheapest products from the comparison results and presenting that information to users.
[0728] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" refers to analytical tools and algorithms that analyze past price fluctuation data and campaign history to predict when a particular product will be cheapest.
[0729] "Means for notifying the user of the analysis results" refers to a notification system or feedback function for informing the user of the analysis results.
[0730] "Means for recognizing and analyzing user emotions" refers to engines and algorithms that analyze a user's facial expressions and tone of voice based on real-time data collected by sensor devices such as cameras and microphones, and identify their emotions.
[0731] "Means for adjusting the method and content of information provision based on analyzed emotional data" refers to software functions that dynamically change the information displayed and the interface presented according to the user's emotional state.
[0732] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[0733] System Configuration
[0734] This system mainly consists of a server, a terminal, and an emotion engine. The server manages user registration information and product information and performs data analysis. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience. The hardware used includes a camera and microphone, and the software used includes an emotion recognition algorithm.
[0735] Processing user registration
[0736] Users log in to the system using their terminals and register the online sales sites they frequently use. Specifically, the user registers "online sales site A" and "online sales site B." The server stores this information in a database.
[0737] Emotion Engine Operation
[0738] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[0739] Product search and information gathering
[0740] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[0741] Price comparison and lowest price calculation
[0742] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[0743] Emotional data analysis and response
[0744] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[0745] Providing the lowest price information
[0746] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it displays "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B."
[0747] Analysis to inform optimal purchase timing
[0748] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0749] Specific examples
[0750] Example prompt:
[0751] "I want to buy a laptop. Can you tell me the cheapest price?"
[0752] Processing example:
[0753] Consider a scenario where a user wants to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000, site B offers a ¥58,000 discount coupon, and site B offers a ¥2,000 discount coupon, the final price on site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0754] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[0755] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0756] Step 1: User login and registration
[0757] 1. The user accesses the system using a terminal and opens the login screen.
[0758] 2. The terminal prompts the user to enter login information (username, password).
[0759] Input: Username, Password
[0760] 3. The user enters their login information and presses the "Login" button.
[0761] 4. The device sends this login information to the server.
[0762] Output: Authentication request sent to the server
[0763] 5. The server compares the received login information with its database and performs authentication.
[0764] Input: Login information
[0765] Data processing and calculation: Database matching
[0766] Output: Authentication result
[0767] 6. If authentication is successful, the user will proceed to a screen where they can register their favorite online shopping sites.
[0768] 7. The user registers online sales sites A and B.
[0769] 8. The server stores this information in a database.
[0770] Input: Registration site information
[0771] Data processing and calculation: Database storage
[0772] Output: Saved
[0773] Step 2: Emotion Engine in Action
[0774] 1. The camera and microphone installed on the user's device capture the user's facial expressions and voice.
[0775] Input: User's facial expression, voice
[0776] 2. The device formats the captured data for analysis.
[0777] Data processing and calculation: Data format
[0778] Output: Formatted emotion data
[0779] 3. The emotion engine receives the formatted data and parses it using algorithms that recognize the user's emotions.
[0780] Input: Formatted emotion data
[0781] Data processing and calculation: Sentiment analysis
[0782] Output: Emotional state data
[0783] 4. Based on the analysis results, determine the user's current emotional state.
[0784] Input: Emotional state data
[0785] Data processing and calculation: Emotional judgment
[0786] Output: Emotional state determination result
[0787] 5. The server adjusts the interface and information presentation method based on the emotion data.
[0788] Input: Emotional state determination result
[0789] Data processing and calculation: Interface adjustment
[0790] Output: Adjusted interface
[0791] Step 3: Product search and information gathering
[0792] 1. The user enters the keyword for the product they want to purchase (e.g., "smartphone") into the search bar on their device.
[0793] Input: Search keyword
[0794] 2. The device sends the search keywords to the server.
[0795] Output: The search request sent to the server
[0796] 3. The server sends a request to all online sales sites where the user has registered to collect information about the specified product.
[0797] Input: Search keyword
[0798] Output: Information collection request to online retailer
[0799] 4. Each online site returns product prices, coupons, campaign information, etc. to the server.
[0800] Output: Product information data
[0801] 5. The server compiles the returned information and stores it in a database.
[0802] Input: Product information data
[0803] Data processing and calculation: Database storage
[0804] Output: Saved
[0805] Step 4: Compare prices and find the best deal
[0806] 1. The server analyzes the collected product list.
[0807] Input: Product list data
[0808] Data processing and calculation: Data analysis
[0809] Output: Analysis result list
[0810] 2. Extract price information for each product, whether or not there is a coupon, and campaign information, and summarize it in a table format.
[0811] Input: Analysis result list
[0812] Data processing and calculation: Tabular data generation
[0813] Output: Price comparison data
[0814] 3. For example, the price of a smartphone is 50,000 yen on online sales site A and 48,000 yen on online sales site B.
[0815] Input: Price comparison data
[0816] Output: Price information for each site
[0817] 4. The server applies coupons and campaign information to calculate the actual payment amount.
[0818] Input: Price comparison data, coupon information
[0819] Data processing and calculation: Payment amount calculation
[0820] Output: Final payment amount data
[0821] 5. For example, a 1,000 yen discount coupon is applied to an item priced at 48,000 yen on online sales site B, bringing the final price to 47,000 yen.
[0822] Input: Final payment amount data
[0823] Output: Price information after applying coupon
[0824] 6. The server selects the cheapest product based on the analysis results.
[0825] Input: Price information after applying coupon
[0826] Data processing and calculation: Lowest price selection
[0827] Output: Information about the cheapest product
[0828] Step 5: Providing the best price information
[0829] 1. The server sends the lowest price product information to the terminal and provides it to the user.
[0830] Input: Information about the cheapest product
[0831] Output: The lowest price information sent to the terminal
[0832] 2. The user's device displays this information on the screen.
[0833] Input: Lowest price information sent to the terminal
[0834] Output: The lowest price displayed on the screen
[0835] Step 6: Analytics informs optimal purchase times
[0836] 1. The server analyzes historical price data and campaign information.
[0837] Input: Historical price data, campaign information
[0838] Data processing and calculation: Data analysis
[0839] Output: Optimal purchase timing prediction
[0840] 2. If the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[0841] Input: Optimal purchase time prediction
[0842] Output: Notification information for the user
[0843] 3. The terminal displays this notification to the user.
[0844] Input: Notification information for the user
[0845] Output: Notification information displayed on the screen
[0846] (Application example 2)
[0847] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0848] Traditional online shopping requires users to manually search multiple sales sites to find the lowest price, which is time-consuming and distracting, especially when used in autonomous vehicles. Furthermore, existing price comparison systems often fail to provide information that takes into account users' emotions, resulting in a poor purchasing experience. Furthermore, they lack notifications for optimizing purchase timing, making it difficult for users to purchase products at the most advantageous times.
[0849] The identification processing by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for recognizing and analyzing the user's emotions, and means for adjusting the method and content of information provision based on the emotion analysis results. This allows the user to purchase products at the cheapest price and provides information that takes emotions into consideration, improving the purchasing experience and enabling comfortable shopping without losing the user's attention in an autonomous vehicle.
[0850] "Means for storing user-registered information" refers to a function for properly storing and managing personal information and purchase history that users have registered in the system.
[0851] The "means for collecting information about the target product from multiple online sales sites" is a function for automatically collecting data about the product from various sales sites on the Internet.
[0852] "Means of comparing collected information based on price, coupon, and campaign information" refers to a function for comparing and analyzing acquired product information based on price, coupons, and campaign details being implemented on each site.
[0853] "Means for providing users with information on the cheapest products" is a function for presenting users with information on the lowest priced products obtained as a result of comparison and analysis.
[0854] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" is a function that analyzes past price fluctuations and campaign implementation status to predict the best time to purchase a product.
[0855] The "means for notifying the user of the analysis results" is a function for communicating to the user the optimal time to purchase and other important information obtained through the analysis.
[0856] "Means for recognizing and analyzing the user's emotions" refers to a function for recognizing the user's facial expressions and tone of voice and analyzing their emotional state based on that.
[0857] The "means for adjusting the method and content of information provision based on the emotion analysis results" is a function for providing product information in the most optimal way or displaying support messages depending on the user's emotional state.
[0858] This invention relates to a system for improving the user's shopping experience in an autonomous vehicle. This system is mainly composed of a server, a terminal, and an emotion engine, and helps users find the cheapest products from multiple online sales sites, analyzes the user's emotions, and provides appropriate information at the optimal time.
[0859] 1. System Configuration
[0860] The system consists of the following main components:
[0861] Server: Manages and analyzes user registration information and product information.
[0862] Terminal: The infotainment system in an autonomous vehicle that provides the user interface.
[0863] Emotion engine: Recognizes and analyzes emotions from the user's facial expressions, tone of voice, etc.
[0864] 2. Processing user registration
[0865] Users log in to the system using their vehicle's infotainment system and register their favorite online shopping sites, and the server stores this information in a database.
[0866] 3. Operation of the Emotion Engine
[0867] The emotion engine uses cameras and microphones installed in the vehicle to capture the user's facial expressions and tone of voice, then analyzes the data and uses the Microsoft Azure Face API to analyze the user's emotional state (stress, excitement, relief, etc.) in real time.
[0868] 4. Product search and information gathering
[0869] Users enter search keywords for the product they want to purchase by voice, and the voice data is converted to text using the Google Speech-to-Text API. The device then sends this search request to a server, which then collects product information from all registered online sales sites. Information collection is done using a scraping library (BeautifulSoup) and an API client (requests).
[0870] 5. Price comparison and lowest price calculation
[0871] The server analyzes the collected list of products and selects the cheapest product based on price information, whether or not there are coupons, and campaign information.
[0872] 6. Emotional Data Analysis and Response
[0873] The emotional engine's analysis results can be used to tailor the information delivery method and content. For example, if a user is feeling stressed, the system will provide detailed explanations and an easy-to-use interface. If the user is feeling excited, the system will emphasize promotional information to encourage immediate purchases.
[0874] 7. Providing the lowest price information
[0875] The server sends the lowest price product information to the terminal and provides it to the user, who then displays this information on the screen.
[0876] 8. Analytics to inform you of the best time to purchase
[0877] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if it determines that the price of a particular product tends to drop every year on Black Friday in November, it will send a notification to the user saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[0878] Specific examples
[0879] As a concrete example, if a user wants to purchase a laptop, they can say to the vehicle's infotainment system, "I'm looking for a laptop and I want to know the lowest price." The system converts the voice into text and collects product information. For example, if online sales site A is selling a product for 60,000 yen, online sales site B is selling a product for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user of the lowest price of 56,000 yen. The emotion engine analyzes the user's emotional data and displays additional information or support messages if the user is feeling unsure. The system notifies the user that "the price may drop in June," supporting more efficient purchasing.
[0880] Example prompts for generative AI models
[0881] "How can you help passengers who want to buy a smartphone at the lowest possible price? For example, how can you respond if a passenger feels uneasy?"
[0882] This allows users to purchase the cheapest products while receiving optimal emotional support, providing a comfortable shopping experience.
[0883] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0884] Step 1:
[0885] Users input keywords for products they wish to purchase into the vehicle's infotainment system by voice. This voice data is converted into text using the Google Speech-to-Text API. The input is the user's voice command, and the output is the search keyword converted into text. Specifically, the microphone captures the voice, and the API analyzes and converts it into text.
[0886] Step 2:
[0887] The terminal sends search keywords converted to text to the server. The server collects product information from multiple online sales sites registered by the user. A scraping library (BeautifulSoup) and an API client (requests) are used for collection. The input is the search keywords converted to text, and the output is a list of collected product information. Specifically, the server accesses each sales site and retrieves product information.
[0888] Step 3:
[0889] The server analyzes the collected product information based on price, coupon, and campaign information to select the cheapest product. The input is the collected product information, and the output is the lowest-priced product information. Specifically, the server compares price data and applies coupon and discount information to identify the lowest-priced option.
[0890] Step 4:
[0891] The emotion engine recognizes and analyzes the user's emotions using data acquired from the vehicle's cameras and microphones. It analyzes the emotion data using the Microsoft Azure Face API. The input is the user's image and voice data, and the output is analyzed emotion information. Specifically, the camera and microphone capture data, which is then analyzed by the API.
[0892] Step 5:
[0893] Based on the analysis results of the emotion engine, the server adjusts the method and content of information provision. For example, if the user is feeling stressed, the system will provide a detailed explanation and an easy-to-use interface. The input is the analyzed emotion information, and the output is the adjusted information content. Specifically, the server customizes the information provided based on the emotion data.
[0894] Step 6:
[0895] The server sends the cheapest product information and the adjusted information content to the terminal, and the terminal displays this information on the screen. The input is the cheapest product information and the adjusted information content, and the output is the information displayed on the terminal screen. In concrete terms, the terminal visually presents the information to the user.
[0896] Step 7:
[0897] The server analyzes past price data and campaign information to calculate the optimal time to purchase a product at the lowest price. The input is past price data and campaign information, and the output is the optimal time to purchase. Specifically, the server uses a data analysis algorithm to predict the optimal time to purchase.
[0898] Step 8:
[0899] The server notifies the user of the optimal time to purchase based on the analysis results. The input is information about the optimal time to purchase, and the output is a notification to the user. Specifically, it sends a notification message to the terminal to inform the user of the optimal time to purchase.
[0900] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0901] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0902] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0903] [Third embodiment]
[0904] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0905] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0906] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0907] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0908] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0909] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0910] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0911] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0912] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0913] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0914] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0915] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0916] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0917] 1. System Configuration
[0918] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0919] Management of registered user information
[0920] Collecting product information
[0921] Compare prices, coupons and promotions
[0922] Providing information on the lowest priced products
[0923] Analysis of past data and notification of optimal purchase times
[0924] 2. Processing user registration
[0925] First, the user logs in to the system through their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database.
[0926] 3. Product search and information gathering
[0927] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product.
[0928] 4. Price comparison and lowest price calculation
[0929] The server compares the collected information and calculates the cheapest price for the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen.
[0930] 5. Providing the lowest price information
[0931] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0932] 6. Analytics to inform you of the best time to purchase
[0933] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop during the annual November sale, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[0934] Specific examples
[0935] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0936] This system allows users to purchase products at the best price without having to go through the trouble of comparing prices on multiple online sales sites. It also notifies users of the best time to purchase, allowing for more efficient shopping.
[0937] The processing flow will be explained below.
[0938] Step 1:
[0939] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[0940] Step 2:
[0941] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[0942] Step 3:
[0943] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[0944] Step 4:
[0945] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[0946] Step 5:
[0947] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[0948] Step 6:
[0949] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[0950] Step 7:
[0951] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[0952] Step 8:
[0953] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[0954] Step 9:
[0955] The server analyzes past price data and campaign information to calculate the best time to purchase a product. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[0956] Step 10:
[0957] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[0958] ---
[0959] By following the above steps, users can use the system to efficiently find the cheapest products and make purchases at the right time.
[0960] Example 1
[0961] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0962] When shopping online, it is time-consuming and labor-intensive for users to compare multiple sales sites one by one to find the cheapest product. It is also difficult for users to analyze past price data and campaign information to determine the best time to purchase. There is a need for a system that can reduce this burden on users and help them purchase the cheapest products more efficiently.
[0963] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0964] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for searching for products based on keywords specified by the user and obtaining product information from online sales sites using scraping technology, and means for transmitting the lowest price information to a terminal and displaying it on the user's screen.This allows users to easily compare multiple online sales sites, purchase products at the best price, and also determine the optimal purchase time.
[0965] "User registered information" refers to personal information and preferences provided by users when logging into the system, as well as information about the online retail sites they use.
[0966] "Target products" are specific products that users wish to purchase, and are collected from online sales sites based on search keywords.
[0967] "Multiple Online Sales Sites" means collectively multiple e-commerce platforms or websites registered or designated by a User.
[0968] "Price" refers to the selling price of the product, which is the amount displayed on the online sales site.
[0969] A "coupon" is a code or information that applies a specific discount and is used when purchasing products on an online sales site.
[0970] "Campaign information" is detailed information about promotions and discount events being held for products and services.
[0971] The "cheapest item" is the lowest priced item calculated using the collected prices, coupons, and promotions information.
[0972] "Past price data" is information about the past selling prices of a particular product, and is data recorded in chronological order.
[0973] The "optimal time to purchase" refers to the period during which a product is most likely to be purchased at the lowest price, determined by analyzing past price data and campaign information.
[0974] "Scraping" is a technique for automatically extracting information from websites, and is a method used by systems to collect information about target products.
[0975] A "terminal" is a device such as a computer, smartphone, or tablet that a user uses to access and operate the system.
[0976] A "screen display" is a means of visually presenting information to a user on a terminal, such as through a web page or application interface.
[0977] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[0978] 1. System Configuration
[0979] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[0980] Management of registered user information
[0981] Collecting product information
[0982] Compare prices, coupons and promotions
[0983] Providing information on the lowest priced products
[0984] Analysis of past data and notification of optimal purchase times
[0985] 2. Processing user registration
[0986] First, the user logs in to the system via their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database. This database uses a relational database system such as MySQL.
[0987] 3. Product search and information gathering
[0988] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product. The server collects the information using a scraping tool (e.g., BeautifulSoup, Selenium).
[0989] 4. Price comparison and lowest price calculation
[0990] The server compares the collected information and calculates the cheapest price of the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen. The price comparison uses an algorithm in the script (e.g., a function to find the minimum value).
[0991] 5. Providing the lowest price information
[0992] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it might display "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B." The terminal has an interface for visually presenting information to the user.
[0993] 6. Analytics to inform you of the best time to purchase
[0994] The server then analyzes past price data and campaign information to calculate the best time to purchase the product at the lowest price. This analysis is performed using data analysis software (e.g., Python's Pandas and NumPy). For example, if the price of a particular product tends to drop every year during the November sales, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Using this information, the user can purchase the product at the best possible time.
[0995] Specific examples
[0996] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[0997] Prompt Sentence Examples
[0998] "If a user wants to buy a laptop, they should check the best deals on laptops and the best time to buy."
[0999] By using this system, users can avoid the hassle of comparing prices across multiple online retailers and can purchase products at the best prices.The system also notifies users of the best time to purchase, allowing for more efficient shopping.
[1000] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1001] Step 1: User Registration and Login
[1002] A user accesses the system using a terminal and enters the required information (e.g., email address, password) into a new registration form or login form. The input data is the user's personal information and authentication information for logging into the system.
[1003] The terminal sends the user's input information to the server as an HTTP request (e.g., POST request), which is the specific data that transmits the user's information.
[1004] The server stores the received user information in a database management system (e.g., MySQL), which is then used for subsequent logins and product searches. The server processes the stored data as authentication information, generates a message indicating successful registration or login, and outputs it to the terminal.
[1005] Specific operation: When a user fills out a form in the browser and presses the submit button, the server verifies the user information and saves it in the database. The server returns the results to the terminal, and the terminal displays a message on the screen indicating successful registration or login.
[1006] Step 2: Perform a product search
[1007] The user enters the keyword for the product they are looking for (e.g., "smartphone") on their device and clicks the search button. The search keyword is the input data used to obtain product information.
[1008] The terminal sends the entered search keywords to the server as an HTTP request.
[1009] Specific operation: When a user enters "smartphone" in the search field and clicks the search button, the keyword is sent to the server. After sending, the device enters standby mode.
[1010] Step 3: Collect your product data
[1011] The server collects product information from registered online sales sites based on the received search keywords, including price, coupon, and campaign information.
[1012] The server uses a scraping tool (e.g., BeautifulSoup, Selenium) to access each online sales site and obtain data on the relevant products. The obtained data is stored in memory as collected information and temporarily saved.
[1013] Specific operation: The server automatically accesses online sales sites A and B, scrapes product information, obtains prices, coupons, and campaign information, and temporarily stores it in memory.
[1014] Step 4: Compare prices and find the best deal
[1015] The server uses the price, coupon, and campaign information collected through scraping to calculate the lowest price using an algorithm, which is a function that finds the minimum value.
[1016] The server calculates the price after applying the coupon from the prices on each site and identifies the cheapest price. The calculation result becomes the output data.
[1017] Specific operation: The server executes a calculation script, and if the price on site A is 50,000 yen, the price on site B is 48,000 yen, and a 1,000 yen coupon is applicable on site B, the final price is calculated to be 47,000 yen.
[1018] Step 5: Providing the best price information
[1019] The server then sends the calculated lowest price information to the terminal as data, including the product name, lowest price, and applicable coupon information.
[1020] The terminal receives the lowest price information and displays it to the user in a visually easy-to-understand manner.
[1021] Specific operation: The server sends the information "A smartphone is priced at 47,000 yen (with a 1,000 yen coupon applied) on online sales site B" to the terminal, which then displays it on the screen.
[1022] Step 6: Analyze and notify optimal purchase time
[1023] The server analyzes the best time to purchase based on past price data and campaign information, using data analysis tools (e.g., Python's Pandas and NumPy).
[1024] The server then sends a notification to the user based on the analysis results, including the recommended time to purchase and the reason for the purchase.
[1025] Specific operation: The server analyzes data and determines from past price fluctuation patterns that "there is a high possibility that the price will fall in June," and notifies the user that "the price may fall in June." The user can use this information to efficiently determine the best time to purchase.
[1026] (Application example 1)
[1027] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1028] Conventional price comparison systems have limitations in efficiently providing users with the lowest prices and best times to purchase. In particular, it has been difficult to compare prices in real time or quickly provide products and discount coupons that catch users' attention. Furthermore, notifications of the best time to purchase based on past data are often inappropriate, preventing users from achieving satisfactory results.
[1029] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1030] In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on prices, discount coupons, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal time to purchase, means for notifying the user of the results of the analysis, and means for collecting information on products and discount coupons that interest the user in real time and visually displaying the comparison information. This enables real-time price comparisons and the application of discount coupons, as well as notification of the optimal time to purchase to the user.
[1031] "User registration information" refers to information including personal information, usage history, preferences, etc. of users registered in the system.
[1032] An "online sales site" is a website that sells goods or services over the Internet.
[1033] "Target product information" refers to information such as price, stock status, and ratings about the product specified by the user.
[1034] "Price comparison" is the act of comparing product prices collected from multiple online sales sites to find the cheapest price.
[1035] A "discount coupon" is a promotion that provides a partial discount on the price if certain conditions are met at the time of purchase.
[1036] "Campaign information" refers to information about sales promotion activities such as discounts and special offers that are carried out within a specific period of time.
[1037] "Real-time collection" refers to the process of capturing and updating data instantly.
[1038] "Visual display" refers to a method of displaying collected data and information to users in an intuitive and easy-to-understand manner.
[1039] The "optimal time to purchase" refers to the optimal time to purchase when the price is expected to be lowest.
[1040] "Notification" is the act of the system informing the user of information.
[1041] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[1042] 1. System Configuration
[1043] This system mainly uses a server and user terminals to achieve the following functions:
[1044] Managing and storing user registration information
[1045] Collect information on target products from multiple online sales sites
[1046] Comparison based on collected information on prices, discount coupons, and campaign information
[1047] Providing information on the cheapest products
[1048] Analysis of past data and notification of optimal purchase times
[1049] Real-time collection and visual display of product information and discount coupons that interest users
[1050] 2. Hardware and Software
[1051] The server includes hardware and software for collecting, storing, analyzing, and notifying data. Specifically, it uses a relational database management system (RDBMS) to manage user registration information and price data.
[1052] The user device is assumed to be a smartphone, and the application will be developed using a programming language such as Python. In addition, the following software will be used:
[1053] requests: Data collection from online retailers
[1054] BeautifulSoup: HTML parsing and analysis
[1055] pandas: Data manipulation and analysis
[1056] 3. Data processing or data calculation
[1057] The server searches online sales sites for the product specified by the user, collects information about the product (price, discounts, campaign information), and then performs the following specific data calculations:
[1058] Apply discounts and coupons to each product price to find the cheapest price
[1059] Analyze collected historical price data to identify the best time to purchase
[1060] Notify users of the lowest prices and the best time to purchase
[1061] 4. Specific Examples
[1062] When a user wants to purchase a "laptop computer," the following operations are performed. The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A offers a price of 60,000 yen and site B offers a price of 58,000 yen, and B also has a 2,000 yen discount coupon, the final price on site B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, and the user can purchase the cheapest laptop computer.
[1063] The server also analyzes past price data, and if it determines that laptop prices tend to drop in June, it will notify the user that "prices may drop in June" and suggest a better time to purchase.
[1064] Prompt Sentence Examples
[1065] Specific examples of prompt sentences are shown below.
[1066] user_id = 'user_001'
[1067] favorite_sites = ['https: / / example.com', 'https: / / anothersite.com']
[1068] product_name = 'iPhone 13'
[1069] app = SaiyasuMaster()
[1070] app.register_user(user_id, favorite_sites)
[1071] notification = app.notify_user(user_id, product_name)
[1072] print(notification)
[1073] In this way, users can use the system to compare prices in real time and find the best price and the best time to buy.
[1074] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1075] Step 1: Managing user registration information
[1076] When a user logs in to the system, the terminal inputs user registration information, which is sent to the server and stored in a database, including the user ID, favorite online shopping sites, etc.
[1077] Input: User ID, Favorite Online Shopping Site
[1078] Data processing: None
[1079] Output: Save information to a database
[1080] Step 2: Submit a product search request
[1081] The user enters a search keyword (e.g., "iPhone 13") on their device and sends a product search request to the server.
[1082] Input: Search keyword
[1083] Data processing: None
[1084] Output: Search request to the server
[1085] Step 3: Collect product information
[1086] The server collects product information (price, coupons, campaign information, etc.) from multiple online sales sites based on search keywords specified by the user. In this process, it sends HTTP requests to each site using the requests library and parses the HTML data using BeautifulSoup.
[1087] Input: Search keywords, online sales site URL
[1088] Data processing: HTML analysis
[1089] Output: Collected product information (price, coupons, campaigns)
[1090] Step 4: Compare prices and discounts
[1091] The server compares the collected product information and calculates the lowest price by applying coupons and campaign information to the prices. Specifically, it calculates the value by subtracting the discount amount from the base price of each product.
[1092] Input: Collected product information (price, coupons, campaigns)
[1093] Data processing: Price calculation
[1094] Output: Cheapest product information
[1095] Step 5: Provide information on the cheapest products
[1096] The server then sends the calculated lowest price information to the terminal and provides it to the user, along with detailed information including links and the final price.
[1097] Input: Lowest price product information
[1098] Data processing: None
[1099] Output: Send the lowest price information to the terminal
[1100] Step 6: Analyze historical data
[1101] The server analyzes historical price data and campaign information to analyze patterns of product price fluctuations. It uses the pandas library to analyze the data and identify the best time to purchase.
[1102] Input: Historical price data, campaign information
[1103] Data processing: data analysis, pattern recognition
[1104] Output: Information on the best time to purchase
[1105] Step 7: Notification of optimal purchase time
[1106] The server then notifies the user of the best time to purchase based on the analysis results, and details such as specific months and sale periods are sent to the user's device.
[1107] Input: Best time to purchase information
[1108] Data processing: None
[1109] Output: Notification of optimal purchase time to device
[1110] Through these steps, users can purchase the cheapest products efficiently in real time. Furthermore, by knowing the best time to purchase based on past data, they can make even more efficient purchases.
[1111] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1112] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[1113] 1. System Configuration
[1114] This system is primarily composed of a server, a terminal, and an emotion engine. The server manages and analyzes user registration information and product information. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience.
[1115] 2. Processing user registration
[1116] Users log in to the system using their terminals and register the online sales sites they frequently use. For example, a user can register "online sales site A" and "online sales site B." The server stores this information in a database.
[1117] 3. Operation of the Emotion Engine
[1118] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[1119] 4. Product search and information gathering
[1120] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[1121] 5. Price comparison and lowest price calculation
[1122] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[1123] 6. Emotional Data Analysis and Response
[1124] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[1125] 7. Providing the lowest price information
[1126] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1127] 8. Analytics to inform you of the best time to purchase
[1128] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[1129] Specific examples
[1130] As a specific example, consider a user wanting to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000 and site B offers a ¥58,000 discount coupon, the final price for site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1131] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[1132] The processing flow will be explained below.
[1133] Step 1:
[1134] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[1135] Step 2:
[1136] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[1137] Step 3:
[1138] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[1139] Step 4:
[1140] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[1141] Step 5:
[1142] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[1143] Step 6:
[1144] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[1145] Step 7:
[1146] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[1147] Step 8:
[1148] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1149] Step 9:
[1150] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize the user's emotions. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for and comparing products.
[1151] Step 10:
[1152] The emotion engine analyzes the user's emotional data and adjusts the information delivery method and content based on their emotional state. For example, if a user feels stressed while searching, the system will provide additional support information and refer the user to a link.
[1153] Step 11:
[1154] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[1155] Step 12:
[1156] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[1157] ---
[1158] Through these steps, users can use the system to efficiently find the cheapest products, make purchases at the right time, and receive emotional support.
[1159] Example 2
[1160] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1161] In recent years, online sales via the Internet have become widespread, allowing users to purchase products from a variety of online sales sites. However, collecting information from multiple sales sites and comparing prices, coupon information, and campaign information takes time and effort for users. In addition, the user's purchasing experience is not optimized because the purchasing process is not handled with consideration for user emotions.
[1162] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1163] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the results of the analysis, means for recognizing and analyzing the user's emotions, and means for adjusting the information provision method and content based on the analyzed emotion data. This allows the user to purchase products at the best price without having to go through the trouble of comparing multiple sales sites and receive support that is sensitive to their emotions.
[1164] "Means for storing user-registered information" refers to the means for storing and managing information registered by users in a database or other storage device.
[1165] "Means for collecting information about target products from multiple online sales sites" refers to programs or applications that collect information about products that users wish to purchase from multiple online sales platforms.
[1166] "Means of comparing collected information based on price, coupon, and campaign information" refers to algorithms or software that analyzes and compares collected product price information, available coupons, and ongoing campaign information.
[1167] "Means for providing users with information about the cheapest products" refers to the interface and notification functions for identifying the cheapest products from the comparison results and presenting that information to users.
[1168] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" refers to analytical tools and algorithms that analyze past price fluctuation data and campaign history to predict when a particular product will be cheapest.
[1169] "Means for notifying the user of the analysis results" refers to a notification system or feedback function for informing the user of the analysis results.
[1170] "Means for recognizing and analyzing user emotions" refers to engines and algorithms that analyze a user's facial expressions and tone of voice based on real-time data collected by sensor devices such as cameras and microphones, and identify their emotions.
[1171] "Means for adjusting the method and content of information provision based on analyzed emotional data" refers to software functions that dynamically change the information displayed and the interface presented according to the user's emotional state.
[1172] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[1173] System Configuration
[1174] This system mainly consists of a server, a terminal, and an emotion engine. The server manages user registration information and product information and performs data analysis. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience. The hardware used includes a camera and microphone, and the software used includes an emotion recognition algorithm.
[1175] Processing user registration
[1176] Users log in to the system using their terminals and register the online sales sites they frequently use. Specifically, the user registers "online sales site A" and "online sales site B." The server stores this information in a database.
[1177] Emotion Engine Operation
[1178] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[1179] Product search and information gathering
[1180] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[1181] Price comparison and lowest price calculation
[1182] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[1183] Emotional data analysis and response
[1184] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[1185] Providing the lowest price information
[1186] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it displays "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B."
[1187] Analysis to inform optimal purchase timing
[1188] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[1189] Specific examples
[1190] Example prompt:
[1191] "I want to buy a laptop. Can you tell me the cheapest price?"
[1192] Processing example:
[1193] Consider a scenario where a user wants to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000, site B offers a ¥58,000 discount coupon, and site B offers a ¥2,000 discount coupon, the final price on site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1194] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[1195] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1196] Step 1: User login and registration
[1197] 1. The user accesses the system using a terminal and opens the login screen.
[1198] 2. The terminal prompts the user to enter login information (username, password).
[1199] Input: Username, Password
[1200] 3. The user enters their login information and presses the "Login" button.
[1201] 4. The device sends this login information to the server.
[1202] Output: Authentication request sent to the server
[1203] 5. The server compares the received login information with its database and performs authentication.
[1204] Input: Login information
[1205] Data processing and calculation: Database matching
[1206] Output: Authentication result
[1207] 6. If authentication is successful, the user will proceed to a screen where they can register their favorite online shopping sites.
[1208] 7. The user registers online sales sites A and B.
[1209] 8. The server stores this information in a database.
[1210] Input: Registration site information
[1211] Data processing and calculation: Database storage
[1212] Output: Saved
[1213] Step 2: Emotion Engine in Action
[1214] 1. The camera and microphone installed on the user's device capture the user's facial expressions and voice.
[1215] Input: User's facial expression, voice
[1216] 2. The device formats the captured data for analysis.
[1217] Data processing and calculation: Data format
[1218] Output: Formatted emotion data
[1219] 3. The emotion engine receives the formatted data and parses it using algorithms that recognize the user's emotions.
[1220] Input: Formatted emotion data
[1221] Data processing and calculation: Sentiment analysis
[1222] Output: Emotional state data
[1223] 4. Based on the analysis results, determine the user's current emotional state.
[1224] Input: Emotional state data
[1225] Data processing and calculation: Emotional judgment
[1226] Output: Emotional state determination result
[1227] 5. The server adjusts the interface and information presentation method based on the emotion data.
[1228] Input: Emotional state determination result
[1229] Data processing and calculation: Interface adjustment
[1230] Output: Adjusted interface
[1231] Step 3: Product search and information gathering
[1232] 1. The user enters the keyword for the product they want to purchase (e.g., "smartphone") into the search bar on their device.
[1233] Input: Search keyword
[1234] 2. The device sends the search keywords to the server.
[1235] Output: The search request sent to the server
[1236] 3. The server sends a request to all online sales sites where the user has registered to collect information about the specified product.
[1237] Input: Search keyword
[1238] Output: Information collection request to online retailer
[1239] 4. Each online site returns product prices, coupons, campaign information, etc. to the server.
[1240] Output: Product information data
[1241] 5. The server compiles the returned information and stores it in a database.
[1242] Input: Product information data
[1243] Data processing and calculation: Database storage
[1244] Output: Saved
[1245] Step 4: Compare prices and find the best deal
[1246] 1. The server analyzes the collected product list.
[1247] Input: Product list data
[1248] Data processing and calculation: Data analysis
[1249] Output: Analysis result list
[1250] 2. Extract price information for each product, whether or not there is a coupon, and campaign information, and summarize it in a table format.
[1251] Input: Analysis result list
[1252] Data processing and calculation: Tabular data generation
[1253] Output: Price comparison data
[1254] 3. For example, the price of a smartphone is 50,000 yen on online sales site A and 48,000 yen on online sales site B.
[1255] Input: Price comparison data
[1256] Output: Price information for each site
[1257] 4. The server applies coupons and campaign information to calculate the actual payment amount.
[1258] Input: Price comparison data, coupon information
[1259] Data processing and calculation: Payment amount calculation
[1260] Output: Final payment amount data
[1261] 5. For example, a 1,000 yen discount coupon is applied to an item priced at 48,000 yen on online sales site B, bringing the final price to 47,000 yen.
[1262] Input: Final payment amount data
[1263] Output: Price information after applying coupon
[1264] 6. The server selects the cheapest product based on the analysis results.
[1265] Input: Price information after applying coupon
[1266] Data processing and calculation: Lowest price selection
[1267] Output: Information about the cheapest product
[1268] Step 5: Providing the best price information
[1269] 1. The server sends the lowest price product information to the terminal and provides it to the user.
[1270] Input: Information about the cheapest product
[1271] Output: The lowest price information sent to the terminal
[1272] 2. The user's device displays this information on the screen.
[1273] Input: Lowest price information sent to the terminal
[1274] Output: The lowest price displayed on the screen
[1275] Step 6: Analytics informs optimal purchase times
[1276] 1. The server analyzes historical price data and campaign information.
[1277] Input: Historical price data, campaign information
[1278] Data processing and calculation: Data analysis
[1279] Output: Optimal purchase timing prediction
[1280] 2. If the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[1281] Input: Optimal purchase time prediction
[1282] Output: Notification information for the user
[1283] 3. The terminal displays this notification to the user.
[1284] Input: Notification information for the user
[1285] Output: Notification information displayed on the screen
[1286] (Application example 2)
[1287] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1288] Traditional online shopping requires users to manually search multiple sales sites to find the lowest price, which is time-consuming and distracting, especially when used in autonomous vehicles. Furthermore, existing price comparison systems often fail to provide information that takes into account users' emotions, resulting in a poor purchasing experience. Furthermore, they lack notifications for optimizing purchase timing, making it difficult for users to purchase products at the most advantageous times.
[1289] The identification processing by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for recognizing and analyzing the user's emotions, and means for adjusting the method and content of information provision based on the emotion analysis results. This allows the user to purchase products at the cheapest price and provides information that takes emotions into consideration, improving the purchasing experience and enabling comfortable shopping without losing the user's attention in an autonomous vehicle.
[1290] "Means for storing user-registered information" refers to a function for properly storing and managing personal information and purchase history that users have registered in the system.
[1291] The "means for collecting information about the target product from multiple online sales sites" is a function for automatically collecting data about the product from various sales sites on the Internet.
[1292] "Means of comparing collected information based on price, coupon, and campaign information" refers to a function for comparing and analyzing acquired product information based on price, coupons, and campaign details being implemented on each site.
[1293] "Means for providing users with information on the cheapest products" is a function for presenting users with information on the lowest priced products obtained as a result of comparison and analysis.
[1294] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" is a function that analyzes past price fluctuations and campaign implementation status to predict the best time to purchase a product.
[1295] The "means for notifying the user of the analysis results" is a function for communicating to the user the optimal time to purchase and other important information obtained through the analysis.
[1296] "Means for recognizing and analyzing the user's emotions" refers to a function for recognizing the user's facial expressions and tone of voice and analyzing their emotional state based on that.
[1297] The "means for adjusting the method and content of information provision based on the emotion analysis results" is a function for providing product information in the most optimal way or displaying support messages depending on the user's emotional state.
[1298] This invention relates to a system for improving the user's shopping experience in an autonomous vehicle. This system is mainly composed of a server, a terminal, and an emotion engine, and helps users find the cheapest products from multiple online sales sites, analyzes the user's emotions, and provides appropriate information at the optimal time.
[1299] 1. System Configuration
[1300] The system consists of the following main components:
[1301] Server: Manages and analyzes user registration information and product information.
[1302] Terminal: The infotainment system in an autonomous vehicle that provides the user interface.
[1303] Emotion engine: Recognizes and analyzes emotions from the user's facial expressions, tone of voice, etc.
[1304] 2. Processing user registration
[1305] Users log in to the system using their vehicle's infotainment system and register their favorite online shopping sites, and the server stores this information in a database.
[1306] 3. Operation of the Emotion Engine
[1307] The emotion engine uses cameras and microphones installed in the vehicle to capture the user's facial expressions and tone of voice, then analyzes the data and uses the Microsoft Azure Face API to analyze the user's emotional state (stress, excitement, relief, etc.) in real time.
[1308] 4. Product search and information gathering
[1309] Users enter search keywords for the product they want to purchase by voice, and the voice data is converted to text using the Google Speech-to-Text API. The device then sends this search request to a server, which then collects product information from all registered online sales sites. Information collection is done using a scraping library (BeautifulSoup) and an API client (requests).
[1310] 5. Price comparison and lowest price calculation
[1311] The server analyzes the collected list of products and selects the cheapest product based on price information, whether or not there are coupons, and campaign information.
[1312] 6. Emotional Data Analysis and Response
[1313] The emotional engine's analysis results can be used to tailor the information delivery method and content. For example, if a user is feeling stressed, the system will provide detailed explanations and an easy-to-use interface. If the user is feeling excited, the system will emphasize promotional information to encourage immediate purchases.
[1314] 7. Providing the lowest price information
[1315] The server sends the lowest price product information to the terminal and provides it to the user, who then displays this information on the screen.
[1316] 8. Analytics to inform you of the best time to purchase
[1317] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if it determines that the price of a particular product tends to drop every year on Black Friday in November, it will send a notification to the user saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[1318] Specific examples
[1319] As a concrete example, if a user wants to purchase a laptop, they can say to the vehicle's infotainment system, "I'm looking for a laptop and I want to know the lowest price." The system converts the voice into text and collects product information. For example, if online sales site A is selling a product for 60,000 yen, online sales site B is selling a product for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user of the lowest price of 56,000 yen. The emotion engine analyzes the user's emotional data and displays additional information or support messages if the user is feeling unsure. The system notifies the user that "the price may drop in June," supporting more efficient purchasing.
[1320] Example prompts for generative AI models
[1321] "How can you help passengers who want to buy a smartphone at the lowest possible price? For example, how can you respond if a passenger feels uneasy?"
[1322] This allows users to purchase the cheapest products while receiving optimal emotional support, providing a comfortable shopping experience.
[1323] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1324] Step 1:
[1325] Users input keywords for products they wish to purchase into the vehicle's infotainment system by voice. This voice data is converted into text using the Google Speech-to-Text API. The input is the user's voice command, and the output is the search keyword converted into text. Specifically, the microphone captures the voice, and the API analyzes and converts it into text.
[1326] Step 2:
[1327] The terminal sends search keywords converted to text to the server. The server collects product information from multiple online sales sites registered by the user. A scraping library (BeautifulSoup) and an API client (requests) are used for collection. The input is the search keywords converted to text, and the output is a list of collected product information. Specifically, the server accesses each sales site and retrieves product information.
[1328] Step 3:
[1329] The server analyzes the collected product information based on price, coupon, and campaign information to select the cheapest product. The input is the collected product information, and the output is the lowest-priced product information. Specifically, the server compares price data and applies coupon and discount information to identify the lowest-priced option.
[1330] Step 4:
[1331] The emotion engine recognizes and analyzes the user's emotions using data acquired from the vehicle's cameras and microphones. It analyzes the emotion data using the Microsoft Azure Face API. The input is the user's image and voice data, and the output is analyzed emotion information. Specifically, the camera and microphone capture data, which is then analyzed by the API.
[1332] Step 5:
[1333] Based on the analysis results of the emotion engine, the server adjusts the method and content of information provision. For example, if the user is feeling stressed, the system will provide a detailed explanation and an easy-to-use interface. The input is the analyzed emotion information, and the output is the adjusted information content. Specifically, the server customizes the information provided based on the emotion data.
[1334] Step 6:
[1335] The server sends the cheapest product information and the adjusted information content to the terminal, and the terminal displays this information on the screen. The input is the cheapest product information and the adjusted information content, and the output is the information displayed on the terminal screen. In concrete terms, the terminal visually presents the information to the user.
[1336] Step 7:
[1337] The server analyzes past price data and campaign information to calculate the optimal time to purchase a product at the lowest price. The input is past price data and campaign information, and the output is the optimal time to purchase. Specifically, the server uses a data analysis algorithm to predict the optimal time to purchase.
[1338] Step 8:
[1339] The server notifies the user of the optimal time to purchase based on the analysis results. The input is information about the optimal time to purchase, and the output is a notification to the user. Specifically, it sends a notification message to the terminal to inform the user of the optimal time to purchase.
[1340] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1341] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1342] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1343] [Fourth embodiment]
[1344] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1345] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1346] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1347] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1348] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1349] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1350] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1351] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1352] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1353] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1354] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1355] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1356] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1357] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[1358] 1. System Configuration
[1359] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[1360] Management of registered user information
[1361] Collecting product information
[1362] Compare prices, coupons and promotions
[1363] Providing information on the lowest priced products
[1364] Analysis of past data and notification of optimal purchase times
[1365] 2. Processing user registration
[1366] First, the user logs in to the system through their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database.
[1367] 3. Product search and information gathering
[1368] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product.
[1369] 4. Price comparison and lowest price calculation
[1370] The server compares the collected information and calculates the cheapest price for the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen.
[1371] 5. Providing the lowest price information
[1372] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1373] 6. Analytics to inform you of the best time to purchase
[1374] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop during the annual November sale, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[1375] Specific examples
[1376] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1377] This system allows users to purchase products at the best price without having to go through the trouble of comparing prices on multiple online sales sites. It also notifies users of the best time to purchase, allowing for more efficient shopping.
[1378] The processing flow will be explained below.
[1379] Step 1:
[1380] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[1381] Step 2:
[1382] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[1383] Step 3:
[1384] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[1385] Step 4:
[1386] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[1387] Step 5:
[1388] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[1389] Step 6:
[1390] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[1391] Step 7:
[1392] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[1393] Step 8:
[1394] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1395] Step 9:
[1396] The server analyzes past price data and campaign information to calculate the best time to purchase a product. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[1397] Step 10:
[1398] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[1399] ---
[1400] By following the above steps, users can use the system to efficiently find the cheapest products and make purchases at the right time.
[1401] Example 1
[1402] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1403] When shopping online, it is time-consuming and labor-intensive for users to compare multiple sales sites one by one to find the cheapest product. It is also difficult for users to analyze past price data and campaign information to determine the best time to purchase. There is a need for a system that can reduce this burden on users and help them purchase the cheapest products more efficiently.
[1404] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1405] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for searching for products based on keywords specified by the user and obtaining product information from online sales sites using scraping technology, and means for transmitting the lowest price information to a terminal and displaying it on the user's screen.This allows users to easily compare multiple online sales sites, purchase products at the best price, and also determine the optimal purchase time.
[1406] "User registered information" refers to personal information and preferences provided by users when logging into the system, as well as information about the online retail sites they use.
[1407] "Target products" are specific products that users wish to purchase, and are collected from online sales sites based on search keywords.
[1408] "Multiple Online Sales Sites" means collectively multiple e-commerce platforms or websites registered or designated by a User.
[1409] "Price" refers to the selling price of the product, which is the amount displayed on the online sales site.
[1410] A "coupon" is a code or information that applies a specific discount and is used when purchasing products on an online sales site.
[1411] "Campaign information" is detailed information about promotions and discount events being held for products and services.
[1412] The "cheapest item" is the lowest priced item calculated using the collected prices, coupons, and promotions information.
[1413] "Past price data" is information about the past selling prices of a particular product, and is data recorded in chronological order.
[1414] The "optimal time to purchase" refers to the period during which a product is most likely to be purchased at the lowest price, determined by analyzing past price data and campaign information.
[1415] "Scraping" is a technique for automatically extracting information from websites, and is a method used by systems to collect information about target products.
[1416] A "terminal" is a device such as a computer, smartphone, or tablet that a user uses to access and operate the system.
[1417] A "screen display" is a means of visually presenting information to a user on a terminal, such as through a web page or application interface.
[1418] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[1419] 1. System Configuration
[1420] This system mainly communicates between the server and the user terminal, and realizes the following functions:
[1421] Management of registered user information
[1422] Collecting product information
[1423] Compare prices, coupons and promotions
[1424] Providing information on the lowest priced products
[1425] Analysis of past data and notification of optimal purchase times
[1426] 2. Processing user registration
[1427] First, the user logs in to the system via their terminal. After logging in, the user registers the online sales sites they frequently use. For example, they can register "online sales site A" and "online sales site B." The server stores this information in a database. This database uses a relational database system such as MySQL.
[1428] 3. Product search and information gathering
[1429] To search for a specific product, the user sends search keywords from the device to the server. For example, if the user searches for "smartphone," the server retrieves information about the corresponding product from registered online sales sites A and B. This information includes the price, coupons, and campaign information for each product. The server collects the information using a scraping tool (e.g., BeautifulSoup, Selenium).
[1430] 4. Price comparison and lowest price calculation
[1431] The server compares the collected information and calculates the cheapest price of the product after applying coupons and campaign information. For example, if the price on online sales site A is 50,000 yen and the price on online sales site B is 48,000 yen, and B has a 1,000 yen discount coupon, the server determines that the cheapest price is 47,000 yen. The price comparison uses an algorithm in the script (e.g., a function to find the minimum value).
[1432] 5. Providing the lowest price information
[1433] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it might display "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B." The terminal has an interface for visually presenting information to the user.
[1434] 6. Analytics to inform you of the best time to purchase
[1435] The server then analyzes past price data and campaign information to calculate the best time to purchase the product at the lowest price. This analysis is performed using data analysis software (e.g., Python's Pandas and NumPy). For example, if the price of a particular product tends to drop every year during the November sales, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Using this information, the user can purchase the product at the best possible time.
[1436] Specific examples
[1437] As a specific example, consider the case where a user wants to purchase a "laptop computer." The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A is selling a laptop for 60,000 yen and site B is selling a laptop for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, allowing the user to purchase the cheapest laptop. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1438] Prompt Sentence Examples
[1439] "If a user wants to buy a laptop, they should check the best deals on laptops and the best time to buy."
[1440] By using this system, users can avoid the hassle of comparing prices across multiple online retailers and can purchase products at the best prices.The system also notifies users of the best time to purchase, allowing for more efficient shopping.
[1441] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1442] Step 1: User Registration and Login
[1443] A user accesses the system using a terminal and enters the required information (e.g., email address, password) into a new registration form or login form. The input data is the user's personal information and authentication information for logging into the system.
[1444] The terminal sends the user's input information to the server as an HTTP request (e.g., POST request), which is the specific data that transmits the user's information.
[1445] The server stores the received user information in a database management system (e.g., MySQL), which is then used for subsequent logins and product searches. The server processes the stored data as authentication information, generates a message indicating successful registration or login, and outputs it to the terminal.
[1446] Specific operation: When a user fills out a form in the browser and presses the submit button, the server verifies the user information and saves it in the database. The server returns the results to the terminal, and the terminal displays a message on the screen indicating successful registration or login.
[1447] Step 2: Perform a product search
[1448] The user enters the keyword for the product they are looking for (e.g., "smartphone") on their device and clicks the search button. The search keyword is the input data used to obtain product information.
[1449] The terminal sends the entered search keywords to the server as an HTTP request.
[1450] Specific operation: When a user enters "smartphone" in the search field and clicks the search button, the keyword is sent to the server. After sending, the device enters standby mode.
[1451] Step 3: Collect your product data
[1452] The server collects product information from registered online sales sites based on the received search keywords, including price, coupon, and campaign information.
[1453] The server uses a scraping tool (e.g., BeautifulSoup, Selenium) to access each online sales site and obtain data on the relevant products. The obtained data is stored in memory as collected information and temporarily saved.
[1454] Specific operation: The server automatically accesses online sales sites A and B, scrapes product information, obtains prices, coupons, and campaign information, and temporarily stores it in memory.
[1455] Step 4: Compare prices and find the best deal
[1456] The server uses the price, coupon, and campaign information collected through scraping to calculate the lowest price using an algorithm, which is a function that finds the minimum value.
[1457] The server calculates the price after applying the coupon from the prices on each site and identifies the cheapest price. The calculation result becomes the output data.
[1458] Specific operation: The server executes a calculation script, and if the price on site A is 50,000 yen, the price on site B is 48,000 yen, and a 1,000 yen coupon is applicable on site B, the final price is calculated to be 47,000 yen.
[1459] Step 5: Providing the best price information
[1460] The server then sends the calculated lowest price information to the terminal as data, including the product name, lowest price, and applicable coupon information.
[1461] The terminal receives the lowest price information and displays it to the user in a visually easy-to-understand manner.
[1462] Specific operation: The server sends the information "A smartphone is priced at 47,000 yen (with a 1,000 yen coupon applied) on online sales site B" to the terminal, which then displays it on the screen.
[1463] Step 6: Analyze and notify optimal purchase time
[1464] The server analyzes the best time to purchase based on past price data and campaign information, using data analysis tools (e.g., Python's Pandas and NumPy).
[1465] The server then sends a notification to the user based on the analysis results, including the recommended time to purchase and the reason for the purchase.
[1466] Specific operation: The server analyzes data and determines from past price fluctuation patterns that "there is a high possibility that the price will fall in June," and notifies the user that "the price may fall in June." The user can use this information to efficiently determine the best time to purchase.
[1467] (Application example 1)
[1468] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1469] Conventional price comparison systems have limitations in efficiently providing users with the lowest prices and best times to purchase. In particular, it has been difficult to compare prices in real time or quickly provide products and discount coupons that catch users' attention. Furthermore, notifications of the best time to purchase based on past data are often inappropriate, preventing users from achieving satisfactory results.
[1470] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1471] In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on prices, discount coupons, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal time to purchase, means for notifying the user of the results of the analysis, and means for collecting information on products and discount coupons that interest the user in real time and visually displaying the comparison information. This enables real-time price comparisons and the application of discount coupons, as well as notification of the optimal time to purchase to the user.
[1472] "User registration information" refers to information including personal information, usage history, preferences, etc. of users registered in the system.
[1473] An "online sales site" is a website that sells goods or services over the Internet.
[1474] "Target product information" refers to information such as price, stock status, and ratings about the product specified by the user.
[1475] "Price comparison" is the act of comparing product prices collected from multiple online sales sites to find the cheapest price.
[1476] A "discount coupon" is a promotion that provides a partial discount on the price if certain conditions are met at the time of purchase.
[1477] "Campaign information" refers to information about sales promotion activities such as discounts and special offers that are carried out within a specific period of time.
[1478] "Real-time collection" refers to the process of capturing and updating data instantly.
[1479] "Visual display" refers to a method of displaying collected data and information to users in an intuitive and easy-to-understand manner.
[1480] The "optimal time to purchase" refers to the optimal time to purchase when the price is expected to be lowest.
[1481] "Notification" is the act of the system informing the user of information.
[1482] The present invention provides a system for supporting users in efficiently purchasing products at the lowest prices. Specific embodiments of the system will be described below.
[1483] 1. System Configuration
[1484] This system mainly uses a server and user terminals to achieve the following functions:
[1485] Managing and storing user registration information
[1486] Collect information on target products from multiple online sales sites
[1487] Comparison based on collected information on prices, discount coupons, and campaign information
[1488] Providing information on the cheapest products
[1489] Analysis of past data and notification of optimal purchase times
[1490] Real-time collection and visual display of product information and discount coupons that interest users
[1491] 2. Hardware and Software
[1492] The server includes hardware and software for collecting, storing, analyzing, and notifying data. Specifically, it uses a relational database management system (RDBMS) to manage user registration information and price data.
[1493] The user device is assumed to be a smartphone, and the application will be developed using a programming language such as Python. In addition, the following software will be used:
[1494] requests: Data collection from online retailers
[1495] BeautifulSoup: HTML parsing and analysis
[1496] pandas: Data manipulation and analysis
[1497] 3. Data processing or data calculation
[1498] The server searches online sales sites for the product specified by the user, collects information about the product (price, discounts, campaign information), and then performs the following specific data calculations:
[1499] Apply discounts and coupons to each product price to find the cheapest price
[1500] Analyze collected historical price data to identify the best time to purchase
[1501] Notify users of the lowest prices and the best time to purchase
[1502] 4. Specific Examples
[1503] When a user wants to purchase a "laptop computer," the following operations are performed. The user searches for "laptop computer" on their device, and the server collects price data, coupon information, and campaign information for laptop computers from registered online sales sites. For example, if site A offers a price of 60,000 yen and site B offers a price of 58,000 yen, and B also has a 2,000 yen discount coupon, the final price on site B will be 56,000 yen. The server notifies the user's device of the lowest price of 56,000 yen, and the user can purchase the cheapest laptop computer.
[1504] The server also analyzes past price data, and if it determines that laptop prices tend to drop in June, it will notify the user that "prices may drop in June" and suggest a better time to purchase.
[1505] Prompt Sentence Examples
[1506] Specific examples of prompt sentences are shown below.
[1507] user_id = 'user_001'
[1508] favorite_sites = ['https: / / example.com', 'https: / / anothersite.com']
[1509] product_name = 'iPhone 13'
[1510] app = SaiyasuMaster()
[1511] app.register_user(user_id, favorite_sites)
[1512] notification = app.notify_user(user_id, product_name)
[1513] print(notification)
[1514] In this way, users can use the system to compare prices in real time and find the best price and the best time to buy.
[1515] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1516] Step 1: Managing user registration information
[1517] When a user logs in to the system, the terminal inputs user registration information, which is sent to the server and stored in a database, including the user ID, favorite online shopping sites, etc.
[1518] Input: User ID, Favorite Online Shopping Site
[1519] Data processing: None
[1520] Output: Save information to a database
[1521] Step 2: Submit a product search request
[1522] The user enters a search keyword (e.g., "iPhone 13") on their device and sends a product search request to the server.
[1523] Input: Search keyword
[1524] Data processing: None
[1525] Output: Search request to the server
[1526] Step 3: Collect product information
[1527] The server collects product information (price, coupons, campaign information, etc.) from multiple online sales sites based on search keywords specified by the user. In this process, it sends HTTP requests to each site using the requests library and parses the HTML data using BeautifulSoup.
[1528] Input: Search keywords, online sales site URL
[1529] Data processing: HTML analysis
[1530] Output: Collected product information (price, coupons, campaigns)
[1531] Step 4: Compare prices and discounts
[1532] The server compares the collected product information and calculates the lowest price by applying coupons and campaign information to the prices. Specifically, it calculates the value by subtracting the discount amount from the base price of each product.
[1533] Input: Collected product information (price, coupons, campaigns)
[1534] Data processing: Price calculation
[1535] Output: Cheapest product information
[1536] Step 5: Provide information on the cheapest products
[1537] The server then sends the calculated lowest price information to the terminal and provides it to the user, along with detailed information including links and the final price.
[1538] Input: Lowest price product information
[1539] Data processing: None
[1540] Output: Send the lowest price information to the terminal
[1541] Step 6: Analyze historical data
[1542] The server analyzes historical price data and campaign information to analyze patterns of product price fluctuations. It uses the pandas library to analyze the data and identify the best time to purchase.
[1543] Input: Historical price data, campaign information
[1544] Data processing: data analysis, pattern recognition
[1545] Output: Information on the best time to purchase
[1546] Step 7: Notification of optimal purchase time
[1547] The server then notifies the user of the best time to purchase based on the analysis results, and details such as specific months and sale periods are sent to the user's device.
[1548] Input: Best time to purchase information
[1549] Data processing: None
[1550] Output: Notification of optimal purchase time to device
[1551] Through these steps, users can purchase the cheapest products efficiently in real time. Furthermore, by knowing the best time to purchase based on past data, they can make even more efficient purchases.
[1552] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1553] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[1554] 1. System Configuration
[1555] This system is primarily composed of a server, a terminal, and an emotion engine. The server manages and analyzes user registration information and product information. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience.
[1556] 2. Processing user registration
[1557] Users log in to the system using their terminals and register the online sales sites they frequently use. For example, a user can register "online sales site A" and "online sales site B." The server stores this information in a database.
[1558] 3. Operation of the Emotion Engine
[1559] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[1560] 4. Product search and information gathering
[1561] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[1562] 5. Price comparison and lowest price calculation
[1563] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[1564] 6. Emotional Data Analysis and Response
[1565] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[1566] 7. Providing the lowest price information
[1567] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it may display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1568] 8. Analytics to inform you of the best time to purchase
[1569] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[1570] Specific examples
[1571] As a specific example, consider a user wanting to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000 and site B offers a ¥58,000 discount coupon, the final price for site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1572] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[1573] The processing flow will be explained below.
[1574] Step 1:
[1575] A user logs in to the system using a terminal and registers the online sales sites that they frequently use. For example, a user may register "online sales site A" and "online sales site B." This information sent from the terminal is transferred to the server.
[1576] Step 2:
[1577] The server stores the online retailer site information received from the user in a database, which includes the user ID and the corresponding online retailer site name.
[1578] Step 3:
[1579] The user enters search keywords for the product they want to purchase into the device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server.
[1580] Step 4:
[1581] The server collects information about the specified product from all online sales sites that the user has registered. This can be done using each site's API or web scraping. For example, obtain a list of "smartphones" from online sales sites A and B.
[1582] Step 5:
[1583] The server analyzes the collected product list and extracts price information, coupon availability, and campaign information for each product. For example, it can be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen.
[1584] Step 6:
[1585] The server calculates the actual payment amount by applying coupons and campaign information. For example, if the price on online sales site B is 48,000 yen, a 1,000 yen discount coupon is applied, so the final price is 47,000 yen.
[1586] Step 7:
[1587] The server selects the cheapest product based on the analysis results. For example, it determines that online sales site B has the cheapest price at 47,000 yen.
[1588] Step 8:
[1589] The server sends the lowest price product information to the terminal, which can then display that information to the user. For example, it might display "Smartphone for 47,000 yen (with 1,000 yen coupon applied) on online sales site B."
[1590] Step 9:
[1591] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize the user's emotions. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for and comparing products.
[1592] Step 10:
[1593] The emotion engine analyzes the user's emotional data and adjusts the information delivery method and content based on their emotional state. For example, if a user feels stressed while searching, the system will provide additional support information and refer the user to a link.
[1594] Step 11:
[1595] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, it may determine from data from the past year that the price of a particular product tends to drop every year on Black Friday in November.
[1596] Step 12:
[1597] The server sends information about the best time to purchase to the user's device, which then notifies the user, for example, "If you check again on Black Friday (November), you may be able to purchase it at an even cheaper price."
[1598] ---
[1599] Through these steps, users can use the system to efficiently find the cheapest products, make purchases at the right time, and receive emotional support.
[1600] Example 2
[1601] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1602] In recent years, online sales via the Internet have become widespread, allowing users to purchase products from a variety of online sales sites. However, collecting information from multiple sales sites and comparing prices, coupon information, and campaign information takes time and effort for users. In addition, the user's purchasing experience is not optimized because the purchasing process is not handled with consideration for user emotions.
[1603] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1604] In this invention, the server includes means for storing user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the results of the analysis, means for recognizing and analyzing the user's emotions, and means for adjusting the information provision method and content based on the analyzed emotion data. This allows the user to purchase products at the best price without having to go through the trouble of comparing multiple sales sites and receive support that is sensitive to their emotions.
[1605] "Means for storing user-registered information" refers to the means for storing and managing information registered by users in a database or other storage device.
[1606] "Means for collecting information about target products from multiple online sales sites" refers to programs or applications that collect information about products that users wish to purchase from multiple online sales platforms.
[1607] "Means of comparing collected information based on price, coupon, and campaign information" refers to algorithms or software that analyzes and compares collected product price information, available coupons, and ongoing campaign information.
[1608] "Means for providing users with information about the cheapest products" refers to the interface and notification functions for identifying the cheapest products from the comparison results and presenting that information to users.
[1609] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" refers to analytical tools and algorithms that analyze past price fluctuation data and campaign history to predict when a particular product will be cheapest.
[1610] "Means for notifying the user of the analysis results" refers to a notification system or feedback function for informing the user of the analysis results.
[1611] "Means for recognizing and analyzing user emotions" refers to engines and algorithms that analyze a user's facial expressions and tone of voice based on real-time data collected by sensor devices such as cameras and microphones, and identify their emotions.
[1612] "Means for adjusting the method and content of information provision based on analyzed emotional data" refers to software functions that dynamically change the information displayed and the interface presented according to the user's emotional state.
[1613] This invention further improves the user's purchasing experience by combining a system that acquires product information from online sales sites, compares and analyzes it to provide the cheapest products, with an emotion engine that recognizes and analyzes user emotions. Specific embodiments of this invention are described below.
[1614] System Configuration
[1615] This system mainly consists of a server, a terminal, and an emotion engine. The server manages user registration information and product information and performs data analysis. The terminal provides the user interface, and the emotion engine recognizes and analyzes user emotions to optimize the purchasing experience. The hardware used includes a camera and microphone, and the software used includes an emotion recognition algorithm.
[1616] Processing user registration
[1617] Users log in to the system using their terminals and register the online sales sites they frequently use. Specifically, the user registers "online sales site A" and "online sales site B." The server stores this information in a database.
[1618] Emotion Engine Operation
[1619] The emotion engine uses sensors such as a camera and microphone installed on the user's device to recognize emotions from the user's facial expressions, tone of voice, etc. For example, it captures and analyzes changes in facial expressions and voice when the user is searching for or comparing products.
[1620] Product search and information gathering
[1621] A user enters search keywords for the product they want to purchase into their device and performs a search. For example, the user enters "smartphone." The device then sends this search request to the server. The server then collects information about the specified product from all online sales sites the user has registered. This information includes the price, coupons, and campaign information for each product.
[1622] Price comparison and lowest price calculation
[1623] The server analyzes the collected list of products and extracts price information for each product, whether or not there are coupons, and campaign information. For example, it may be determined that the price of a smartphone on online sales site A is 50,000 yen, while on online sales site B it is 48,000 yen. The server applies the coupon and campaign information to calculate the actual amount to be paid. For example, if a coupon for a 1,000 yen discount is applied to the price of 48,000 yen on online sales site B, the final price will be 47,000 yen. Based on the analysis results, the server selects the cheapest product.
[1624] Emotional data analysis and response
[1625] The emotion engine analyzes the user's emotional data and adjusts the method and content of information provided based on that state. For example, if a user feels stressed while searching, the system can support them by presenting an easy-to-use interface and adding detailed explanations. Furthermore, if the user is excited, the system can highlight campaigns and discount information to encourage immediate purchases.
[1626] Providing the lowest price information
[1627] The server sends the lowest price product information to the terminal and provides it to the user. The user's terminal displays this information on the screen. For example, it displays "Smartphone for 47,000 yen (1,000 yen coupon applied) on online sales site B."
[1628] Analysis to inform optimal purchase timing
[1629] The server also analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase the product at an even lower price." Based on this information, the user can purchase the product at the best possible time.
[1630] Specific examples
[1631] Example prompt:
[1632] "I want to buy a laptop. Can you tell me the cheapest price?"
[1633] Processing example:
[1634] Consider a scenario where a user wants to purchase a laptop. The user searches for "laptop" on their device, and the server collects price data, coupon information, and campaign information for laptops from registered online sales sites. For example, if site A offers a laptop for ¥60,000, site B offers a ¥58,000 discount coupon, and site B offers a ¥2,000 discount coupon, the final price on site B is ¥56,000. The server notifies the user of the lowest price of ¥56,000, allowing the user to purchase the cheapest laptop. The emotion engine analyzes the user's emotional data and, for example, if the user is feeling anxious, displays additional information or a support message. Furthermore, if the server analyzes past price data and determines that laptop prices tend to drop in June, it can notify the user that "prices may drop in June" and suggest a better time to purchase.
[1635] This system allows users to avoid the hassle of comparing products across multiple online retailers, and allows them to purchase products at the best price while receiving emotional support.It also notifies users of the best time to purchase, making shopping even more efficient.
[1636] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1637] Step 1: User login and registration
[1638] 1. The user accesses the system using a terminal and opens the login screen.
[1639] 2. The terminal prompts the user to enter login information (username, password).
[1640] Input: Username, Password
[1641] 3. The user enters their login information and presses the "Login" button.
[1642] 4. The device sends this login information to the server.
[1643] Output: Authentication request sent to the server
[1644] 5. The server compares the received login information with its database and performs authentication.
[1645] Input: Login information
[1646] Data processing and calculation: Database matching
[1647] Output: Authentication result
[1648] 6. If authentication is successful, the user will proceed to a screen where they can register their favorite online shopping sites.
[1649] 7. The user registers online sales sites A and B.
[1650] 8. The server stores this information in a database.
[1651] Input: Registration site information
[1652] Data processing and calculation: Database storage
[1653] Output: Saved
[1654] Step 2: Emotion Engine in Action
[1655] 1. The camera and microphone installed on the user's device capture the user's facial expressions and voice.
[1656] Input: User's facial expression, voice
[1657] 2. The device formats the captured data for analysis.
[1658] Data processing and calculation: Data format
[1659] Output: Formatted emotion data
[1660] 3. The emotion engine receives the formatted data and parses it using algorithms that recognize the user's emotions.
[1661] Input: Formatted emotion data
[1662] Data processing and calculation: Sentiment analysis
[1663] Output: Emotional state data
[1664] 4. Based on the analysis results, determine the user's current emotional state.
[1665] Input: Emotional state data
[1666] Data processing and calculation: Emotional judgment
[1667] Output: Emotional state determination result
[1668] 5. The server adjusts the interface and information presentation method based on the emotion data.
[1669] Input: Emotional state determination result
[1670] Data processing and calculation: Interface adjustment
[1671] Output: Adjusted interface
[1672] Step 3: Product search and information gathering
[1673] 1. The user enters the keyword for the product they want to purchase (e.g., "smartphone") into the search bar on their device.
[1674] Input: Search keyword
[1675] 2. The device sends the search keywords to the server.
[1676] Output: The search request sent to the server
[1677] 3. The server sends a request to all online sales sites where the user has registered to collect information about the specified product.
[1678] Input: Search keyword
[1679] Output: Information collection request to online retailer
[1680] 4. Each online site returns product prices, coupons, campaign information, etc. to the server.
[1681] Output: Product information data
[1682] 5. The server compiles the returned information and stores it in a database.
[1683] Input: Product information data
[1684] Data processing and calculation: Database storage
[1685] Output: Saved
[1686] Step 4: Compare prices and find the best deal
[1687] 1. The server analyzes the collected product list.
[1688] Input: Product list data
[1689] Data processing and calculation: Data analysis
[1690] Output: Analysis result list
[1691] 2. Extract price information for each product, whether or not there is a coupon, and campaign information, and summarize it in a table format.
[1692] Input: Analysis result list
[1693] Data processing and calculation: Tabular data generation
[1694] Output: Price comparison data
[1695] 3. For example, the price of a smartphone is 50,000 yen on online sales site A and 48,000 yen on online sales site B.
[1696] Input: Price comparison data
[1697] Output: Price information for each site
[1698] 4. The server applies coupons and campaign information to calculate the actual payment amount.
[1699] Input: Price comparison data, coupon information
[1700] Data processing and calculation: Payment amount calculation
[1701] Output: Final payment amount data
[1702] 5. For example, a 1,000 yen discount coupon is applied to an item priced at 48,000 yen on online sales site B, bringing the final price to 47,000 yen.
[1703] Input: Final payment amount data
[1704] Output: Price information after applying coupon
[1705] 6. The server selects the cheapest product based on the analysis results.
[1706] Input: Price information after applying coupon
[1707] Data processing and calculation: Lowest price selection
[1708] Output: Information about the cheapest product
[1709] Step 5: Providing the best price information
[1710] 1. The server sends the lowest price product information to the terminal and provides it to the user.
[1711] Input: Information about the cheapest product
[1712] Output: The lowest price information sent to the terminal
[1713] 2. The user's device displays this information on the screen.
[1714] Input: Lowest price information sent to the terminal
[1715] Output: The lowest price displayed on the screen
[1716] Step 6: Analytics informs optimal purchase times
[1717] 1. The server analyzes historical price data and campaign information.
[1718] Input: Historical price data, campaign information
[1719] Data processing and calculation: Data analysis
[1720] Output: Optimal purchase timing prediction
[1721] 2. If the price of a particular product tends to drop every year on Black Friday in November, the server will send a notification to the device saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[1722] Input: Optimal purchase time prediction
[1723] Output: Notification information for the user
[1724] 3. The terminal displays this notification to the user.
[1725] Input: Notification information for the user
[1726] Output: Notification information displayed on the screen
[1727] (Application example 2)
[1728] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1729] Traditional online shopping requires users to manually search multiple sales sites to find the lowest price, which is time-consuming and distracting, especially when used in autonomous vehicles. Furthermore, existing price comparison systems often fail to provide information that takes into account users' emotions, resulting in a poor purchasing experience. Furthermore, they lack notifications for optimizing purchase timing, making it difficult for users to purchase products at the most advantageous times.
[1730] The identification processing by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for saving user-registered information, means for collecting information on target products from multiple online sales sites, means for comparing the collected information based on price, coupon, and campaign information, means for providing the user with information on the cheapest products, means for analyzing past price data and campaign information to calculate the optimal purchase time, means for notifying the user of the analysis results, means for recognizing and analyzing the user's emotions, and means for adjusting the method and content of information provision based on the emotion analysis results. This allows the user to purchase products at the cheapest price and provides information that takes emotions into consideration, improving the purchasing experience and enabling comfortable shopping without losing the user's attention in an autonomous vehicle.
[1731] "Means for storing user-registered information" refers to a function for properly storing and managing personal information and purchase history that users have registered in the system.
[1732] The "means for collecting information about the target product from multiple online sales sites" is a function for automatically collecting data about the product from various sales sites on the Internet.
[1733] "Means of comparing collected information based on price, coupon, and campaign information" refers to a function for comparing and analyzing acquired product information based on price, coupons, and campaign details being implemented on each site.
[1734] "Means for providing users with information on the cheapest products" is a function for presenting users with information on the lowest priced products obtained as a result of comparison and analysis.
[1735] "Means of analyzing past price data and campaign information to calculate the optimal time to purchase" is a function that analyzes past price fluctuations and campaign implementation status to predict the best time to purchase a product.
[1736] The "means for notifying the user of the analysis results" is a function for communicating to the user the optimal time to purchase and other important information obtained through the analysis.
[1737] "Means for recognizing and analyzing the user's emotions" refers to a function for recognizing the user's facial expressions and tone of voice and analyzing their emotional state based on that.
[1738] The "means for adjusting the method and content of information provision based on the emotion analysis results" is a function for providing product information in the most optimal way or displaying support messages depending on the user's emotional state.
[1739] This invention relates to a system for improving the user's shopping experience in an autonomous vehicle. This system is mainly composed of a server, a terminal, and an emotion engine, and helps users find the cheapest products from multiple online sales sites, analyzes the user's emotions, and provides appropriate information at the optimal time.
[1740] 1. System Configuration
[1741] The system consists of the following main components:
[1742] Server: Manages and analyzes user registration information and product information.
[1743] Terminal: The infotainment system in an autonomous vehicle that provides the user interface.
[1744] Emotion engine: Recognizes and analyzes emotions from the user's facial expressions, tone of voice, etc.
[1745] 2. Processing user registration
[1746] Users log in to the system using their vehicle's infotainment system and register their favorite online shopping sites, and the server stores this information in a database.
[1747] 3. Operation of the Emotion Engine
[1748] The emotion engine uses cameras and microphones installed in the vehicle to capture the user's facial expressions and tone of voice, then analyzes the data and uses the Microsoft Azure Face API to analyze the user's emotional state (stress, excitement, relief, etc.) in real time.
[1749] 4. Product search and information gathering
[1750] Users enter search keywords for the product they want to purchase by voice, and the voice data is converted to text using the Google Speech-to-Text API. The device then sends this search request to a server, which then collects product information from all registered online sales sites. Information collection is done using a scraping library (BeautifulSoup) and an API client (requests).
[1751] 5. Price comparison and lowest price calculation
[1752] The server analyzes the collected list of products and selects the cheapest product based on price information, whether or not there are coupons, and campaign information.
[1753] 6. Emotional Data Analysis and Response
[1754] The emotional engine's analysis results can be used to tailor the information delivery method and content. For example, if a user is feeling stressed, the system will provide detailed explanations and an easy-to-use interface. If the user is feeling excited, the system will emphasize promotional information to encourage immediate purchases.
[1755] 7. Providing the lowest price information
[1756] The server sends the lowest price product information to the terminal and provides it to the user, who then displays this information on the screen.
[1757] 8. Analytics to inform you of the best time to purchase
[1758] The server analyzes past price data and campaign information to calculate the best time to purchase a product when it is expected to be at its lowest price. For example, if it determines that the price of a particular product tends to drop every year on Black Friday in November, it will send a notification to the user saying, "If you check again on Black Friday in November, you may be able to purchase it even cheaper."
[1759] Specific examples
[1760] As a concrete example, if a user wants to purchase a laptop, they can say to the vehicle's infotainment system, "I'm looking for a laptop and I want to know the lowest price." The system converts the voice into text and collects product information. For example, if online sales site A is selling a product for 60,000 yen, online sales site B is selling a product for 58,000 yen, and B has a 2,000 yen discount coupon, the final price for B will be 56,000 yen. The server notifies the user of the lowest price of 56,000 yen. The emotion engine analyzes the user's emotional data and displays additional information or support messages if the user is feeling unsure. The system notifies the user that "the price may drop in June," supporting more efficient purchasing.
[1761] Example prompts for generative AI models
[1762] "How can you help passengers who want to buy a smartphone at the lowest possible price? For example, how can you respond if a passenger feels uneasy?"
[1763] This allows users to purchase the cheapest products while receiving optimal emotional support, providing a comfortable shopping experience.
[1764] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1765] Step 1:
[1766] Users input keywords for products they wish to purchase into the vehicle's infotainment system by voice. This voice data is converted into text using the Google Speech-to-Text API. The input is the user's voice command, and the output is the search keyword converted into text. Specifically, the microphone captures the voice, and the API analyzes and converts it into text.
[1767] Step 2:
[1768] The terminal sends search keywords converted to text to the server. The server collects product information from multiple online sales sites registered by the user. A scraping library (BeautifulSoup) and an API client (requests) are used for collection. The input is the search keywords converted to text, and the output is a list of collected product information. Specifically, the server accesses each sales site and retrieves product information.
[1769] Step 3:
[1770] The server analyzes the collected product information based on price, coupon, and campaign information to select the cheapest product. The input is the collected product information, and the output is the lowest-priced product information. Specifically, the server compares price data and applies coupon and discount information to identify the lowest-priced option.
[1771] Step 4:
[1772] The emotion engine recognizes and analyzes the user's emotions using data acquired from the vehicle's cameras and microphones. It analyzes the emotion data using the Microsoft Azure Face API. The input is the user's image and voice data, and the output is analyzed emotion information. Specifically, the camera and microphone capture data, which is then analyzed by the API.
[1773] Step 5:
[1774] Based on the analysis results of the emotion engine, the server adjusts the method and content of information provision. For example, if the user is feeling stressed, the system will provide a detailed explanation and an easy-to-use interface. The input is the analyzed emotion information, and the output is the adjusted information content. Specifically, the server customizes the information provided based on the emotion data.
[1775] Step 6:
[1776] The server sends the cheapest product information and the adjusted information content to the terminal, and the terminal displays this information on the screen. The input is the cheapest product information and the adjusted information content, and the output is the information displayed on the terminal screen. In concrete terms, the terminal visually presents the information to the user.
[1777] Step 7:
[1778] The server analyzes past price data and campaign information to calculate the optimal time to purchase a product at the lowest price. The input is past price data and campaign information, and the output is the optimal time to purchase. Specifically, the server uses a data analysis algorithm to predict the optimal time to purchase.
[1779] Step 8:
[1780] The server notifies the user of the optimal time to purchase based on the analysis results. The input is information about the optimal time to purchase, and the output is a notification to the user. Specifically, it sends a notification message to the terminal to inform the user of the optimal time to purchase.
[1781] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1782] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1783] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1784] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1785] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1786] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1787] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1788] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1789] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1790] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown...
Claims
1. A means for storing user registered information; A means for collecting information on the target product from multiple online sales sites; A means to compare collected information based on prices, coupons, and promotions; A means of providing users with information on the cheapest products; A method for analyzing past price data and campaign information to calculate the optimal time to purchase; means for notifying a user of the analysis results; A system including:
2. further comprising means for acquiring product information from a plurality of online sales sites designated by the user; The system of claim 1 .
3. Further comprising a means for providing the user with a notified purchase time based on the analyzed past price fluctuation data at the purchase time; The system of claim 1 .
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A