system
The system addresses inefficiencies in conventional fishing by using AI to predict optimal fishing times and locations and recommend gear and retailers, improving the fishing experience through comprehensive support.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2026-04-09
AI Technical Summary
Conventional fishing relies heavily on experience and intuition for selecting optimal fishing times and locations, lacks real-time information sharing, and novice fishermen face challenges in gear selection and purchasing, leading to inefficient preparation.
A system that includes user input means for location selection, location information acquisition, a fishing catch prediction database, and AI-based prediction calculation to determine optimal fishing times, along with storage and display of fishing results for real-time sharing and recommendation of gear and retailers.
Provides users with efficient fishing timing, optimal locations, recommended gear, and retailer information, enhancing the overall fishing experience by simplifying preparation and enabling real-time information sharing.
Smart Images

Figure 2026062131000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In conventional fishing, the selection of appropriate fishing times and locations for obtaining fishing results relies heavily on experience and intuition, and there is a problem that efficient fishing is difficult. Also, for novice fishermen, there is a problem that it is difficult to prepare because information on which fishing gear to choose and which store to purchase it from is limited. Furthermore, real-time information sharing from fishermen across the country is not sufficient, and it is difficult to select an optimal fishing ground based on the latest fishing result information.
Means for Solving the Problems
[0005] The present invention solves the aforementioned problems by the following means: User input means and location information acquisition means are provided to acquire information about the desired location entered by the user and its location. A fishing catch prediction database reference means performs a fishing catch prediction based on location information using past fishing catch data. A fishing catch prediction calculation means analyzes the fishing catch prediction data and calculates the optimal timing for fishing. A calculation result display means displays the prediction result to the user.
[0006] Furthermore, the system includes a means for storing fishing results entered by users in a database. By analyzing the fishing results in the database and providing a display means to show popular fishing spots in a ranking format, it enables real-time information sharing among anglers nationwide.
[0007] Furthermore, the system obtains information on recommended fishing gear and the nearest retailers based on the user's destination through means of acquiring information on affiliated fishing tackle manufacturers and retailers. These means of displaying recommended fishing gear and retailers provide users with information on fishing gear and retailers, supporting efficient preparation.
[0008] "User input means" refers to devices or interfaces that allow users to input information into a system.
[0009] "Location information acquisition means" refers to devices and methods for identifying information about a destination entered by a user and acquiring location information such as the latitude and longitude of that location.
[0010] "Fishing catch prediction database referencing means" refers to a device or method for accessing a database containing past fishing catch data and referencing that data.
[0011] A "fishing catch prediction calculation means" refers to a device or method that uses AI algorithms or machine learning models based on referenced data to predict fishing results and calculate the optimal timing for fishing.
[0012] "Calculation result display means" refers to a device or interface for visually displaying the prediction results obtained by the fishing catch prediction calculation means to the user.
[0013] "Storage means" refers to devices or methods for storing fishing results information entered by users in a database.
[0014] "Display means" refers to devices or interfaces that analyze accumulated data and visually display the results to the user.
[0015] "Means for obtaining information from partner fishing tackle manufacturers" refers to devices and methods for obtaining relevant information from partner fishing tackle manufacturers.
[0016] "Means for obtaining partner retailer information" refers to devices or methods for obtaining relevant information from partner retailers.
[0017] "Recommended fishing gear information display means" refers to a device or interface that displays recommended fishing gear to the user based on acquired information from partner fishing gear manufacturers.
[0018] "Dealer information display means" refers to a device or interface that displays information about the nearest dealer to the user based on acquired information about affiliated dealers. [Brief explanation of the drawing]
[0019] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of the data processing device and smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5]It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Mode for Carrying Out the Invention
[0020] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0021] First, the language used in the following description will be explained.
[0022] In the following embodiments, the signed processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Furthermore, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include CPU (Central Processing Unit), GPU (Graphics Processing Unit), GPGPU (General-Purpose computing on Graphics Processing Units), and APU (Accelerated Processing Unit).
[0023] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0024] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0025] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0026] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0027] [First Embodiment]
[0028] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0029] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0030] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0031] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0032] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0033] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0034] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0035] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0036] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0037] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0038] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0039] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0040] This invention provides a system that supports efficient fishing by coordinating various means. This section explains how to specifically implement the invention. Three parties are involved in implementing the invention: the user, the server, and the terminal. Each of these will be explained in detail based on their respective roles.
[0041] User input and information retrieval
[0042] The user enters the location where they want to go fishing into the app. For example, if the user enters "I want to fish in Tokyo Bay," the device receives location information from the user. This information includes, for example, location data (latitude, longitude, etc.).
[0043] Location information acquisition and fishing success prediction
[0044] The device acquires location information and uses that information to access the database using a fishing catch prediction database reference mechanism. The server retrieves past fishing catch data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past fishing catch data under similar conditions.
[0045] The server uses a fishing success prediction calculation method to calculate the optimal fishing time from the analyzed data. For example, if it concludes that "7 PM to 8 PM is the best time to fish," it sends that result to the terminal. The terminal can then display this prediction result to the user, informing them of the appropriate fishing time.
[0046] Sharing and confirming fishing results
[0047] When a user enters fishing results (type, number, and location of fish caught, etc.), the terminal sends this information to the server. For example, it might send information such as "I caught 5 sea bass in Tokyo Bay." The server has a means of storing fishing results, which allows fishing results from all over the country to be collected.
[0048] Based on accumulated information, the server analyzes the data and creates a ranking of popular fishing spots. The terminal displays this ranking to the user, showing which locations have been producing good catches recently. For example, it might display information such as "1st place: Tokyo Bay, 2nd place: Lake Biwa, 3rd place: Seto Inland Sea."
[0049] Recommended fishing gear and a guide to retailers.
[0050] When a user decides on a fishing trip plan, the server extracts information from partner fishing tackle manufacturers and retailers. For example, if a user decides to go to Tokyo Bay, the server will recommend the most suitable fishing gear (e.g., specific lures or rods).
[0051] The server sends recommended fishing gear information to the terminal and displays it to the user. It also retrieves information about nearby stores and notifies the user. For example, by displaying "Recommended lure: ABC XYZ, Store: XX Fishing Tackle Shop (Address: AA Ward, Tokyo, Business Hours: 9:00-18:00)", the user can make appropriate preparations.
[0052] Specific example
[0053] If a user selects "fishing in Tokyo Bay," the device acquires location information and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. Furthermore, if the user registers their fishing results, the server compiles this information and displays it as a ranking of "Tokyo Bay as currently the best fishing spot." After that, information on the most suitable fishing gear and retailers is displayed on the device, allowing the user to prepare.
[0054] In this way, the present invention provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailer information, thereby realizing a comprehensive fishing trip support system.
[0055] The following describes the processing flow.
[0056] Step 1:
[0057] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[0058] Step 2:
[0059] The device receives input from the user and obtains location information (latitude, longitude, etc.) for that location.
[0060] Step 3:
[0061] The device uses its location information to access a fishing catch prediction database and queries the server for past fishing catch data.
[0062] Example: GET / api / fishing / prediction?location=TokyoBay
[0063] Step 4:
[0064] The server receives the request and extracts past fishing results data from the database.
[0065] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[0066] Step 5:
[0067] Based on the data extracted by the server, AI algorithms and machine learning models are used to predict fishing results. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[0068] Examples: Time series analysis, applying machine learning models
[0069] Step 6:
[0070] The server returns the analysis results to the terminal. As a prediction, it sends data such as, "The optimal time for fishing is from 7 PM to 8 PM."
[0071] Step 7:
[0072] The device displays the prediction results it has received to the user.
[0073] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM."
[0074] Step 8:
[0075] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0076] Step 9:
[0077] The device sends fishing results information from the user to the server.
[0078] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[0079] Step 10:
[0080] The server stores the fishing results information it receives in a database.
[0081] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[0082] Step 11:
[0083] A user requests information about popular fishing spots. The device sends this request to the server.
[0084] Step 12:
[0085] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[0086] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[0087] Step 13:
[0088] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[0089] Step 14:
[0090] The ranking information received by the device is displayed to the user.
[0091] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[0092] Step 15:
[0093] When the user decides on a destination, the device sends that information to the server.
[0094] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[0095] Step 16:
[0096] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[0097] Step 17:
[0098] The server retrieves information about the nearest retailer based on the partner retailer information.
[0099] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[0100] Step 18:
[0101] The server sends recommended fishing gear information and retailer information to the terminal.
[0102] Step 19:
[0103] The device displays fishing gear and retailer information it has received to the user.
[0104] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0105] (Example 1)
[0106] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0107] In recent years, fishing enthusiasts have been seeking more efficient fishing trips, but they face the challenge of selecting the optimal timing and location. Furthermore, the variety of information available regarding fishing gear selection and purchasing locations means that preparation takes considerable time. It is necessary to eliminate this complex pre-trip preparation process and provide users with a more convenient and efficient fishing support system.
[0108] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0109] In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a recommended fishing gear generation means, and a retailer information acquisition means. This makes it possible for the user to easily obtain information on the optimal fishing timing, fishing location, recommended fishing gear, and retailers.
[0110] "User input means" refers to the means by which users can input information such as the location where they want to go fishing and their fishing results.
[0111] "Location information acquisition means" refers to the means of acquiring the specific location information (latitude and longitude) of a fishing spot specified by the user.
[0112] A "fishing catch prediction database reference means" is a means of accessing a database containing past fishing catch data and referencing that data.
[0113] A "fishing catch prediction calculation method" is a means of predicting fishing catches using AI algorithms or machine learning models based on past fishing catch data.
[0114] The "calculation result display means" is a means for displaying the prediction results obtained by the fishing catch prediction calculation means to the user.
[0115] The "recommended fishing gear generation method" is a method for generating and recommending the optimal fishing gear based on the user's fishing trip plan.
[0116] "Retailer information acquisition method" refers to a method for obtaining information on retailers where recommended fishing equipment can be purchased.
[0117] A "storage method" refers to a means of storing fishing results information entered by users in a database.
[0118] The "ranking display method" is a means of analyzing fishing results information in a database and displaying popular fishing spots in a ranking format.
[0119] This invention is a comprehensive system for supporting fishing trips. This system is realized through the cooperation of three parties: the user, the terminal, and the server. The following describes a specific embodiment of this system.
[0120] User input and information retrieval
[0121] The user enters the location where they want to go fishing into the application (app). This app runs on mobile devices such as smartphones. For example, if the user enters "I want to fish in Tokyo Bay," the app retrieves that information and uses its built-in GPS function and map API (for example, Google® Maps API) to determine the specific location information (latitude and longitude).
[0122] Location information acquisition and fishing success prediction
[0123] The device sends its identified location information to the server using the HTTPS protocol. The server runs on a cloud computing service (e.g., AWS® EC2). The server accesses a database (e.g., AWS RDS) to retrieve historical fishing data for that area. This fishing data includes the date and time of the catch, the type of fish, and the location.
[0124] Based on the acquired data, the server uses an AI algorithm (for example, using TENSORFLOW® or PyTorch) to predict fishing results. This AI model learns from past data and predicts fishing results at a specified location and time. For example, it might generate a prediction such as "7 PM to 8 PM is the optimal time for fishing." The server sends this prediction result to the terminal, which then displays it to the user.
[0125] Sharing and confirming fishing results
[0126] After fishing, users enter their catch information into the app. For example, they might enter information such as, "I caught 5 sea bass in Tokyo Bay." This information is sent to the server via the device. The server stores the catch information in cloud storage (e.g., AWS S3) and also stores it in a database (AWS RDS). The server then analyzes the catch data using an analysis tool (e.g., Apache Spark) and creates a ranking of popular fishing spots. This ranking information is sent to the device and displayed to the user.
[0127] Recommended fishing gear and a guide to retailers.
[0128] When a user decides on a fishing trip plan, the server retrieves information from partner fishing tackle manufacturers and retailers to generate the most suitable fishing gear. For example, if a user decides to go to Tokyo Bay, the server will recommend specific lures and rods. The server sends this recommendation information and retailer information to the user's device. The device then displays this information to the user. For example, it might provide information such as, "Recommended lure: Lure from a specific manufacturer, Retailer: Specific retailer (Address: XX Ward, Tokyo, Business hours: 9:00-18:00)."
[0129] Examples of specific cases and prompt statements
[0130] For example, if a user selects "fishing in Tokyo Bay," the device obtains location information ("Tokyo Bay") and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. After the fishing trip, if the user registers that they "caught 5 sea bass in Tokyo Bay," the server uses this information to display a ranking of Tokyo Bay as "currently the best fishing spot." In addition, information on the best fishing gear and retailers is displayed on the device, allowing the user to prepare accordingly.
[0131] Examples of prompts for a generative AI model include the following:
[0132] "What is the best time to fish in Tokyo Bay, and what fishing gear do you recommend?"
[0133] This system provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailers, thereby providing comprehensive support for their fishing trips.
[0134] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0135] Step 1:
[0136] The user enters their fishing location into the app. For example, they might enter, "I want to fish in Tokyo Bay."
[0137] Input: Text information about the fishing location
[0138] Output: User input
[0139] Specifically, the user enters their desired fishing location into a text box on the smartphone app and presses the submit button.
[0140] Step 2:
[0141] The device receives user input and obtains location information using GPS functionality or map APIs.
[0142] Input: User input
[0143] Output: Identified location information (latitude and longitude)
[0144] Specifically, the device uses its built-in GPS function to obtain the user's current location and the latitude and longitude of the entered location.
[0145] Step 3:
[0146] The device sends the location information it has acquired to the server.
[0147] Input: Location information (latitude and longitude)
[0148] Output: Location information sent to the server
[0149] Specifically, the device uses the HTTPS protocol to send location information to the server via a POST request.
[0150] Step 4:
[0151] The server receives location information and retrieves past fishing results data from the database.
[0152] Input: Sent location information
[0153] Output: Past fishing results data
[0154] Specifically, the server queries a database such as AWS RDS to retrieve historical fishing data corresponding to the specified location.
[0155] Step 5:
[0156] The server uses an AI algorithm to predict fishing results.
[0157] Input: Past fishing results data
[0158] Output: Fishing catch prediction results
[0159] In practice, the server inputs fishing results data into an AI model (using, for example, TensorFlow or PyTorch) to predict fishing results at a specified location and time. The output might be a prediction such as, "The best time to fish is from 7 PM to 8 PM."
[0160] Step 6:
[0161] The server sends the prediction results to the terminal.
[0162] Input: Fishing catch prediction result
[0163] Output: Prediction results sent to the terminal
[0164] Specifically, the server converts the prediction results into JSON format and sends them to the terminal using the HTTPS protocol.
[0165] Step 7:
[0166] The device displays the prediction results it has received to the user.
[0167] Input: Prediction results sent from the server
[0168] Output: Prediction results displayed to the user
[0169] Specifically, the app's UI displays the prediction results received by the device as "The best time to fish is between 7 PM and 8 PM."
[0170] Step 8:
[0171] After a fishing trip, the user enters their catch information into the app. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0172] Input: Fishing results information
[0173] Output: User's fishing results
[0174] In terms of specific actions, the user enters details of their catch (such as the type and number of fish) into the app's input form and presses the submit button.
[0175] Step 9:
[0176] The device sends fishing results information to the server.
[0177] Input: User's fishing results
[0178] Output: Fishing results information sent to the server
[0179] Specifically, the device sends fishing results information to the server via a POST request using the HTTPS protocol.
[0180] Step 10:
[0181] The server accumulates fishing results and saves them in a database.
[0182] Input: Submitted fishing results information
[0183] Output: Accumulated fishing results data
[0184] Specifically, the server saves the fishing results information it receives to AWS S3 or AWS RDS.
[0185] Step 11:
[0186] The server analyzes fishing results data and generates rankings of popular fishing spots.
[0187] Input: Accumulated fishing results data
[0188] Output: Fishing Spot Ranking
[0189] Specifically, the server periodically uses Apache Spark to perform data analysis and generate ranking data.
[0190] Step 12:
[0191] The server sends the generated ranking to the terminal.
[0192] Input: Fishing Spot Ranking
[0193] Output: Ranking information sent to the terminal
[0194] Specifically, the server converts the ranking data into JSON format and sends it to the terminal using the HTTPS protocol.
[0195] Step 13:
[0196] The ranking information received by the device is displayed to the user.
[0197] Input: Ranking information sent from the server
[0198] Output: Ranking information displayed to the user
[0199] Specifically, the device displays ranking information on the app's UI. For example, it might display "1st: Tokyo Bay, 2nd: Lake Biwa, 3rd: Seto Inland Sea."
[0200] Step 14:
[0201] The user decides on the fishing trip plan.
[0202] Input: Deciding on a fishing trip plan
[0203] Output: Fishing trip plan confirmation notification
[0204] Specifically, the user selects a fishing trip plan on the app and presses the confirm button.
[0205] Step 15:
[0206] The server retrieves information on partner fishing tackle manufacturers and retailers.
[0207] Input: Fishing trip plan confirmation notification
[0208] Output: Recommended fishing gear information and retailer information
[0209] Specifically, the server accesses the database to retrieve information about relevant fishing tackle and retailers.
[0210] Step 16:
[0211] The server sends recommended fishing gear and store information to the terminal.
[0212] Input: Recommended fishing gear and retailer information
[0213] Output: Information sent to the terminal
[0214] Specifically, the server converts recommended fishing gear information and retailer information into JSON format and sends it to the terminal using the HTTPS protocol.
[0215] Step 17:
[0216] The device displays recommended fishing gear and store information to the user.
[0217] Input: Information sent from the server
[0218] Output: Recommended fishing gear and retailer information displayed to the user.
[0219] Specifically, the device displays the following on the app's UI: "Recommended lure: Lure from a specified manufacturer, Retailer: Specified retailer (Address: Specific residential area, Business hours: 9:00-18:00)."
[0220] In this way, the system provides users with comprehensive support for their fishing trips.
[0221] (Application Example 1)
[0222] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0223] In food delivery, a system that provides optimal delivery timing and routes is necessary to improve delivery efficiency and customer satisfaction. However, current systems do not fully utilize historical data, and their calculation of optimal routes based on real-time traffic information is insufficient. As a result, delivery delays and inefficiencies occur. To solve these problems, it is necessary to improve the accuracy of delivery forecasting and route optimization.
[0224] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0225] In this invention, the server includes a user transport plan input means, a location information acquisition means, a delivery prediction database reference means, a delivery prediction calculation means, a traffic information acquisition means, and an optimal route calculation means. This makes it possible to provide highly accurate delivery predictions and optimal routes based on past logistics data and real-time traffic information.
[0226] "User transportation plan input means" refers to a device or interface for users to input delivery destinations and order information.
[0227] "Location information acquisition means" refers to means for acquiring the current location of a device or the location information of a destination.
[0228] "Delivery prediction database referencing means" refers to a means of accessing a database containing past delivery data and obtaining necessary information.
[0229] "Delivery prediction calculation means" refers to algorithms and models used to analyze past delivery data and predict future delivery timings.
[0230] "Calculation result display means" refers to a device or interface that visually displays calculated delivery timing and route information to the user.
[0231] "Means of acquiring traffic information" refers to methods of obtaining information to understand traffic conditions in real time and use it to optimize delivery routes.
[0232] "Optimal route calculation means" refers to algorithms and models for calculating the optimal delivery route based on location information and traffic information.
[0233] "Storage method" refers to a means of saving delivery information and logistics data entered by users to a database.
[0234] "Display means" refers to devices or interfaces that visually provide users with information stored in a database.
[0235] This invention provides a system that supports efficient food delivery. Specific embodiments will be described in detail based on the roles of the server, terminal, and user.
[0236] User input and information retrieval
[0237] The user enters order information and delivery address information into the food delivery app. For example, if the user enters "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the device receives the information from the user. This information includes, for example, location information (latitude and longitude).
[0238] Location information acquisition and delivery prediction
[0239] The terminal acquires location information and uses that information to access the database using a delivery prediction database reference mechanism. The server retrieves past delivery data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past delivery data under similar conditions. The server uses a delivery prediction calculation mechanism to calculate the optimal delivery timing from the analyzed data. For example, if it concludes that "18:30 to 18:45 is the optimal delivery time," it sends that result to the terminal. The terminal can then display this prediction result to the user.
[0240] Acquisition of traffic information and calculation of optimal route
[0241] The server acquires real-time traffic information using a traffic information acquisition method. The terminal calculates the optimal delivery route using an optimal route calculation method based on the current location, the delivery destination location information, and the real-time traffic information. For example, if it calculates the fastest and most efficient route and obtains the result that "the best route is to go through XX Street and enter YY Street," it sends the result to the terminal. The terminal can then display the optimal route information to the delivery person.
[0242] Accumulation and analysis of delivery information
[0243] When a user enters delivery information (order ID, delivery address, delivery completion time, etc.), the terminal sends this information to the server. The server has a storage system for accumulating delivery information, allowing for the collection of delivery data from across the country. Based on the accumulated information, the server analyzes the data and creates a ranking of popular delivery routes. The terminal can then display this ranking to the user, showing them which route has been the most efficient recently.
[0244] Specific example
[0245] If a user selects "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the terminal acquires location information and queries the server. Based on past data, the server predicts that "18:30 to 18:45 is the optimal delivery time," and the terminal displays this to the user. Furthermore, the server acquires real-time traffic information and calculates the optimal route, such as "the best route is to go through XX Street and enter YY Street," and the terminal displays this to the delivery person.
[0246] The following is an example of a prompt sentence to be input using a generative AI model.
[0247] Order ID: 12345
[0248] Delivery address: 1-1-1 Marunouchi, Chiyoda-ku, Tokyo
[0249] Predict: What is the best delivery time and route for this order?
[0250] In this way, the present invention provides users with information on efficient delivery timing and optimal delivery routes, thereby realizing a comprehensive food delivery support system.
[0251] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0252] Step 1:
[0253] The user enters order information and delivery address information.
[0254] The user enters order information (for example, order ID: 12345) and the delivery address (1-1-1 Marunouchi, Chiyoda-ku, Tokyo) into the food delivery app. The device then retrieves this information. The input data consists of the order ID and the delivery location. This data forms the basis for the next step.
[0255] Step 2:
[0256] The device acquires location information and sends it to the server.
[0257] The terminal receives the delivery address location information (latitude and longitude) from the user and sends it to the server. The input data is the delivery address location information, and the output data is the location information sent to the server. Based on this information, the server performs the following processing.
[0258] Step 3:
[0259] The server predicts delivery timing based on past delivery data.
[0260] The server uses a delivery prediction database reference mechanism to retrieve historical delivery data and a delivery prediction calculation mechanism to predict the optimal delivery timing. The input data consists of the delivery destination's location information and historical delivery data, while the output data is the predicted optimal delivery timing (e.g., 18:30 to 18:45). A generative AI model is used for this process to analyze and predict the data.
[0261] Step 4:
[0262] The server sends the prediction results to the terminal, and the terminal displays them to the user.
[0263] The server sends the predicted delivery time to the terminal. The terminal receives this information and displays it to the user through a display device. The input data is the predicted delivery time, and the output data is the predicted result displayed to the user. This allows the user to know the optimal delivery time.
[0264] Step 5:
[0265] The server obtains traffic information and calculates the optimal route.
[0266] The server uses a traffic information acquisition mechanism to obtain real-time traffic information. Next, it uses an optimal route calculation mechanism to calculate the optimal route from the current location to the delivery destination. The input data is location information and traffic information, and the output data is the optimal delivery route (e.g., a route that goes through XX Street and enters YY Street).
[0267] Step 6:
[0268] The server sends optimal route information to the terminal, which then displays it to the delivery person.
[0269] The server sends the calculated optimal route information to the terminal. The terminal receives this information and displays it to the delivery person. The input data is the optimal delivery route, and the output data is the route information displayed to the delivery person. This allows the delivery person to know the most efficient route.
[0270] Step 7:
[0271] The user enters delivery information and the device sends it to the server.
[0272] After delivery is complete, the user enters delivery information (order ID, delivery address, delivery completion time, etc.). The terminal sends this information to the server. The input data is the delivery information, and the output data is the delivery information sent to the server.
[0273] Step 8:
[0274] The server stores and analyzes delivery information.
[0275] The server uses a storage method to accumulate delivery information and saves it to a database. Next, the ranking of popular delivery routes is analyzed based on the accumulated data. The input data consists of new and past delivery information, and the output data is the ranking of popular delivery routes that has been analyzed.
[0276] Step 9:
[0277] The server sends route rankings to the terminal, and the terminal displays them to the user.
[0278] The server sends ranking information of popular delivery routes that have been analyzed to the terminal. The terminal receives this information and displays it to the user. The input data is the ranking of popular delivery routes, and the output data is the ranking information displayed to the user. This allows the user to find the optimal delivery route.
[0279] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0280] This invention provides a system that further optimizes and personalizes the provision of services to users by combining it with an emotion engine that recognizes user emotions. First, the basic system configuration is as follows: it includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a storage means, a display means, a partner fishing tackle manufacturer information acquisition means, a partner retailer information acquisition means, a recommended fishing tackle information display means, and a retailer information display means. Along with these basic means, an emotion engine is added to recognize user emotions and optimize the provision of services.
[0281] User input and emotion recognition
[0282] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay." The device analyzes the user's emotions through facial recognition and voice input, simultaneously with the user's input information, using an emotion engine.
[0283] Location information acquisition and fishing success prediction
[0284] The terminal obtains location information and, based on this information, queries the server for past fishing results data using the fishing results prediction database reference means. The server analyzes the past data using the fishing results prediction calculation means and calculates the appropriate fishing timing.
[0285] Advice provision according to emotions
[0286] The server uses the emotion engine to customize the calculation results based on the obtained user emotion data. For example, when the user shows a sense of uneasiness, provide reassuring advice such as specific fishing methods and preparation points. Also, when showing a positive emotion, recommend new fishing spots and challenging fishing gear.
[0287] The server sends the calculation results to the terminal, and the terminal displays this information to the user. Example: "The peak fishing time in Tokyo Bay is from 19:00 to 20:00. Also, to fish comfortably even at a new location, the recommended lure for sea bass is XYZ made by ABC company."
[0288] Sharing and confirmation of fishing results information
[0289] The user inputs fishing results information. For example, input "Caught 5 sea bass in Tokyo Bay". The terminal sends this information to the server and it is stored in the fishing results database. The server analyzes the data and creates a national popular fishing spot ranking. The terminal displays the ranking information to the user.
[0290] Recommendation of fishing gear and proposed sales stores based on emotions
[0291] When the user determines a fishing plan, the server extracts information on partnered fishing gear manufacturers and sales stores. The server recommends the fishing gear most suitable for the user's emotional state based on the emotion engine. For example, when the user is a beginner and feels uneasy, recommend fishing gear for beginners sold as a set and also provide information on the nearest sales store. Also, when the user is experienced and excited, provide information on new high-performance fishing gear and specific sales stores not usually visited.
[0292] The server sends recommended fishing gear information and store information to the terminal, which then displays it to the user. For example, "Recommended fishing gear: ABC Corporation XYZ, Store: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0293] Specific example
[0294] For example, if a user enters "I want to go fishing in Tokyo Bay" and the emotion engine detects excitement from the user's facial expression, the server will advise the user that "7pm to 8pm is the best time to go fishing," as well as suggest, "Why not try a challenging new lure? We recommend ABC's latest model, the XYZ." If the user is feeling anxious, the server will provide customized information such as, "You can buy a beginner-friendly fishing gear set at XX Fishing Tackle Shop. Here is the nearest store."
[0295] This invention goes beyond simply predicting fishing results, enabling personalized services that are tailored to the user's emotions. This is expected to improve the fishing experience and increase user satisfaction.
[0296] The following describes the processing flow.
[0297] Step 1:
[0298] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[0299] Step 2:
[0300] The device receives input from the user and obtains location information (latitude, longitude, etc.). Furthermore, the emotion engine captures the user's face with the camera and performs facial expression analysis.
[0301] Step 3:
[0302] The emotion engine analyzes the user's emotion and transmits the result to the terminal. For example, it determines whether it is a "positive emotion" or a "negative emotion".
[0303] Step 4:
[0304] Based on the location information and emotion data, the terminal uses the fishing result prediction database reference means to query the server for past fishing result data.
[0305] Example: GET / api / fishing / prediction?location=TokyoBay
[0306] Step 5:
[0307] The server receives the request and extracts past fishing result data from the database.
[0308] Database query example: SELECT FROM FishingData WHERE location='TokyoBay'
[0309] Step 6:
[0310] Based on the data extracted by the server, fishing result prediction is performed using an AI algorithm or a machine learning model. The past fishing result data is analyzed to calculate the optimal fishing timing.
[0311] Step 7:
[0312] The server returns the analysis result to the terminal. For example, it transmits data such as "The optimal fishing time is from 19:00 to 20:00".
[0313] Step 8:
[0314] The device generates customized advice based on prediction results and sentiment data. For example, if the sentiment is positive, it might add challenging advice. "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Try out some new lures."
[0315] Step 9:
[0316] The device displays customized prediction results and advice to the user.
[0317] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[0318] Step 10:
[0319] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0320] Step 11:
[0321] The device sends fishing results information from the user to the server.
[0322] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[0323] Step 12:
[0324] The server stores the fishing results information it receives in a database.
[0325] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[0326] Step 13:
[0327] A user requests information about popular fishing spots. The device sends this request to the server.
[0328] Step 14:
[0329] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[0330] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[0331] Step 15:
[0332] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[0333] Step 16:
[0334] The ranking information received by the device is displayed to the user.
[0335] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[0336] Step 17:
[0337] When the user decides on a destination, the device sends that information to the server.
[0338] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[0339] Step 18:
[0340] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[0341] Step 19:
[0342] The server retrieves information about the nearest retailer based on the partner retailer information.
[0343] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[0344] Step 20:
[0345] The server sends recommended fishing gear information and retailer information to the terminal.
[0346] Step 21:
[0347] The device displays fishing gear and retailer information it has received to the user.
[0348] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0349] (Example 2)
[0350] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0351] Traditional fishing catch prediction systems primarily focused on improving prediction accuracy to support users' fishing trip planning, but struggled to provide personalized advice that took into account users' emotions and individual needs. Therefore, there were limitations to improving user satisfaction and the fishing experience. Furthermore, while they accumulated fishing catch information and displayed rankings of popular fishing spots, they lacked features to recommend fishing gear and retailers based on user sentiment.
[0352] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, an emotion recognition means, and a calculation result display means. This makes it possible not only to predict fishing catches based on past fishing catch data, but also to analyze the user's emotion data using an emotion engine and provide personalized services. In addition to accumulating fishing catch information and displaying rankings of popular fishing spots, it is also possible to provide recommended fishing gear and store information according to the user's emotions, thereby improving the user's fishing experience and significantly increasing satisfaction.
[0353] A "user input method" is an interface for users to input information about the fishing locations they want to go to and their fishing trip plans.
[0354] "Location information acquisition means" refers to a means of obtaining the user's current location using location information technology such as GPS.
[0355] A "fishing catch prediction database reference method" is a means of referencing a database that stores past fishing catch data and making predictions based on that data.
[0356] A "fishing catch prediction calculation means" is a means of performing calculations to predict future fishing catches based on past fishing catch data that has been referenced.
[0357] "Emotion recognition means" refers to methods for recognizing a user's emotional state by analyzing data such as facial recognition and voice input.
[0358] The "calculation result display means" is an interface for visually displaying analysis results based on fishing catch predictions and sentiment data to the user.
[0359] "Storage method" refers to a means of saving fishing results information entered by users to a database.
[0360] A "display means" is an interface that provides users with information visually based on information stored in a database.
[0361] "Means for providing recommended fishing gear and retailer information" refers to means for recommending and providing users with appropriate fishing gear and retailer information based on user sentiment data.
[0362] This invention is a system that optimizes and personalizes the delivery of services to users by combining an emotion engine that recognizes the user's emotions. This system uses the following main hardware and software:
[0363] User input means: An interface for users to input fishing locations and fishing trip plans (e.g., a smartphone application).
[0364] Location information acquisition method: The user's current location is obtained using a GPS module.
[0365] Fishing catch prediction database reference means: A means of accessing a server database where past fishing catch data is stored.
[0366] Fishing catch prediction calculation method: Fishing catch prediction is performed using data analysis software (e.g., a Python script) that runs on a server.
[0367] Emotion recognition means: An emotion engine that analyzes the user's facial expressions and voice (e.g., a face recognition / voice analysis engine using a machine learning model).
[0368] Calculation result display means: An interface for visually displaying the analysis results to the user (e.g., a smartphone application).
[0369] Storage method: A database (e.g., SQL database) for storing fishing results information entered by users.
[0370] Display method: An interface for displaying ranking information and other data to the user based on information in a database (e.g., a smartphone application).
[0371] Means of providing recommended fishing gear and retailer information: Recommendation systems based on user sentiment data (e.g., machine learning-based recommendation engines).
[0372] User input and sentiment recognition
[0373] The user uses a device (smartphone app) to input the location where they want to go fishing. For example, they might input "Tokyo Bay." At this time, the device uses its camera and microphone to perform facial recognition and voice input, and an emotion recognition system analyzes the user's emotions.
[0374] Specific example:
[0375] The user types "Tokyo Bay" into a text box, and the device's camera captures the user's facial expression. An emotion engine analyzes the user's facial expression and voice to recognize emotions such as "happy" or "anxious."
[0376] Location information acquisition and fishing success prediction
[0377] The terminal's GPS module obtains the user's current location, and based on that information, it queries the server for past fishing results data using a fishing results prediction database reference means. The server analyzes the past data using a fishing results prediction calculation means and calculates the optimal timing for fishing.
[0378] Specific example:
[0379] The device obtains the user's current location and sends the location information, along with "Tokyo Bay," to the server. The server's database then refers to past fishing results data to calculate the optimal fishing time.
[0380] Providing advice tailored to your emotions
[0381] The server uses an emotion engine to generate customized calculation results based on the user's emotion data. The server sends the calculation results to the terminal, which then displays them to the user.
[0382] Specific example:
[0383] The server generates and sends advice such as, "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a beginner-friendly fishing gear set." The device then displays this information to the user.
[0384] Sharing and confirming fishing results
[0385] The user enters fishing results, and the device sends this information to a server for storage in a database. The server analyzes the stored data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[0386] Specific example:
[0387] The user enters "I caught 5 sea bass in Tokyo Bay," and the device sends the information to the server. The server adds the data to its database and generates the latest ranking. The device then displays this ranking to the user.
[0388] Emotion-based fishing gear recommendations and store suggestions
[0389] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Using an emotion engine, it recommends fishing tackle and retailer information that best suits the user's emotional state. The server sends the recommended information to the device, which then displays it to the user.
[0390] Specific example:
[0391] The server recognizes that the user is a beginner and feeling anxious, and recommends a beginner-friendly fishing gear set and information on a reliable retailer. The terminal will display something like, "Recommended fishing gear for beginners: Fishing gear set XYZ. Retailer: ABC Fishing Tackle Shop (Address: XX Prefecture, XX City)."
[0392] Prompt example
[0393] "I want to go fishing in Tokyo Bay."
[0394] "I'm a beginner and I'm feeling anxious."
[0395] "I want to know the latest fishing gear information."
[0396] Through the procedures described above, this invention can provide personalized services that are tailored to the user's emotions, thereby improving the fishing experience and increasing user satisfaction.
[0397] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0398] Step 1:
[0399] The user enters the location where they want to go fishing into the device. For example, they might enter "Tokyo Bay." The device receives the user's input data and sends it to the backend. At this time, the camera and microphone are used to capture the user's facial expressions and voice, and this data is sent to the emotion recognition engine.
[0400] Input: Location information such as "Tokyo Bay", user's facial expression image, audio data
[0401] Data processing / calculation: Convert input location information into a database query format, and run facial image and audio data through an emotion recognition engine to generate analysis data.
[0402] Output: Analyzed emotion data, location data
[0403] Specific actions:
[0404] The user types "Tokyo Bay" into a text box, and the camera captures the user's face. Voice input is also accepted, and that data is sent to the emotion recognition engine in real time. Analysis results are obtained, and the user's emotional state is classified as "excited" or "anxious," etc.
[0405] Step 2:
[0406] The device uses a GPS module to obtain its current location. Based on the obtained location information, it queries the server for data through a fishing catch prediction database reference mechanism.
[0407] Input: User's current location information
[0408] Data processing / calculation: Convert current location information into a database query format and send it to the server.
[0409] Output: Inquiry results based on location information (past fishing results data)
[0410] Specific actions:
[0411] The device collects data from its GPS module hardware to determine the user's current location. This location information is then formatted to query the fishing success prediction database and sent to the server.
[0412] Step 3:
[0413] The server references a fishing catch prediction database and performs a fishing catch prediction calculation based on past fishing data. It generates calculation results and performs filtering and customization based on sentiment data.
[0414] Input: Past fishing results data, location information, sentiment data
[0415] Data Processing / Calculation: Analyze fishing results data and calculate the optimal fishing timing based on current location information and emotional data.
[0416] Output: Emotion-customized fishing catch prediction data
[0417] Specific actions:
[0418] The server retrieves past fishing results data from the database and compares it with the user's current location. Based on the user's emotional state, for example, if they are "excited," the server recommends new fishing spots; if they are anxious, it provides detailed instructions on how to fish.
[0419] Step 4:
[0420] The server generates fishing catch prediction data and sends it to the terminal, which then displays the analysis results to the user.
[0421] Input: Emotion-based customized fishing catch prediction data
[0422] Data processing / calculation: Convert customized data into a format for terminal display.
[0423] Output: Information displayed to the user
[0424] Specific actions:
[0425] The device displays information such as the optimal fishing time and recommended fishing gear based on data received from the server. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a fishing gear set suitable for beginners."
[0426] Step 5:
[0427] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The terminal sends this information to the server, where it is stored in the database.
[0428] Input: Fishing results information
[0429] Data processing / calculation: Convert fishing results data to a database storage format.
[0430] Output: Accumulated fishing results data
[0431] Specific actions:
[0432] A user enters fishing results into the app and reports, for example, "I caught 5 sea bass." The device collects this data, sends it to a server, and stores it in a database.
[0433] Step 6:
[0434] The server analyzes accumulated fishing results data and creates a ranking of popular fishing spots nationwide. The terminal then displays this ranking information to the user.
[0435] Input: Accumulated fishing results data
[0436] Data Processing / Calculation: Statistical processing of fishing results data and organization into ranking format.
[0437] Output: Popular Fishing Spot Ranking
[0438] Specific actions:
[0439] The server extracts fishing results data from across the country from the database and performs statistical processing. It organizes popular fishing spots into a ranking format and sends this information to the terminal. The terminal then displays this ranking information to the user.
[0440] Step 7:
[0441] The server extracts information on affiliated fishing tackle manufacturers and retailers, and recommends the most suitable fishing tackle and retailer information based on an emotion recognition engine. The server sends the recommended information to the terminal, which then displays it to the user.
[0442] Input: User sentiment data, fishing trip plan
[0443] Data Processing / Calculation: Generates optimal fishing gear and retailer information based on emotional data and fishing trip plans.
[0444] Output: Recommended fishing gear information, retailer information
[0445] Specific actions:
[0446] The server analyzes the user's emotional data and fishing trip plan, generating optimal choices based on their emotions. For example, a beginner's set for beginners, or a specific store they wouldn't normally visit for those with high-performance fishing gear. The terminal then displays "Recommended fishing gear: XX Company YY, Store: ZZ Fishing Tackle Shop (address, business hours)."
[0447] (Application Example 2)
[0448] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0449] Current food delivery systems face the challenge of failing to provide personalized recommendations based on user emotions, making it difficult to fully enhance user satisfaction. Furthermore, there is a need to provide a better service experience by offering optimal recommendations tailored to the user's emotional state. Traditional systems, which provide uniform recommendations without considering user emotions, often fail to meet user needs.
[0450] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0451] In this invention, the server includes emotion recognition means, emotion-based recommendation means, and database referencing means. This makes it possible to analyze the user's emotional state in real time and recommend the most suitable food delivery menu or restaurant based on the results. Specifically, by recommending relaxing dishes when the user is feeling stressed, and new dishes when the user is showing positive emotions, user satisfaction can be increased.
[0452] A "user input means" is an interface device that allows a user to input information into a system.
[0453] "Location information acquisition means" refers to technologies for acquiring the user's current location information, and utilizes GPS or other location determination technologies.
[0454] The "fishing catch prediction database referencing method" is a technology for accessing a database containing past fishing catch data and obtaining necessary information.
[0455] A "fishing catch prediction calculation means" is a computing device or software used to predict fishing catches based on acquired data.
[0456] A "calculation result display means" is an output device for visually presenting the calculation results to the user.
[0457] "Emotion recognition means" refers to technologies for analyzing a user's emotions, such as facial recognition and voice analysis.
[0458] "Emotion-based recommendation methods" are technologies that generate optimal recommendation information based on acquired emotional data.
[0459] "Storage means" refers to a database or storage system for storing data collected from users.
[0460] "Display means" refers to a monitor, smartphone screen, or other display device used to visually present information to a user.
[0461] A "database referencing means" is a function that accesses a database in order to retrieve specific information.
[0462] A "recommendation method" is a technology used to suggest new and recommended information or products to users.
[0463] This invention is a system that optimizes food delivery services for users and provides personalized recommendations by combining an emotion engine that recognizes user emotions. Specific embodiments of this system are described below.
[0464] This system includes user input means, location information acquisition means, emotion recognition means, emotion-based recommendation means, database reference means, and calculation result display means. It is also implemented through communication between the server and the user's terminal.
[0465] User input and sentiment recognition
[0466] For example, a user might use their smartphone to input their desired dishes and restaurant information into a food delivery app. The smartphone's camera also captures the user's face, and an emotion recognition system analyzes the user's emotions in real time. This system uses technologies such as OpenCV and EmotionRecognizer to determine emotions like stress, joy, and relaxation from the user's facial expressions and voice.
[0467] Emotion-based recommendations and database referrals
[0468] The server uses a database referencing mechanism to retrieve past order data and rating information based on acquired location information and user sentiment data. The sentiment-based recommendation mechanism then uses this data to select the most suitable dishes and restaurants for the user's emotional state. For example, if the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes.
[0469] Display of calculation results
[0470] The server generates the calculation results and sends them to the user's terminal. The user's terminal displays these results and provides specific food and restaurant information. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food," and then list specific menu items as options.
[0471] Specific example
[0472] As a concrete example, a user enters "Italian" and has the app scan their face. The emotion recognition system analyzes the user's facial expression and recognizes that they are feeling stressed. The emotion-based recommendation system then displays a message saying, "To reduce stress, try a healthy salad or a familiar comfort food," and recommends several specific menu items.
[0473] Example of a prompt
[0474] "Users are experiencing stress. Please suggest some healthy food menu options."
[0475] "Recommend new and unique dishes to users who are experiencing positive emotions."
[0476] This system enables personalized food delivery recommendations based on the user's emotional state, thereby improving user satisfaction.
[0477] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0478] Step 1:
[0479] The user enters information about their desired food or restaurant into a food delivery app on their smartphone. Simultaneously, a facial image is captured via the smartphone's camera. This inputs both the user's preferences and facial image data. This data is then analyzed using emotion recognition technology.
[0480] Step 2:
[0481] The device's emotion recognition system analyzes the user's emotions based on captured facial images. Using technologies such as EmotionRecognizer, it extracts feature data from the facial image and determines emotions such as stress, joy, and relaxation. This analysis result is output as emotion data.
[0482] Step 3:
[0483] The device obtains the user's location information. Using location information acquisition methods such as GPS, it determines the user's current location and obtains that location information. This information is then sent to the server.
[0484] Step 4:
[0485] The server receives the acquired sentiment data and location information. Using a sentiment-based recommendation system, the server retrieves past order data and rating information using a database referencing system. This allows it to search for information on dishes and restaurants that best suit the user's emotional state.
[0486] Step 5:
[0487] The server uses emotion-based recommendation methods to select the most suitable dishes and restaurants based on the acquired data. If the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes. These recommendation results are generated and sent to the device.
[0488] Step 6:
[0489] The terminal displays the recommendation results received from the server to the user via a calculation result display mechanism. Specific food and restaurant information is provided in a list format, allowing the user to select. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food."
[0490] Step 7:
[0491] The user selects dishes and restaurants from the displayed recommendations. The selection information is then sent back to the server for final order processing. This process completes the food delivery order.
[0492] This series of processes enables personalized food delivery recommendations based on the user's emotional state, thereby increasing user satisfaction.
[0493] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0494] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0495] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0496] [Second Embodiment]
[0497] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0498] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0499] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0500] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0501] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0502] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0503] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0504] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0505] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0506] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0507] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0508] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0509] This invention provides a system that supports efficient fishing by coordinating various means. This section explains how to specifically implement the invention. Three parties are involved in implementing the invention: the user, the server, and the terminal. Each of these will be explained in detail based on their respective roles.
[0510] User input and information retrieval
[0511] The user enters the location where they want to go fishing into the app. For example, if the user enters "I want to fish in Tokyo Bay," the device receives location information from the user. This information includes, for example, location data (latitude, longitude, etc.).
[0512] Location information acquisition and fishing success prediction
[0513] The device acquires location information and uses that information to access the database using a fishing catch prediction database reference mechanism. The server retrieves past fishing catch data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past fishing catch data under similar conditions.
[0514] The server uses a fishing success prediction calculation method to calculate the optimal fishing time from the analyzed data. For example, if it concludes that "7 PM to 8 PM is the best time to fish," it sends that result to the terminal. The terminal can then display this prediction result to the user, informing them of the appropriate fishing time.
[0515] Sharing and confirming fishing results
[0516] When a user enters fishing results (type, number, and location of fish caught, etc.), the terminal sends this information to the server. For example, it might send information such as "I caught 5 sea bass in Tokyo Bay." The server has a means of storing fishing results, which allows fishing results from all over the country to be collected.
[0517] Based on accumulated information, the server analyzes the data and creates a ranking of popular fishing spots. The terminal displays this ranking to the user, showing which locations have been producing good catches recently. For example, it might display information such as "1st place: Tokyo Bay, 2nd place: Lake Biwa, 3rd place: Seto Inland Sea."
[0518] Recommended fishing gear and a guide to retailers.
[0519] When a user decides on a fishing trip plan, the server extracts information from partner fishing tackle manufacturers and retailers. For example, if a user decides to go to Tokyo Bay, the server will recommend the most suitable fishing gear (e.g., specific lures or rods).
[0520] The server sends recommended fishing gear information to the terminal and displays it to the user. It also retrieves information about nearby stores and notifies the user. For example, by displaying "Recommended lure: ABC XYZ, Store: XX Fishing Tackle Shop (Address: AA Ward, Tokyo, Business Hours: 9:00-18:00)", the user can make appropriate preparations.
[0521] Specific example
[0522] If a user selects "fishing in Tokyo Bay," the device acquires location information and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. Furthermore, if the user registers their fishing results, the server compiles this information and displays it as a ranking of "Tokyo Bay as currently the best fishing spot." After that, information on the most suitable fishing gear and retailers is displayed on the device, allowing the user to prepare.
[0523] In this way, the present invention provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailer information, thereby realizing a comprehensive fishing trip support system.
[0524] The following describes the processing flow.
[0525] Step 1:
[0526] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[0527] Step 2:
[0528] The device receives input from the user and obtains location information (latitude, longitude, etc.) for that location.
[0529] Step 3:
[0530] The device uses its location information to access a fishing catch prediction database and queries the server for past fishing catch data.
[0531] Example: GET / api / fishing / prediction?location=TokyoBay
[0532] Step 4:
[0533] The server receives the request and extracts past fishing results data from the database.
[0534] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[0535] Step 5:
[0536] Based on the data extracted by the server, AI algorithms and machine learning models are used to predict fishing results. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[0537] Examples: Time series analysis, applying machine learning models
[0538] Step 6:
[0539] The server returns the analysis results to the terminal. As a prediction, it sends data such as, "The optimal time for fishing is from 7 PM to 8 PM."
[0540] Step 7:
[0541] The device displays the prediction results it has received to the user.
[0542] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM."
[0543] Step 8:
[0544] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0545] Step 9:
[0546] The device sends fishing results information from the user to the server.
[0547] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[0548] Step 10:
[0549] The server stores the fishing results information it receives in a database.
[0550] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[0551] Step 11:
[0552] A user requests information about popular fishing spots. The device sends this request to the server.
[0553] Step 12:
[0554] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[0555] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[0556] Step 13:
[0557] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[0558] Step 14:
[0559] The ranking information received by the device is displayed to the user.
[0560] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[0561] Step 15:
[0562] When the user decides on a destination, the device sends that information to the server.
[0563] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[0564] Step 16:
[0565] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[0566] Step 17:
[0567] The server retrieves information about the nearest retailer based on the partner retailer information.
[0568] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[0569] Step 18:
[0570] The server sends recommended fishing gear information and retailer information to the terminal.
[0571] Step 19:
[0572] The device displays fishing gear and retailer information it has received to the user.
[0573] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0574] (Example 1)
[0575] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0576] In recent years, fishing enthusiasts have been seeking more efficient fishing trips, but they face the challenge of selecting the optimal timing and location. Furthermore, the variety of information available regarding fishing gear selection and purchasing locations means that preparation takes considerable time. It is necessary to eliminate this complex pre-trip preparation process and provide users with a more convenient and efficient fishing support system.
[0577] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0578] In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a recommended fishing gear generation means, and a retailer information acquisition means. This makes it possible for the user to easily obtain information on the optimal fishing timing, fishing location, recommended fishing gear, and retailers.
[0579] "User input means" refers to the means by which users can input information such as the location where they want to go fishing and their fishing results.
[0580] "Location information acquisition means" refers to the means of acquiring the specific location information (latitude and longitude) of a fishing spot specified by the user.
[0581] A "fishing catch prediction database reference means" is a means of accessing a database containing past fishing catch data and referencing that data.
[0582] A "fishing catch prediction calculation method" is a means of predicting fishing catches using AI algorithms or machine learning models based on past fishing catch data.
[0583] The "calculation result display means" is a means for displaying the prediction results obtained by the fishing catch prediction calculation means to the user.
[0584] The "recommended fishing gear generation method" is a method for generating and recommending the optimal fishing gear based on the user's fishing trip plan.
[0585] "Retailer information acquisition method" refers to a method for obtaining information on retailers where recommended fishing equipment can be purchased.
[0586] A "storage method" refers to a means of storing fishing results information entered by users in a database.
[0587] The "ranking display method" is a means of analyzing fishing results information in a database and displaying popular fishing spots in a ranking format.
[0588] This invention is a comprehensive system for supporting fishing trips. This system is realized through the cooperation of three parties: the user, the terminal, and the server. The following describes a specific embodiment of this system.
[0589] User input and information retrieval
[0590] The user enters the location where they want to go fishing into the application (app). This app runs on mobile devices such as smartphones. For example, if the user enters "I want to fish in Tokyo Bay," the app retrieves that information and uses its built-in GPS function and map API (for example, Google Maps API) to determine the specific location information (latitude and longitude).
[0591] Location information acquisition and fishing success prediction
[0592] The device sends its identified location information to the server using the HTTPS protocol. The server runs on a cloud computing service (e.g., AWS EC2). The server accesses a database (e.g., AWS RDS) to retrieve historical fishing data for that area. This fishing data includes the date and time of the catch, the type of fish, and the location.
[0593] Based on the acquired data, the server uses an AI algorithm (for example, using TensorFlow or PyTorch) to predict fishing results. This AI model learns from past data and predicts fishing results at a specified location and time. For example, it might generate a prediction such as "7 PM to 8 PM is the optimal time for fishing." The server sends this prediction result to the terminal, which then displays it to the user.
[0594] Sharing and confirming fishing results
[0595] After fishing, users enter their catch information into the app. For example, they might enter information such as, "I caught 5 sea bass in Tokyo Bay." This information is sent to the server via the device. The server stores the catch information in cloud storage (e.g., AWS S3) and also stores it in a database (AWS RDS). The server then analyzes the catch data using an analysis tool (e.g., Apache Spark) and creates a ranking of popular fishing spots. This ranking information is sent to the device and displayed to the user.
[0596] Recommended fishing gear and a guide to retailers.
[0597] When a user decides on a fishing trip plan, the server retrieves information from partner fishing tackle manufacturers and retailers to generate the most suitable fishing gear. For example, if a user decides to go to Tokyo Bay, the server will recommend specific lures and rods. The server sends this recommendation information and retailer information to the user's device. The device then displays this information to the user. For example, it might provide information such as, "Recommended lure: Lure from a specific manufacturer, Retailer: Specific retailer (Address: XX Ward, Tokyo, Business hours: 9:00-18:00)."
[0598] Examples of specific cases and prompt statements
[0599] For example, if a user selects "fishing in Tokyo Bay," the device obtains location information ("Tokyo Bay") and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. After the fishing trip, if the user registers that they "caught 5 sea bass in Tokyo Bay," the server uses this information to display a ranking of Tokyo Bay as "currently the best fishing spot." In addition, information on the best fishing gear and retailers is displayed on the device, allowing the user to prepare accordingly.
[0600] Examples of prompts for a generative AI model include the following:
[0601] "What is the best time to fish in Tokyo Bay, and what fishing gear do you recommend?"
[0602] This system provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailers, thereby providing comprehensive support for their fishing trips.
[0603] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0604] Step 1:
[0605] The user enters their fishing location into the app. For example, they might enter, "I want to fish in Tokyo Bay."
[0606] Input: Text information about the fishing location
[0607] Output: User input
[0608] Specifically, the user enters their desired fishing location into a text box on the smartphone app and presses the submit button.
[0609] Step 2:
[0610] The device receives user input and obtains location information using GPS functionality or map APIs.
[0611] Input: User input
[0612] Output: Identified location information (latitude and longitude)
[0613] Specifically, the device uses its built-in GPS function to obtain the user's current location and the latitude and longitude of the entered location.
[0614] Step 3:
[0615] The device sends the location information it has acquired to the server.
[0616] Input: Location information (latitude and longitude)
[0617] Output: Location information sent to the server
[0618] Specifically, the device uses the HTTPS protocol to send location information to the server via a POST request.
[0619] Step 4:
[0620] The server receives location information and retrieves past fishing results data from the database.
[0621] Input: Sent location information
[0622] Output: Past fishing results data
[0623] Specifically, the server queries a database such as AWS RDS to retrieve historical fishing data corresponding to the specified location.
[0624] Step 5:
[0625] The server uses an AI algorithm to predict fishing results.
[0626] Input: Past fishing results data
[0627] Output: Fishing catch prediction results
[0628] In practice, the server inputs fishing results data into an AI model (using, for example, TensorFlow or PyTorch) to predict fishing results at a specified location and time. The output might be a prediction such as, "The best time to fish is from 7 PM to 8 PM."
[0629] Step 6:
[0630] The server sends the prediction results to the terminal.
[0631] Input: Fishing catch prediction result
[0632] Output: Prediction results sent to the terminal
[0633] Specifically, the server converts the prediction results into JSON format and sends them to the terminal using the HTTPS protocol.
[0634] Step 7:
[0635] The device displays the prediction results it has received to the user.
[0636] Input: Prediction results sent from the server
[0637] Output: Prediction results displayed to the user
[0638] Specifically, the app's UI displays the prediction results received by the device as "The best time to fish is between 7 PM and 8 PM."
[0639] Step 8:
[0640] After a fishing trip, the user enters their catch information into the app. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0641] Input: Fishing results information
[0642] Output: User's fishing results
[0643] In terms of specific actions, the user enters details of their catch (such as the type and number of fish) into the app's input form and presses the submit button.
[0644] Step 9:
[0645] The device sends fishing results information to the server.
[0646] Input: User's fishing results
[0647] Output: Fishing results information sent to the server
[0648] Specifically, the device sends fishing results information to the server via a POST request using the HTTPS protocol.
[0649] Step 10:
[0650] The server accumulates fishing results and saves them in a database.
[0651] Input: Submitted fishing results information
[0652] Output: Accumulated fishing results data
[0653] Specifically, the server saves the fishing results information it receives to AWS S3 or AWS RDS.
[0654] Step 11:
[0655] The server analyzes fishing results data and generates rankings of popular fishing spots.
[0656] Input: Accumulated fishing results data
[0657] Output: Fishing Spot Ranking
[0658] Specifically, the server periodically uses Apache Spark to perform data analysis and generate ranking data.
[0659] Step 12:
[0660] The server sends the generated ranking to the terminal.
[0661] Input: Fishing Spot Ranking
[0662] Output: Ranking information sent to the terminal
[0663] Specifically, the server converts the ranking data into JSON format and sends it to the terminal using the HTTPS protocol.
[0664] Step 13:
[0665] The ranking information received by the device is displayed to the user.
[0666] Input: Ranking information sent from the server
[0667] Output: Ranking information displayed to the user
[0668] Specifically, the device displays ranking information on the app's UI. For example, it might display "1st: Tokyo Bay, 2nd: Lake Biwa, 3rd: Seto Inland Sea."
[0669] Step 14:
[0670] The user decides on the fishing trip plan.
[0671] Input: Deciding on a fishing trip plan
[0672] Output: Fishing trip plan confirmation notification
[0673] Specifically, the user selects a fishing trip plan on the app and presses the confirm button.
[0674] Step 15:
[0675] The server retrieves information on partner fishing tackle manufacturers and retailers.
[0676] Input: Fishing trip plan confirmation notification
[0677] Output: Recommended fishing gear information and retailer information
[0678] Specifically, the server accesses the database to retrieve information about relevant fishing tackle and retailers.
[0679] Step 16:
[0680] The server sends recommended fishing gear and store information to the terminal.
[0681] Input: Recommended fishing gear and retailer information
[0682] Output: Information sent to the terminal
[0683] Specifically, the server converts recommended fishing gear information and retailer information into JSON format and sends it to the terminal using the HTTPS protocol.
[0684] Step 17:
[0685] The device displays recommended fishing gear and store information to the user.
[0686] Input: Information sent from the server
[0687] Output: Recommended fishing gear and retailer information displayed to the user.
[0688] Specifically, the device displays the following on the app's UI: "Recommended lure: Lure from a specified manufacturer, Retailer: Specified retailer (Address: Specific residential area, Business hours: 9:00-18:00)."
[0689] In this way, the system provides users with comprehensive support for their fishing trips.
[0690] (Application Example 1)
[0691] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0692] In food delivery, a system that provides optimal delivery timing and routes is necessary to improve delivery efficiency and customer satisfaction. However, current systems do not fully utilize historical data, and their calculation of optimal routes based on real-time traffic information is insufficient. As a result, delivery delays and inefficiencies occur. To solve these problems, it is necessary to improve the accuracy of delivery forecasting and route optimization.
[0693] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0694] In this invention, the server includes a user transport plan input means, a location information acquisition means, a delivery prediction database reference means, a delivery prediction calculation means, a traffic information acquisition means, and an optimal route calculation means. This makes it possible to provide highly accurate delivery predictions and optimal routes based on past logistics data and real-time traffic information.
[0695] "User transportation plan input means" refers to a device or interface for users to input delivery destinations and order information.
[0696] "Location information acquisition means" refers to means for acquiring the current location of a device or the location information of a destination.
[0697] "Delivery prediction database referencing means" refers to a means of accessing a database containing past delivery data and obtaining necessary information.
[0698] "Delivery prediction calculation means" refers to algorithms and models used to analyze past delivery data and predict future delivery timings.
[0699] "Calculation result display means" refers to a device or interface that visually displays calculated delivery timing and route information to the user.
[0700] "Means of acquiring traffic information" refers to methods of obtaining information to understand traffic conditions in real time and use it to optimize delivery routes.
[0701] "Optimal route calculation means" refers to algorithms and models for calculating the optimal delivery route based on location information and traffic information.
[0702] "Storage method" refers to a means of saving delivery information and logistics data entered by users to a database.
[0703] "Display means" refers to devices or interfaces that visually provide users with information stored in a database.
[0704] This invention provides a system that supports efficient food delivery. Specific embodiments will be described in detail based on the roles of the server, terminal, and user.
[0705] User input and information retrieval
[0706] The user enters order information and delivery address information into the food delivery app. For example, if the user enters "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the device receives the information from the user. This information includes, for example, location information (latitude and longitude).
[0707] Location information acquisition and delivery prediction
[0708] The terminal acquires location information and uses that information to access the database using a delivery prediction database reference mechanism. The server retrieves past delivery data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past delivery data under similar conditions. The server uses a delivery prediction calculation mechanism to calculate the optimal delivery timing from the analyzed data. For example, if it concludes that "18:30 to 18:45 is the optimal delivery time," it sends that result to the terminal. The terminal can then display this prediction result to the user.
[0709] Acquisition of traffic information and calculation of optimal route
[0710] The server acquires real-time traffic information using a traffic information acquisition method. The terminal calculates the optimal delivery route using an optimal route calculation method based on the current location, the delivery destination location information, and the real-time traffic information. For example, if it calculates the fastest and most efficient route and obtains the result that "the best route is to go through XX Street and enter YY Street," it sends the result to the terminal. The terminal can then display the optimal route information to the delivery person.
[0711] Accumulation and analysis of delivery information
[0712] When a user enters delivery information (order ID, delivery address, delivery completion time, etc.), the terminal sends this information to the server. The server has a storage system for accumulating delivery information, allowing for the collection of delivery data from across the country. Based on the accumulated information, the server analyzes the data and creates a ranking of popular delivery routes. The terminal can then display this ranking to the user, showing them which route has been the most efficient recently.
[0713] Specific example
[0714] If a user selects "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the terminal acquires location information and queries the server. Based on past data, the server predicts that "18:30 to 18:45 is the optimal delivery time," and the terminal displays this to the user. Furthermore, the server acquires real-time traffic information and calculates the optimal route, such as "the best route is to go through XX Street and enter YY Street," and the terminal displays this to the delivery person.
[0715] The following is an example of a prompt sentence to be input using a generative AI model.
[0716] Order ID: 12345
[0717] Delivery address: 1-1-1 Marunouchi, Chiyoda-ku, Tokyo
[0718] Predict: What is the best delivery time and route for this order?
[0719] In this way, the present invention provides users with information on efficient delivery timing and optimal delivery routes, thereby realizing a comprehensive food delivery support system.
[0720] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0721] Step 1:
[0722] The user enters order information and delivery address information.
[0723] The user enters order information (for example, order ID: 12345) and the delivery address (1-1-1 Marunouchi, Chiyoda-ku, Tokyo) into the food delivery app. The device then retrieves this information. The input data consists of the order ID and the delivery location. This data forms the basis for the next step.
[0724] Step 2:
[0725] The device acquires location information and sends it to the server.
[0726] The terminal receives the delivery address location information (latitude and longitude) from the user and sends it to the server. The input data is the delivery address location information, and the output data is the location information sent to the server. Based on this information, the server performs the following processing.
[0727] Step 3:
[0728] The server predicts delivery timing based on past delivery data.
[0729] The server uses a delivery prediction database reference mechanism to retrieve historical delivery data and a delivery prediction calculation mechanism to predict the optimal delivery timing. The input data consists of the delivery destination's location information and historical delivery data, while the output data is the predicted optimal delivery timing (e.g., 18:30 to 18:45). A generative AI model is used for this process to analyze and predict the data.
[0730] Step 4:
[0731] The server sends the prediction results to the terminal, and the terminal displays them to the user.
[0732] The server sends the predicted delivery time to the terminal. The terminal receives this information and displays it to the user through a display device. The input data is the predicted delivery time, and the output data is the predicted result displayed to the user. This allows the user to know the optimal delivery time.
[0733] Step 5:
[0734] The server obtains traffic information and calculates the optimal route.
[0735] The server uses a traffic information acquisition mechanism to obtain real-time traffic information. Next, it uses an optimal route calculation mechanism to calculate the optimal route from the current location to the delivery destination. The input data is location information and traffic information, and the output data is the optimal delivery route (e.g., a route that goes through XX Street and enters YY Street).
[0736] Step 6:
[0737] The server sends optimal route information to the terminal, which then displays it to the delivery person.
[0738] The server sends the calculated optimal route information to the terminal. The terminal receives this information and displays it to the delivery person. The input data is the optimal delivery route, and the output data is the route information displayed to the delivery person. This allows the delivery person to know the most efficient route.
[0739] Step 7:
[0740] The user enters delivery information and the device sends it to the server.
[0741] After delivery is complete, the user enters delivery information (order ID, delivery address, delivery completion time, etc.). The terminal sends this information to the server. The input data is the delivery information, and the output data is the delivery information sent to the server.
[0742] Step 8:
[0743] The server stores and analyzes delivery information.
[0744] The server uses a storage method to accumulate delivery information and saves it to a database. Next, the ranking of popular delivery routes is analyzed based on the accumulated data. The input data consists of new and past delivery information, and the output data is the ranking of popular delivery routes that has been analyzed.
[0745] Step 9:
[0746] The server sends route rankings to the terminal, and the terminal displays them to the user.
[0747] The server sends ranking information of popular delivery routes that have been analyzed to the terminal. The terminal receives this information and displays it to the user. The input data is the ranking of popular delivery routes, and the output data is the ranking information displayed to the user. This allows the user to find the optimal delivery route.
[0748] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0749] This invention provides a system that further optimizes and personalizes the provision of services to users by combining it with an emotion engine that recognizes user emotions. First, the basic system configuration is as follows: it includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a storage means, a display means, a partner fishing tackle manufacturer information acquisition means, a partner retailer information acquisition means, a recommended fishing tackle information display means, and a retailer information display means. Along with these basic means, an emotion engine is added to recognize user emotions and optimize the provision of services.
[0750] User input and emotion recognition
[0751] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay." The device analyzes the user's emotions through facial recognition and voice input, simultaneously with the user's input information, using an emotion engine.
[0752] Location information acquisition and fishing success prediction
[0753] The terminal acquires location information and uses that information to query the server for past fishing results data using a fishing results prediction database reference means. Based on the past data, the server uses a fishing results prediction calculation means to perform analysis and calculate the appropriate timing for fishing.
[0754] Providing advice tailored to your emotions
[0755] The server uses an emotion engine to customize calculation results based on the user's emotional data. For example, if a user expresses anxiety, it provides reassuring advice such as specific fishing techniques and preparation tips. Conversely, if a user expresses positive emotions, it recommends new fishing spots or challenging fishing equipment.
[0756] The server sends the calculation results to the terminal, which then displays this information to the user. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[0757] Sharing and confirming fishing results
[0758] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The device sends this information to the server, where it is stored in the fishing results database. The server analyzes this data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[0759] Emotion-based fishing gear recommendations and store suggestions
[0760] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Based on its emotion engine, the server recommends fishing tackle that best suits the user's emotional state. For example, if the user is a beginner and feeling anxious, the server will recommend beginner-friendly fishing tackle sets and provide information on the nearest retailer. If the user is experienced and excited, the server will provide information on new, high-performance fishing tackle and specific retailers they might not normally visit.
[0761] The server sends recommended fishing gear information and store information to the terminal, which then displays it to the user. For example, "Recommended fishing gear: ABC Corporation XYZ, Store: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0762] Specific example
[0763] For example, if a user enters "I want to go fishing in Tokyo Bay" and the emotion engine detects excitement from the user's facial expression, the server will advise the user that "7pm to 8pm is the best time to go fishing," as well as suggest, "Why not try a challenging new lure? We recommend ABC's latest model, the XYZ." If the user is feeling anxious, the server will provide customized information such as, "You can buy a beginner-friendly fishing gear set at XX Fishing Tackle Shop. Here is the nearest store."
[0764] This invention goes beyond simply predicting fishing results, enabling personalized services that are tailored to the user's emotions. This is expected to improve the fishing experience and increase user satisfaction.
[0765] The following describes the processing flow.
[0766] Step 1:
[0767] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[0768] Step 2:
[0769] The device receives input from the user and obtains location information (latitude, longitude, etc.). Furthermore, the emotion engine captures the user's face with the camera and performs facial expression analysis.
[0770] Step 3:
[0771] The emotion engine analyzes the user's emotions and sends the results to the device. For example, it might determine whether the emotion is "positive" or "negative."
[0772] Step 4:
[0773] The device uses location information and sentiment data to query the server for past fishing results data using a fishing results prediction database reference mechanism.
[0774] Example: GET / api / fishing / prediction?location=TokyoBay
[0775] Step 5:
[0776] The server receives the request and extracts past fishing results data from the database.
[0777] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[0778] Step 6:
[0779] Based on data extracted by the server, fishing success is predicted using AI algorithms and machine learning models. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[0780] Step 7:
[0781] The server returns the analysis results to the terminal. For example, it sends data such as "The optimal time for fishing is from 7 PM to 8 PM."
[0782] Step 8:
[0783] The device generates customized advice based on prediction results and sentiment data. For example, if the sentiment is positive, it might add challenging advice. "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Try out some new lures."
[0784] Step 9:
[0785] The device displays customized prediction results and advice to the user.
[0786] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[0787] Step 10:
[0788] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[0789] Step 11:
[0790] The device sends fishing results information from the user to the server.
[0791] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[0792] Step 12:
[0793] The server stores the fishing results information it receives in a database.
[0794] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[0795] Step 13:
[0796] A user requests information about popular fishing spots. The device sends this request to the server.
[0797] Step 14:
[0798] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[0799] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[0800] Step 15:
[0801] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[0802] Step 16:
[0803] The ranking information received by the device is displayed to the user.
[0804] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[0805] Step 17:
[0806] When the user decides on a destination, the device sends that information to the server.
[0807] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[0808] Step 18:
[0809] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[0810] Step 19:
[0811] The server retrieves information about the nearest retailer based on the partner retailer information.
[0812] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[0813] Step 20:
[0814] The server sends recommended fishing gear information and retailer information to the terminal.
[0815] Step 21:
[0816] The device displays fishing gear and retailer information it has received to the user.
[0817] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[0818] (Example 2)
[0819] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0820] Traditional fishing catch prediction systems primarily focused on improving prediction accuracy to support users' fishing trip planning, but struggled to provide personalized advice that took into account users' emotions and individual needs. Therefore, there were limitations to improving user satisfaction and the fishing experience. Furthermore, while they accumulated fishing catch information and displayed rankings of popular fishing spots, they lacked features to recommend fishing gear and retailers based on user sentiment.
[0821] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, an emotion recognition means, and a calculation result display means. This makes it possible not only to predict fishing catches based on past fishing catch data, but also to analyze the user's emotion data using an emotion engine and provide personalized services. In addition to accumulating fishing catch information and displaying rankings of popular fishing spots, it is also possible to provide recommended fishing gear and store information according to the user's emotions, thereby improving the user's fishing experience and significantly increasing satisfaction.
[0822] A "user input method" is an interface for users to input information about the fishing locations they want to go to and their fishing trip plans.
[0823] "Location information acquisition means" refers to a means of obtaining the user's current location using location information technology such as GPS.
[0824] A "fishing catch prediction database reference method" is a means of referencing a database that stores past fishing catch data and making predictions based on that data.
[0825] A "fishing catch prediction calculation means" is a means of performing calculations to predict future fishing catches based on past fishing catch data that has been referenced.
[0826] "Emotion recognition means" refers to methods for recognizing a user's emotional state by analyzing data such as facial recognition and voice input.
[0827] The "calculation result display means" is an interface for visually displaying analysis results based on fishing catch predictions and sentiment data to the user.
[0828] "Storage method" refers to a means of saving fishing results information entered by users to a database.
[0829] A "display means" is an interface that provides users with information visually based on information stored in a database.
[0830] "Means for providing recommended fishing gear and retailer information" refers to means for recommending and providing users with appropriate fishing gear and retailer information based on user sentiment data.
[0831] This invention is a system that optimizes and personalizes the delivery of services to users by combining an emotion engine that recognizes the user's emotions. This system uses the following main hardware and software:
[0832] User input means: An interface for users to input fishing locations and fishing trip plans (e.g., a smartphone application).
[0833] Location information acquisition method: The user's current location is obtained using a GPS module.
[0834] Fishing catch prediction database reference means: A means of accessing a server database where past fishing catch data is stored.
[0835] Fishing catch prediction calculation method: Fishing catch prediction is performed using data analysis software (e.g., a Python script) that runs on a server.
[0836] Emotion recognition means: An emotion engine that analyzes the user's facial expressions and voice (e.g., a face recognition / voice analysis engine using a machine learning model).
[0837] Calculation result display means: An interface for visually displaying the analysis results to the user (e.g., a smartphone application).
[0838] Storage method: A database (e.g., SQL database) for storing fishing results information entered by users.
[0839] Display method: An interface for displaying ranking information and other data to the user based on information in a database (e.g., a smartphone application).
[0840] Means of providing recommended fishing gear and retailer information: Recommendation systems based on user sentiment data (e.g., machine learning-based recommendation engines).
[0841] User input and sentiment recognition
[0842] The user uses a device (smartphone app) to input the location where they want to go fishing. For example, they might input "Tokyo Bay." At this time, the device uses its camera and microphone to perform facial recognition and voice input, and an emotion recognition system analyzes the user's emotions.
[0843] Specific example:
[0844] The user types "Tokyo Bay" into a text box, and the device's camera captures the user's facial expression. An emotion engine analyzes the user's facial expression and voice to recognize emotions such as "happy" or "anxious."
[0845] Location information acquisition and fishing success prediction
[0846] The terminal's GPS module obtains the user's current location, and based on that information, it queries the server for past fishing results data using a fishing results prediction database reference means. The server analyzes the past data using a fishing results prediction calculation means and calculates the optimal timing for fishing.
[0847] Specific example:
[0848] The device obtains the user's current location and sends the location information, along with "Tokyo Bay," to the server. The server's database then refers to past fishing results data to calculate the optimal fishing time.
[0849] Providing advice tailored to your emotions
[0850] The server uses an emotion engine to generate customized calculation results based on the user's emotion data. The server sends the calculation results to the terminal, which then displays them to the user.
[0851] Specific example:
[0852] The server generates and sends advice such as, "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a beginner-friendly fishing gear set." The device then displays this information to the user.
[0853] Sharing and confirming fishing results
[0854] The user enters fishing results, and the device sends this information to a server for storage in a database. The server analyzes the stored data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[0855] Specific example:
[0856] The user enters "I caught 5 sea bass in Tokyo Bay," and the device sends the information to the server. The server adds the data to its database and generates the latest ranking. The device then displays this ranking to the user.
[0857] Emotion-based fishing gear recommendations and store suggestions
[0858] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Using an emotion engine, it recommends fishing tackle and retailer information that best suits the user's emotional state. The server sends the recommended information to the device, which then displays it to the user.
[0859] Specific example:
[0860] The server recognizes that the user is a beginner and feeling anxious, and recommends a beginner-friendly fishing gear set and information on a reliable retailer. The terminal will display something like, "Recommended fishing gear for beginners: Fishing gear set XYZ. Retailer: ABC Fishing Tackle Shop (Address: XX Prefecture, XX City)."
[0861] Prompt example
[0862] "I want to go fishing in Tokyo Bay."
[0863] "I'm a beginner and I'm feeling anxious."
[0864] "I want to know the latest fishing gear information."
[0865] Through the procedures described above, this invention can provide personalized services that are tailored to the user's emotions, thereby improving the fishing experience and increasing user satisfaction.
[0866] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0867] Step 1:
[0868] The user enters the location where they want to go fishing into the device. For example, they might enter "Tokyo Bay." The device receives the user's input data and sends it to the backend. At this time, the camera and microphone are used to capture the user's facial expressions and voice, and this data is sent to the emotion recognition engine.
[0869] Input: Location information such as "Tokyo Bay", user's facial expression image, audio data
[0870] Data processing / calculation: Convert input location information into a database query format, and run facial image and audio data through an emotion recognition engine to generate analysis data.
[0871] Output: Analyzed emotion data, location data
[0872] Specific actions:
[0873] The user types "Tokyo Bay" into a text box, and the camera captures the user's face. Voice input is also accepted, and that data is sent to the emotion recognition engine in real time. Analysis results are obtained, and the user's emotional state is classified as "excited" or "anxious," etc.
[0874] Step 2:
[0875] The device uses a GPS module to obtain its current location. Based on the obtained location information, it queries the server for data through a fishing catch prediction database reference mechanism.
[0876] Input: User's current location information
[0877] Data processing / calculation: Convert current location information into a database query format and send it to the server.
[0878] Output: Inquiry results based on location information (past fishing results data)
[0879] Specific actions:
[0880] The device collects data from its GPS module hardware to determine the user's current location. This location information is then formatted to query the fishing success prediction database and sent to the server.
[0881] Step 3:
[0882] The server references a fishing catch prediction database and performs a fishing catch prediction calculation based on past fishing data. It generates calculation results and performs filtering and customization based on sentiment data.
[0883] Input: Past fishing results data, location information, sentiment data
[0884] Data Processing / Calculation: Analyze fishing results data and calculate the optimal fishing timing based on current location information and emotional data.
[0885] Output: Emotion-customized fishing catch prediction data
[0886] Specific actions:
[0887] The server retrieves past fishing results data from the database and compares it with the user's current location. Based on the user's emotional state, for example, if they are "excited," the server recommends new fishing spots; if they are anxious, it provides detailed instructions on how to fish.
[0888] Step 4:
[0889] The server generates fishing catch prediction data and sends it to the terminal, which then displays the analysis results to the user.
[0890] Input: Emotion-based customized fishing catch prediction data
[0891] Data processing / calculation: Convert customized data into a format for terminal display.
[0892] Output: Information displayed to the user
[0893] Specific actions:
[0894] The device displays information such as the optimal fishing time and recommended fishing gear based on data received from the server. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a fishing gear set suitable for beginners."
[0895] Step 5:
[0896] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The terminal sends this information to the server, where it is stored in the database.
[0897] Input: Fishing results information
[0898] Data processing / calculation: Convert fishing results data to a database storage format.
[0899] Output: Accumulated fishing results data
[0900] Specific actions:
[0901] A user enters fishing results into the app and reports, for example, "I caught 5 sea bass." The device collects this data, sends it to a server, and stores it in a database.
[0902] Step 6:
[0903] The server analyzes accumulated fishing results data and creates a ranking of popular fishing spots nationwide. The terminal then displays this ranking information to the user.
[0904] Input: Accumulated fishing results data
[0905] Data Processing / Calculation: Statistical processing of fishing results data and organization into ranking format.
[0906] Output: Popular Fishing Spot Ranking
[0907] Specific actions:
[0908] The server extracts fishing results data from across the country from the database and performs statistical processing. It organizes popular fishing spots into a ranking format and sends this information to the terminal. The terminal then displays this ranking information to the user.
[0909] Step 7:
[0910] The server extracts information on affiliated fishing tackle manufacturers and retailers, and recommends the most suitable fishing tackle and retailer information based on an emotion recognition engine. The server sends the recommended information to the terminal, which then displays it to the user.
[0911] Input: User sentiment data, fishing trip plan
[0912] Data Processing / Calculation: Generates optimal fishing gear and retailer information based on emotional data and fishing trip plans.
[0913] Output: Recommended fishing gear information, retailer information
[0914] Specific actions:
[0915] The server analyzes the user's emotional data and fishing trip plan, generating optimal choices based on their emotions. For example, a beginner's set for beginners, or a specific store they wouldn't normally visit for those with high-performance fishing gear. The terminal then displays "Recommended fishing gear: XX Company YY, Store: ZZ Fishing Tackle Shop (address, business hours)."
[0916] (Application Example 2)
[0917] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0918] Current food delivery systems face the challenge of failing to provide personalized recommendations based on user emotions, making it difficult to fully enhance user satisfaction. Furthermore, there is a need to provide a better service experience by offering optimal recommendations tailored to the user's emotional state. Traditional systems, which provide uniform recommendations without considering user emotions, often fail to meet user needs.
[0919] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0920] In this invention, the server includes emotion recognition means, emotion-based recommendation means, and database referencing means. This makes it possible to analyze the user's emotional state in real time and recommend the most suitable food delivery menu or restaurant based on the results. Specifically, by recommending relaxing dishes when the user is feeling stressed, and new dishes when the user is showing positive emotions, user satisfaction can be increased.
[0921] A "user input means" is an interface device that allows a user to input information into a system.
[0922] "Location information acquisition means" refers to technologies for acquiring the user's current location information, and utilizes GPS or other location determination technologies.
[0923] The "fishing catch prediction database referencing method" is a technology for accessing a database containing past fishing catch data and obtaining necessary information.
[0924] A "fishing catch prediction calculation means" is a computing device or software used to predict fishing catches based on acquired data.
[0925] A "calculation result display means" is an output device for visually presenting the calculation results to the user.
[0926] "Emotion recognition means" refers to technologies for analyzing a user's emotions, such as facial recognition and voice analysis.
[0927] "Emotion-based recommendation methods" are technologies that generate optimal recommendation information based on acquired emotional data.
[0928] "Storage means" refers to a database or storage system for storing data collected from users.
[0929] "Display means" refers to a monitor, smartphone screen, or other display device used to visually present information to a user.
[0930] A "database referencing means" is a function that accesses a database in order to retrieve specific information.
[0931] A "recommendation method" is a technology used to suggest new and recommended information or products to users.
[0932] This invention is a system that optimizes food delivery services for users and provides personalized recommendations by combining an emotion engine that recognizes user emotions. Specific embodiments of this system are described below.
[0933] This system includes user input means, location information acquisition means, emotion recognition means, emotion-based recommendation means, database reference means, and calculation result display means. It is also implemented through communication between the server and the user's terminal.
[0934] User input and sentiment recognition
[0935] For example, a user might use their smartphone to input their desired dishes and restaurant information into a food delivery app. The smartphone's camera also captures the user's face, and an emotion recognition system analyzes the user's emotions in real time. This system uses technologies such as OpenCV and EmotionRecognizer to determine emotions like stress, joy, and relaxation from the user's facial expressions and voice.
[0936] Emotion-based recommendations and database referrals
[0937] The server uses a database referencing mechanism to retrieve past order data and rating information based on acquired location information and user sentiment data. The sentiment-based recommendation mechanism then uses this data to select the most suitable dishes and restaurants for the user's emotional state. For example, if the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes.
[0938] Display of calculation results
[0939] The server generates the calculation results and sends them to the user's terminal. The user's terminal displays these results and provides specific food and restaurant information. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food," and then list specific menu items as options.
[0940] Specific example
[0941] As a concrete example, a user enters "Italian" and has the app scan their face. The emotion recognition system analyzes the user's facial expression and recognizes that they are feeling stressed. The emotion-based recommendation system then displays a message saying, "To reduce stress, try a healthy salad or a familiar comfort food," and recommends several specific menu items.
[0942] Example of a prompt
[0943] "Users are experiencing stress. Please suggest some healthy food menu options."
[0944] "Recommend new and unique dishes to users who are experiencing positive emotions."
[0945] This system enables personalized food delivery recommendations based on the user's emotional state, thereby improving user satisfaction.
[0946] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0947] Step 1:
[0948] The user enters information about their desired food or restaurant into a food delivery app on their smartphone. Simultaneously, a facial image is captured via the smartphone's camera. This inputs both the user's preferences and facial image data. This data is then analyzed using emotion recognition technology.
[0949] Step 2:
[0950] The device's emotion recognition system analyzes the user's emotions based on captured facial images. Using technologies such as EmotionRecognizer, it extracts feature data from the facial image and determines emotions such as stress, joy, and relaxation. This analysis result is output as emotion data.
[0951] Step 3:
[0952] The device obtains the user's location information. Using location information acquisition methods such as GPS, it determines the user's current location and obtains that location information. This information is then sent to the server.
[0953] Step 4:
[0954] The server receives the acquired sentiment data and location information. Using a sentiment-based recommendation system, the server retrieves past order data and rating information using a database referencing system. This allows it to search for information on dishes and restaurants that best suit the user's emotional state.
[0955] Step 5:
[0956] The server uses emotion-based recommendation methods to select the most suitable dishes and restaurants based on the acquired data. If the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes. These recommendation results are generated and sent to the device.
[0957] Step 6:
[0958] The terminal displays the recommendation results received from the server to the user via a calculation result display mechanism. Specific food and restaurant information is provided in a list format, allowing the user to select. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food."
[0959] Step 7:
[0960] The user selects dishes and restaurants from the displayed recommendations. The selection information is then sent back to the server for final order processing. This process completes the food delivery order.
[0961] This series of processes enables personalized food delivery recommendations based on the user's emotional state, thereby increasing user satisfaction.
[0962] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0963] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0964] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0965] [Third Embodiment]
[0966] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0967] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0968] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0969] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0970] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0971] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0972] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0973] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0974] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0975] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0976] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0977] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0978] This invention provides a system that supports efficient fishing by coordinating various means. This section explains how to specifically implement the invention. Three parties are involved in implementing the invention: the user, the server, and the terminal. Each of these will be explained in detail based on their respective roles.
[0979] User input and information retrieval
[0980] The user enters the location where they want to go fishing into the app. For example, if the user enters "I want to fish in Tokyo Bay," the device receives location information from the user. This information includes, for example, location data (latitude, longitude, etc.).
[0981] Location information acquisition and fishing success prediction
[0982] The device acquires location information and uses that information to access the database using a fishing catch prediction database reference mechanism. The server retrieves past fishing catch data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past fishing catch data under similar conditions.
[0983] The server uses a fishing success prediction calculation method to calculate the optimal fishing time from the analyzed data. For example, if it concludes that "7 PM to 8 PM is the best time to fish," it sends that result to the terminal. The terminal can then display this prediction result to the user, informing them of the appropriate fishing time.
[0984] Sharing and confirming fishing results
[0985] When a user enters fishing results (type, number, and location of fish caught, etc.), the terminal sends this information to the server. For example, it might send information such as "I caught 5 sea bass in Tokyo Bay." The server has a means of storing fishing results, which allows fishing results from all over the country to be collected.
[0986] Based on accumulated information, the server analyzes the data and creates a ranking of popular fishing spots. The terminal displays this ranking to the user, showing which locations have been producing good catches recently. For example, it might display information such as "1st place: Tokyo Bay, 2nd place: Lake Biwa, 3rd place: Seto Inland Sea."
[0987] Recommended fishing gear and a guide to retailers.
[0988] When a user decides on a fishing trip plan, the server extracts information from partner fishing tackle manufacturers and retailers. For example, if a user decides to go to Tokyo Bay, the server will recommend the most suitable fishing gear (e.g., specific lures or rods).
[0989] The server sends recommended fishing gear information to the terminal and displays it to the user. It also retrieves information about nearby stores and notifies the user. For example, by displaying "Recommended lure: ABC XYZ, Store: XX Fishing Tackle Shop (Address: AA Ward, Tokyo, Business Hours: 9:00-18:00)", the user can make appropriate preparations.
[0990] Specific example
[0991] If a user selects "fishing in Tokyo Bay," the device acquires location information and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. Furthermore, if the user registers their fishing results, the server compiles this information and displays it as a ranking of "Tokyo Bay as currently the best fishing spot." After that, information on the most suitable fishing gear and retailers is displayed on the device, allowing the user to prepare.
[0992] In this way, the present invention provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailer information, thereby realizing a comprehensive fishing trip support system.
[0993] The following describes the processing flow.
[0994] Step 1:
[0995] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[0996] Step 2:
[0997] The device receives input from the user and obtains location information (latitude, longitude, etc.) for that location.
[0998] Step 3:
[0999] The device uses its location information to access a fishing catch prediction database and queries the server for past fishing catch data.
[1000] Example: GET / api / fishing / prediction?location=TokyoBay
[1001] Step 4:
[1002] The server receives the request and extracts past fishing results data from the database.
[1003] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[1004] Step 5:
[1005] Based on the data extracted by the server, AI algorithms and machine learning models are used to predict fishing results. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[1006] Examples: Time series analysis, applying machine learning models
[1007] Step 6:
[1008] The server returns the analysis results to the terminal. As a prediction, it sends data such as, "The optimal time for fishing is from 7 PM to 8 PM."
[1009] Step 7:
[1010] The device displays the prediction results it has received to the user.
[1011] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM."
[1012] Step 8:
[1013] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1014] Step 9:
[1015] The device sends fishing results information from the user to the server.
[1016] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[1017] Step 10:
[1018] The server stores the fishing results information it receives in a database.
[1019] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[1020] Step 11:
[1021] A user requests information about popular fishing spots. The device sends this request to the server.
[1022] Step 12:
[1023] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[1024] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[1025] Step 13:
[1026] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[1027] Step 14:
[1028] The ranking information received by the device is displayed to the user.
[1029] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[1030] Step 15:
[1031] When the user decides on a destination, the device sends that information to the server.
[1032] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[1033] Step 16:
[1034] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[1035] Step 17:
[1036] The server retrieves information about the nearest retailer based on the partner retailer information.
[1037] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[1038] Step 18:
[1039] The server sends recommended fishing gear information and retailer information to the terminal.
[1040] Step 19:
[1041] The device displays fishing gear and retailer information it has received to the user.
[1042] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1043] (Example 1)
[1044] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1045] In recent years, fishing enthusiasts have been seeking more efficient fishing trips, but they face the challenge of selecting the optimal timing and location. Furthermore, the variety of information available regarding fishing gear selection and purchasing locations means that preparation takes considerable time. It is necessary to eliminate this complex pre-trip preparation process and provide users with a more convenient and efficient fishing support system.
[1046] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1047] In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a recommended fishing gear generation means, and a retailer information acquisition means. This makes it possible for the user to easily obtain information on the optimal fishing timing, fishing location, recommended fishing gear, and retailers.
[1048] "User input means" refers to the means by which users can input information such as the location where they want to go fishing and their fishing results.
[1049] "Location information acquisition means" refers to the means of acquiring the specific location information (latitude and longitude) of a fishing spot specified by the user.
[1050] A "fishing catch prediction database reference means" is a means of accessing a database containing past fishing catch data and referencing that data.
[1051] A "fishing catch prediction calculation method" is a means of predicting fishing catches using AI algorithms or machine learning models based on past fishing catch data.
[1052] The "calculation result display means" is a means for displaying the prediction results obtained by the fishing catch prediction calculation means to the user.
[1053] The "recommended fishing gear generation method" is a method for generating and recommending the optimal fishing gear based on the user's fishing trip plan.
[1054] "Retailer information acquisition method" refers to a method for obtaining information on retailers where recommended fishing equipment can be purchased.
[1055] A "storage method" refers to a means of storing fishing results information entered by users in a database.
[1056] The "ranking display method" is a means of analyzing fishing results information in a database and displaying popular fishing spots in a ranking format.
[1057] This invention is a comprehensive system for supporting fishing trips. This system is realized through the cooperation of three parties: the user, the terminal, and the server. The following describes a specific embodiment of this system.
[1058] User input and information retrieval
[1059] The user enters the location where they want to go fishing into the application (app). This app runs on mobile devices such as smartphones. For example, if the user enters "I want to fish in Tokyo Bay," the app retrieves that information and uses its built-in GPS function and map API (for example, Google Maps API) to determine the specific location information (latitude and longitude).
[1060] Location information acquisition and fishing success prediction
[1061] The device sends its identified location information to the server using the HTTPS protocol. The server runs on a cloud computing service (e.g., AWS EC2). The server accesses a database (e.g., AWS RDS) to retrieve historical fishing data for that area. This fishing data includes the date and time of the catch, the type of fish, and the location.
[1062] Based on the acquired data, the server uses an AI algorithm (for example, using TensorFlow or PyTorch) to predict fishing results. This AI model learns from past data and predicts fishing results at a specified location and time. For example, it might generate a prediction such as "7 PM to 8 PM is the optimal time for fishing." The server sends this prediction result to the terminal, which then displays it to the user.
[1063] Sharing and confirming fishing results
[1064] After fishing, users enter their catch information into the app. For example, they might enter information such as, "I caught 5 sea bass in Tokyo Bay." This information is sent to the server via the device. The server stores the catch information in cloud storage (e.g., AWS S3) and also stores it in a database (AWS RDS). The server then analyzes the catch data using an analysis tool (e.g., Apache Spark) and creates a ranking of popular fishing spots. This ranking information is sent to the device and displayed to the user.
[1065] Recommended fishing gear and a guide to retailers.
[1066] When a user decides on a fishing trip plan, the server retrieves information from partner fishing tackle manufacturers and retailers to generate the most suitable fishing gear. For example, if a user decides to go to Tokyo Bay, the server will recommend specific lures and rods. The server sends this recommendation information and retailer information to the user's device. The device then displays this information to the user. For example, it might provide information such as, "Recommended lure: Lure from a specific manufacturer, Retailer: Specific retailer (Address: XX Ward, Tokyo, Business hours: 9:00-18:00)."
[1067] Examples of specific cases and prompt statements
[1068] For example, if a user selects "fishing in Tokyo Bay," the device obtains location information ("Tokyo Bay") and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. After the fishing trip, if the user registers that they "caught 5 sea bass in Tokyo Bay," the server uses this information to display a ranking of Tokyo Bay as "currently the best fishing spot." In addition, information on the best fishing gear and retailers is displayed on the device, allowing the user to prepare accordingly.
[1069] Examples of prompts for a generative AI model include the following:
[1070] "What is the best time to fish in Tokyo Bay, and what fishing gear do you recommend?"
[1071] This system provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailers, thereby providing comprehensive support for their fishing trips.
[1072] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1073] Step 1:
[1074] The user enters their fishing location into the app. For example, they might enter, "I want to fish in Tokyo Bay."
[1075] Input: Text information about the fishing location
[1076] Output: User input
[1077] Specifically, the user enters their desired fishing location into a text box on the smartphone app and presses the submit button.
[1078] Step 2:
[1079] The device receives user input and obtains location information using GPS functionality or map APIs.
[1080] Input: User input
[1081] Output: Identified location information (latitude and longitude)
[1082] Specifically, the device uses its built-in GPS function to obtain the user's current location and the latitude and longitude of the entered location.
[1083] Step 3:
[1084] The device sends the location information it has acquired to the server.
[1085] Input: Location information (latitude and longitude)
[1086] Output: Location information sent to the server
[1087] Specifically, the device uses the HTTPS protocol to send location information to the server via a POST request.
[1088] Step 4:
[1089] The server receives location information and retrieves past fishing results data from the database.
[1090] Input: Sent location information
[1091] Output: Past fishing results data
[1092] Specifically, the server queries a database such as AWS RDS to retrieve historical fishing data corresponding to the specified location.
[1093] Step 5:
[1094] The server uses an AI algorithm to predict fishing results.
[1095] Input: Past fishing results data
[1096] Output: Fishing catch prediction results
[1097] In practice, the server inputs fishing results data into an AI model (using, for example, TensorFlow or PyTorch) to predict fishing results at a specified location and time. The output might be a prediction such as, "The best time to fish is from 7 PM to 8 PM."
[1098] Step 6:
[1099] The server sends the prediction results to the terminal.
[1100] Input: Fishing catch prediction result
[1101] Output: Prediction results sent to the terminal
[1102] Specifically, the server converts the prediction results into JSON format and sends them to the terminal using the HTTPS protocol.
[1103] Step 7:
[1104] The device displays the prediction results it has received to the user.
[1105] Input: Prediction results sent from the server
[1106] Output: Prediction results displayed to the user
[1107] Specifically, the app's UI displays the prediction results received by the device as "The best time to fish is between 7 PM and 8 PM."
[1108] Step 8:
[1109] After a fishing trip, the user enters their catch information into the app. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1110] Input: Fishing results information
[1111] Output: User's fishing results
[1112] In terms of specific actions, the user enters details of their catch (such as the type and number of fish) into the app's input form and presses the submit button.
[1113] Step 9:
[1114] The device sends fishing results information to the server.
[1115] Input: User's fishing results
[1116] Output: Fishing results information sent to the server
[1117] Specifically, the device sends fishing results information to the server via a POST request using the HTTPS protocol.
[1118] Step 10:
[1119] The server accumulates fishing results and saves them in a database.
[1120] Input: Submitted fishing results information
[1121] Output: Accumulated fishing results data
[1122] Specifically, the server saves the fishing results information it receives to AWS S3 or AWS RDS.
[1123] Step 11:
[1124] The server analyzes fishing results data and generates rankings of popular fishing spots.
[1125] Input: Accumulated fishing results data
[1126] Output: Fishing Spot Ranking
[1127] Specifically, the server periodically uses Apache Spark to perform data analysis and generate ranking data.
[1128] Step 12:
[1129] The server sends the generated ranking to the terminal.
[1130] Input: Fishing Spot Ranking
[1131] Output: Ranking information sent to the terminal
[1132] Specifically, the server converts the ranking data into JSON format and sends it to the terminal using the HTTPS protocol.
[1133] Step 13:
[1134] The ranking information received by the device is displayed to the user.
[1135] Input: Ranking information sent from the server
[1136] Output: Ranking information displayed to the user
[1137] Specifically, the device displays ranking information on the app's UI. For example, it might display "1st: Tokyo Bay, 2nd: Lake Biwa, 3rd: Seto Inland Sea."
[1138] Step 14:
[1139] The user decides on the fishing trip plan.
[1140] Input: Deciding on a fishing trip plan
[1141] Output: Fishing trip plan confirmation notification
[1142] Specifically, the user selects a fishing trip plan on the app and presses the confirm button.
[1143] Step 15:
[1144] The server retrieves information on partner fishing tackle manufacturers and retailers.
[1145] Input: Fishing trip plan confirmation notification
[1146] Output: Recommended fishing gear information and retailer information
[1147] Specifically, the server accesses the database to retrieve information about relevant fishing tackle and retailers.
[1148] Step 16:
[1149] The server sends recommended fishing gear and store information to the terminal.
[1150] Input: Recommended fishing gear and retailer information
[1151] Output: Information sent to the terminal
[1152] Specifically, the server converts recommended fishing gear information and retailer information into JSON format and sends it to the terminal using the HTTPS protocol.
[1153] Step 17:
[1154] The device displays recommended fishing gear and store information to the user.
[1155] Input: Information sent from the server
[1156] Output: Recommended fishing gear and retailer information displayed to the user.
[1157] Specifically, the device displays the following on the app's UI: "Recommended lure: Lure from a specified manufacturer, Retailer: Specified retailer (Address: Specific residential area, Business hours: 9:00-18:00)."
[1158] In this way, the system provides users with comprehensive support for their fishing trips.
[1159] (Application Example 1)
[1160] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1161] In food delivery, a system that provides optimal delivery timing and routes is necessary to improve delivery efficiency and customer satisfaction. However, current systems do not fully utilize historical data, and their calculation of optimal routes based on real-time traffic information is insufficient. As a result, delivery delays and inefficiencies occur. To solve these problems, it is necessary to improve the accuracy of delivery forecasting and route optimization.
[1162] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1163] In this invention, the server includes a user transport plan input means, a location information acquisition means, a delivery prediction database reference means, a delivery prediction calculation means, a traffic information acquisition means, and an optimal route calculation means. This makes it possible to provide highly accurate delivery predictions and optimal routes based on past logistics data and real-time traffic information.
[1164] "User transportation plan input means" refers to a device or interface for users to input delivery destinations and order information.
[1165] "Location information acquisition means" refers to means for acquiring the current location of a device or the location information of a destination.
[1166] "Delivery prediction database referencing means" refers to a means of accessing a database containing past delivery data and obtaining necessary information.
[1167] "Delivery prediction calculation means" refers to algorithms and models used to analyze past delivery data and predict future delivery timings.
[1168] "Calculation result display means" refers to a device or interface that visually displays calculated delivery timing and route information to the user.
[1169] "Means of acquiring traffic information" refers to methods of obtaining information to understand traffic conditions in real time and use it to optimize delivery routes.
[1170] "Optimal route calculation means" refers to algorithms and models for calculating the optimal delivery route based on location information and traffic information.
[1171] "Storage method" refers to a means of saving delivery information and logistics data entered by users to a database.
[1172] "Display means" refers to devices or interfaces that visually provide users with information stored in a database.
[1173] This invention provides a system that supports efficient food delivery. Specific embodiments will be described in detail based on the roles of the server, terminal, and user.
[1174] User input and information retrieval
[1175] The user enters order information and delivery address information into the food delivery app. For example, if the user enters "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the device receives the information from the user. This information includes, for example, location information (latitude and longitude).
[1176] Location information acquisition and delivery prediction
[1177] The terminal acquires location information and uses that information to access the database using a delivery prediction database reference mechanism. The server retrieves past delivery data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past delivery data under similar conditions. The server uses a delivery prediction calculation mechanism to calculate the optimal delivery timing from the analyzed data. For example, if it concludes that "18:30 to 18:45 is the optimal delivery time," it sends that result to the terminal. The terminal can then display this prediction result to the user.
[1178] Acquisition of traffic information and calculation of optimal route
[1179] The server acquires real-time traffic information using a traffic information acquisition method. The terminal calculates the optimal delivery route using an optimal route calculation method based on the current location, the delivery destination location information, and the real-time traffic information. For example, if it calculates the fastest and most efficient route and obtains the result that "the best route is to go through XX Street and enter YY Street," it sends the result to the terminal. The terminal can then display the optimal route information to the delivery person.
[1180] Accumulation and analysis of delivery information
[1181] When a user enters delivery information (order ID, delivery address, delivery completion time, etc.), the terminal sends this information to the server. The server has a storage system for accumulating delivery information, allowing for the collection of delivery data from across the country. Based on the accumulated information, the server analyzes the data and creates a ranking of popular delivery routes. The terminal can then display this ranking to the user, showing them which route has been the most efficient recently.
[1182] Specific example
[1183] If a user selects "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the terminal acquires location information and queries the server. Based on past data, the server predicts that "18:30 to 18:45 is the optimal delivery time," and the terminal displays this to the user. Furthermore, the server acquires real-time traffic information and calculates the optimal route, such as "the best route is to go through XX Street and enter YY Street," and the terminal displays this to the delivery person.
[1184] The following is an example of a prompt sentence to be input using a generative AI model.
[1185] Order ID: 12345
[1186] Delivery address: 1-1-1 Marunouchi, Chiyoda-ku, Tokyo
[1187] Predict: What is the best delivery time and route for this order?
[1188] In this way, the present invention provides users with information on efficient delivery timing and optimal delivery routes, thereby realizing a comprehensive food delivery support system.
[1189] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1190] Step 1:
[1191] The user enters order information and delivery address information.
[1192] The user enters order information (for example, order ID: 12345) and the delivery address (1-1-1 Marunouchi, Chiyoda-ku, Tokyo) into the food delivery app. The device then retrieves this information. The input data consists of the order ID and the delivery location. This data forms the basis for the next step.
[1193] Step 2:
[1194] The device acquires location information and sends it to the server.
[1195] The terminal receives the delivery address location information (latitude and longitude) from the user and sends it to the server. The input data is the delivery address location information, and the output data is the location information sent to the server. Based on this information, the server performs the following processing.
[1196] Step 3:
[1197] The server predicts delivery timing based on past delivery data.
[1198] The server uses a delivery prediction database reference mechanism to retrieve historical delivery data and a delivery prediction calculation mechanism to predict the optimal delivery timing. The input data consists of the delivery destination's location information and historical delivery data, while the output data is the predicted optimal delivery timing (e.g., 18:30 to 18:45). A generative AI model is used for this process to analyze and predict the data.
[1199] Step 4:
[1200] The server sends the prediction results to the terminal, and the terminal displays them to the user.
[1201] The server sends the predicted delivery time to the terminal. The terminal receives this information and displays it to the user through a display device. The input data is the predicted delivery time, and the output data is the predicted result displayed to the user. This allows the user to know the optimal delivery time.
[1202] Step 5:
[1203] The server obtains traffic information and calculates the optimal route.
[1204] The server uses a traffic information acquisition mechanism to obtain real-time traffic information. Next, it uses an optimal route calculation mechanism to calculate the optimal route from the current location to the delivery destination. The input data is location information and traffic information, and the output data is the optimal delivery route (e.g., a route that goes through XX Street and enters YY Street).
[1205] Step 6:
[1206] The server sends optimal route information to the terminal, which then displays it to the delivery person.
[1207] The server sends the calculated optimal route information to the terminal. The terminal receives this information and displays it to the delivery person. The input data is the optimal delivery route, and the output data is the route information displayed to the delivery person. This allows the delivery person to know the most efficient route.
[1208] Step 7:
[1209] The user enters delivery information and the device sends it to the server.
[1210] After delivery is complete, the user enters delivery information (order ID, delivery address, delivery completion time, etc.). The terminal sends this information to the server. The input data is the delivery information, and the output data is the delivery information sent to the server.
[1211] Step 8:
[1212] The server stores and analyzes delivery information.
[1213] The server uses a storage method to accumulate delivery information and saves it to a database. Next, the ranking of popular delivery routes is analyzed based on the accumulated data. The input data consists of new and past delivery information, and the output data is the ranking of popular delivery routes that has been analyzed.
[1214] Step 9:
[1215] The server sends route rankings to the terminal, and the terminal displays them to the user.
[1216] The server sends ranking information of popular delivery routes that have been analyzed to the terminal. The terminal receives this information and displays it to the user. The input data is the ranking of popular delivery routes, and the output data is the ranking information displayed to the user. This allows the user to find the optimal delivery route.
[1217] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1218] This invention provides a system that further optimizes and personalizes the provision of services to users by combining it with an emotion engine that recognizes user emotions. First, the basic system configuration is as follows: it includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a storage means, a display means, a partner fishing tackle manufacturer information acquisition means, a partner retailer information acquisition means, a recommended fishing tackle information display means, and a retailer information display means. Along with these basic means, an emotion engine is added to recognize user emotions and optimize the provision of services.
[1219] User input and emotion recognition
[1220] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay." The device analyzes the user's emotions through facial recognition and voice input, simultaneously with the user's input information, using an emotion engine.
[1221] Location information acquisition and fishing success prediction
[1222] The terminal acquires location information and uses that information to query the server for past fishing results data using a fishing results prediction database reference means. Based on the past data, the server uses a fishing results prediction calculation means to perform analysis and calculate the appropriate timing for fishing.
[1223] Providing advice tailored to your emotions
[1224] The server uses an emotion engine to customize calculation results based on the user's emotional data. For example, if a user expresses anxiety, it provides reassuring advice such as specific fishing techniques and preparation tips. Conversely, if a user expresses positive emotions, it recommends new fishing spots or challenging fishing equipment.
[1225] The server sends the calculation results to the terminal, which then displays this information to the user. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[1226] Sharing and confirming fishing results
[1227] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The device sends this information to the server, where it is stored in the fishing results database. The server analyzes this data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[1228] Emotion-based fishing gear recommendations and store suggestions
[1229] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Based on its emotion engine, the server recommends fishing tackle that best suits the user's emotional state. For example, if the user is a beginner and feeling anxious, the server will recommend beginner-friendly fishing tackle sets and provide information on the nearest retailer. If the user is experienced and excited, the server will provide information on new, high-performance fishing tackle and specific retailers they might not normally visit.
[1230] The server sends recommended fishing gear information and store information to the terminal, which then displays it to the user. For example, "Recommended fishing gear: ABC Corporation XYZ, Store: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1231] Specific example
[1232] For example, if a user enters "I want to go fishing in Tokyo Bay" and the emotion engine detects excitement from the user's facial expression, the server will advise the user that "7pm to 8pm is the best time to go fishing," as well as suggest, "Why not try a challenging new lure? We recommend ABC's latest model, the XYZ." If the user is feeling anxious, the server will provide customized information such as, "You can buy a beginner-friendly fishing gear set at XX Fishing Tackle Shop. Here is the nearest store."
[1233] This invention goes beyond simply predicting fishing results, enabling personalized services that are tailored to the user's emotions. This is expected to improve the fishing experience and increase user satisfaction.
[1234] The following describes the processing flow.
[1235] Step 1:
[1236] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[1237] Step 2:
[1238] The device receives input from the user and obtains location information (latitude, longitude, etc.). Furthermore, the emotion engine captures the user's face with the camera and performs facial expression analysis.
[1239] Step 3:
[1240] The emotion engine analyzes the user's emotions and sends the results to the device. For example, it might determine whether the emotion is "positive" or "negative."
[1241] Step 4:
[1242] The device uses location information and sentiment data to query the server for past fishing results data using a fishing results prediction database reference mechanism.
[1243] Example: GET / api / fishing / prediction?location=TokyoBay
[1244] Step 5:
[1245] The server receives the request and extracts past fishing results data from the database.
[1246] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[1247] Step 6:
[1248] Based on data extracted by the server, fishing success is predicted using AI algorithms and machine learning models. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[1249] Step 7:
[1250] The server returns the analysis results to the terminal. For example, it sends data such as "The optimal time for fishing is from 7 PM to 8 PM."
[1251] Step 8:
[1252] The device generates customized advice based on prediction results and sentiment data. For example, if the sentiment is positive, it might add challenging advice. "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Try out some new lures."
[1253] Step 9:
[1254] The device displays customized prediction results and advice to the user.
[1255] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[1256] Step 10:
[1257] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1258] Step 11:
[1259] The device sends fishing results information from the user to the server.
[1260] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[1261] Step 12:
[1262] The server stores the fishing results information it receives in a database.
[1263] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[1264] Step 13:
[1265] A user requests information about popular fishing spots. The device sends this request to the server.
[1266] Step 14:
[1267] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[1268] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[1269] Step 15:
[1270] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[1271] Step 16:
[1272] The ranking information received by the device is displayed to the user.
[1273] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[1274] Step 17:
[1275] When the user decides on a destination, the device sends that information to the server.
[1276] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[1277] Step 18:
[1278] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[1279] Step 19:
[1280] The server retrieves information about the nearest retailer based on the partner retailer information.
[1281] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[1282] Step 20:
[1283] The server sends recommended fishing gear information and retailer information to the terminal.
[1284] Step 21:
[1285] The device displays fishing gear and retailer information it has received to the user.
[1286] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1287] (Example 2)
[1288] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1289] Traditional fishing catch prediction systems primarily focused on improving prediction accuracy to support users' fishing trip planning, but struggled to provide personalized advice that took into account users' emotions and individual needs. Therefore, there were limitations to improving user satisfaction and the fishing experience. Furthermore, while they accumulated fishing catch information and displayed rankings of popular fishing spots, they lacked features to recommend fishing gear and retailers based on user sentiment.
[1290] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, an emotion recognition means, and a calculation result display means. This makes it possible not only to predict fishing catches based on past fishing catch data, but also to analyze the user's emotion data using an emotion engine and provide personalized services. In addition to accumulating fishing catch information and displaying rankings of popular fishing spots, it is also possible to provide recommended fishing gear and store information according to the user's emotions, thereby improving the user's fishing experience and significantly increasing satisfaction.
[1291] A "user input method" is an interface for users to input information about the fishing locations they want to go to and their fishing trip plans.
[1292] "Location information acquisition means" refers to a means of obtaining the user's current location using location information technology such as GPS.
[1293] A "fishing catch prediction database reference method" is a means of referencing a database that stores past fishing catch data and making predictions based on that data.
[1294] A "fishing catch prediction calculation means" is a means of performing calculations to predict future fishing catches based on past fishing catch data that has been referenced.
[1295] "Emotion recognition means" refers to methods for recognizing a user's emotional state by analyzing data such as facial recognition and voice input.
[1296] The "calculation result display means" is an interface for visually displaying analysis results based on fishing catch predictions and sentiment data to the user.
[1297] "Storage method" refers to a means of saving fishing results information entered by users to a database.
[1298] A "display means" is an interface that provides users with information visually based on information stored in a database.
[1299] "Means for providing recommended fishing gear and retailer information" refers to means for recommending and providing users with appropriate fishing gear and retailer information based on user sentiment data.
[1300] This invention is a system that optimizes and personalizes the delivery of services to users by combining an emotion engine that recognizes the user's emotions. This system uses the following main hardware and software:
[1301] User input means: An interface for users to input fishing locations and fishing trip plans (e.g., a smartphone application).
[1302] Location information acquisition method: The user's current location is obtained using a GPS module.
[1303] Fishing catch prediction database reference means: A means of accessing a server database where past fishing catch data is stored.
[1304] Fishing catch prediction calculation method: Fishing catch prediction is performed using data analysis software (e.g., a Python script) that runs on a server.
[1305] Emotion recognition means: An emotion engine that analyzes the user's facial expressions and voice (e.g., a face recognition / voice analysis engine using a machine learning model).
[1306] Calculation result display means: An interface for visually displaying the analysis results to the user (e.g., a smartphone application).
[1307] Storage method: A database (e.g., SQL database) for storing fishing results information entered by users.
[1308] Display method: An interface for displaying ranking information and other data to the user based on information in a database (e.g., a smartphone application).
[1309] Means of providing recommended fishing gear and retailer information: Recommendation systems based on user sentiment data (e.g., machine learning-based recommendation engines).
[1310] User input and sentiment recognition
[1311] The user uses a device (smartphone app) to input the location where they want to go fishing. For example, they might input "Tokyo Bay." At this time, the device uses its camera and microphone to perform facial recognition and voice input, and an emotion recognition system analyzes the user's emotions.
[1312] Specific example:
[1313] The user types "Tokyo Bay" into a text box, and the device's camera captures the user's facial expression. An emotion engine analyzes the user's facial expression and voice to recognize emotions such as "happy" or "anxious."
[1314] Location information acquisition and fishing success prediction
[1315] The terminal's GPS module obtains the user's current location, and based on that information, it queries the server for past fishing results data using a fishing results prediction database reference means. The server analyzes the past data using a fishing results prediction calculation means and calculates the optimal timing for fishing.
[1316] Specific example:
[1317] The device obtains the user's current location and sends the location information, along with "Tokyo Bay," to the server. The server's database then refers to past fishing results data to calculate the optimal fishing time.
[1318] Providing advice tailored to your emotions
[1319] The server uses an emotion engine to generate customized calculation results based on the user's emotion data. The server sends the calculation results to the terminal, which then displays them to the user.
[1320] Specific example:
[1321] The server generates and sends advice such as, "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a beginner-friendly fishing gear set." The device then displays this information to the user.
[1322] Sharing and confirming fishing results
[1323] The user enters fishing results, and the device sends this information to a server for storage in a database. The server analyzes the stored data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[1324] Specific example:
[1325] The user enters "I caught 5 sea bass in Tokyo Bay," and the device sends the information to the server. The server adds the data to its database and generates the latest ranking. The device then displays this ranking to the user.
[1326] Emotion-based fishing gear recommendations and store suggestions
[1327] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Using an emotion engine, it recommends fishing tackle and retailer information that best suits the user's emotional state. The server sends the recommended information to the device, which then displays it to the user.
[1328] Specific example:
[1329] The server recognizes that the user is a beginner and feeling anxious, and recommends a beginner-friendly fishing gear set and information on a reliable retailer. The terminal will display something like, "Recommended fishing gear for beginners: Fishing gear set XYZ. Retailer: ABC Fishing Tackle Shop (Address: XX Prefecture, XX City)."
[1330] Prompt example
[1331] "I want to go fishing in Tokyo Bay."
[1332] "I'm a beginner and I'm feeling anxious."
[1333] "I want to know the latest fishing gear information."
[1334] Through the procedures described above, this invention can provide personalized services that are tailored to the user's emotions, thereby improving the fishing experience and increasing user satisfaction.
[1335] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1336] Step 1:
[1337] The user enters the location where they want to go fishing into the device. For example, they might enter "Tokyo Bay." The device receives the user's input data and sends it to the backend. At this time, the camera and microphone are used to capture the user's facial expressions and voice, and this data is sent to the emotion recognition engine.
[1338] Input: Location information such as "Tokyo Bay", user's facial expression image, audio data
[1339] Data processing / calculation: Convert input location information into a database query format, and run facial image and audio data through an emotion recognition engine to generate analysis data.
[1340] Output: Analyzed emotion data, location data
[1341] Specific actions:
[1342] The user types "Tokyo Bay" into a text box, and the camera captures the user's face. Voice input is also accepted, and that data is sent to the emotion recognition engine in real time. Analysis results are obtained, and the user's emotional state is classified as "excited" or "anxious," etc.
[1343] Step 2:
[1344] The device uses a GPS module to obtain its current location. Based on the obtained location information, it queries the server for data through a fishing catch prediction database reference mechanism.
[1345] Input: User's current location information
[1346] Data processing / calculation: Convert current location information into a database query format and send it to the server.
[1347] Output: Inquiry results based on location information (past fishing results data)
[1348] Specific actions:
[1349] The device collects data from its GPS module hardware to determine the user's current location. This location information is then formatted to query the fishing success prediction database and sent to the server.
[1350] Step 3:
[1351] The server references a fishing catch prediction database and performs a fishing catch prediction calculation based on past fishing data. It generates calculation results and performs filtering and customization based on sentiment data.
[1352] Input: Past fishing results data, location information, sentiment data
[1353] Data Processing / Calculation: Analyze fishing results data and calculate the optimal fishing timing based on current location information and emotional data.
[1354] Output: Emotion-customized fishing catch prediction data
[1355] Specific actions:
[1356] The server retrieves past fishing results data from the database and compares it with the user's current location. Based on the user's emotional state, for example, if they are "excited," the server recommends new fishing spots; if they are anxious, it provides detailed instructions on how to fish.
[1357] Step 4:
[1358] The server generates fishing catch prediction data and sends it to the terminal, which then displays the analysis results to the user.
[1359] Input: Emotion-based customized fishing catch prediction data
[1360] Data processing / calculation: Convert customized data into a format for terminal display.
[1361] Output: Information displayed to the user
[1362] Specific actions:
[1363] The device displays information such as the optimal fishing time and recommended fishing gear based on data received from the server. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a fishing gear set suitable for beginners."
[1364] Step 5:
[1365] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The terminal sends this information to the server, where it is stored in the database.
[1366] Input: Fishing results information
[1367] Data processing / calculation: Convert fishing results data to a database storage format.
[1368] Output: Accumulated fishing results data
[1369] Specific actions:
[1370] A user enters fishing results into the app and reports, for example, "I caught 5 sea bass." The device collects this data, sends it to a server, and stores it in a database.
[1371] Step 6:
[1372] The server analyzes accumulated fishing results data and creates a ranking of popular fishing spots nationwide. The terminal then displays this ranking information to the user.
[1373] Input: Accumulated fishing results data
[1374] Data Processing / Calculation: Statistical processing of fishing results data and organization into ranking format.
[1375] Output: Popular Fishing Spot Ranking
[1376] Specific actions:
[1377] The server extracts fishing results data from across the country from the database and performs statistical processing. It organizes popular fishing spots into a ranking format and sends this information to the terminal. The terminal then displays this ranking information to the user.
[1378] Step 7:
[1379] The server extracts information on affiliated fishing tackle manufacturers and retailers, and recommends the most suitable fishing tackle and retailer information based on an emotion recognition engine. The server sends the recommended information to the terminal, which then displays it to the user.
[1380] Input: User sentiment data, fishing trip plan
[1381] Data Processing / Calculation: Generates optimal fishing gear and retailer information based on emotional data and fishing trip plans.
[1382] Output: Recommended fishing gear information, retailer information
[1383] Specific actions:
[1384] The server analyzes the user's emotional data and fishing trip plan, generating optimal choices based on their emotions. For example, a beginner's set for beginners, or a specific store they wouldn't normally visit for those with high-performance fishing gear. The terminal then displays "Recommended fishing gear: XX Company YY, Store: ZZ Fishing Tackle Shop (address, business hours)."
[1385] (Application Example 2)
[1386] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1387] Current food delivery systems face the challenge of failing to provide personalized recommendations based on user emotions, making it difficult to fully enhance user satisfaction. Furthermore, there is a need to provide a better service experience by offering optimal recommendations tailored to the user's emotional state. Traditional systems, which provide uniform recommendations without considering user emotions, often fail to meet user needs.
[1388] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1389] In this invention, the server includes emotion recognition means, emotion-based recommendation means, and database referencing means. This makes it possible to analyze the user's emotional state in real time and recommend the most suitable food delivery menu or restaurant based on the results. Specifically, by recommending relaxing dishes when the user is feeling stressed, and new dishes when the user is showing positive emotions, user satisfaction can be increased.
[1390] A "user input means" is an interface device that allows a user to input information into a system.
[1391] "Location information acquisition means" refers to technologies for acquiring the user's current location information, and utilizes GPS or other location determination technologies.
[1392] The "fishing catch prediction database referencing method" is a technology for accessing a database containing past fishing catch data and obtaining necessary information.
[1393] A "fishing catch prediction calculation means" is a computing device or software used to predict fishing catches based on acquired data.
[1394] A "calculation result display means" is an output device for visually presenting the calculation results to the user.
[1395] "Emotion recognition means" refers to technologies for analyzing a user's emotions, such as facial recognition and voice analysis.
[1396] "Emotion-based recommendation methods" are technologies that generate optimal recommendation information based on acquired emotional data.
[1397] "Storage means" refers to a database or storage system for storing data collected from users.
[1398] "Display means" refers to a monitor, smartphone screen, or other display device used to visually present information to a user.
[1399] A "database referencing means" is a function that accesses a database in order to retrieve specific information.
[1400] A "recommendation method" is a technology used to suggest new and recommended information or products to users.
[1401] This invention is a system that optimizes food delivery services for users and provides personalized recommendations by combining an emotion engine that recognizes user emotions. Specific embodiments of this system are described below.
[1402] This system includes user input means, location information acquisition means, emotion recognition means, emotion-based recommendation means, database reference means, and calculation result display means. It is also implemented through communication between the server and the user's terminal.
[1403] User input and sentiment recognition
[1404] For example, a user might use their smartphone to input their desired dishes and restaurant information into a food delivery app. The smartphone's camera also captures the user's face, and an emotion recognition system analyzes the user's emotions in real time. This system uses technologies such as OpenCV and EmotionRecognizer to determine emotions like stress, joy, and relaxation from the user's facial expressions and voice.
[1405] Emotion-based recommendations and database referrals
[1406] The server uses a database referencing mechanism to retrieve past order data and rating information based on acquired location information and user sentiment data. The sentiment-based recommendation mechanism then uses this data to select the most suitable dishes and restaurants for the user's emotional state. For example, if the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes.
[1407] Display of calculation results
[1408] The server generates the calculation results and sends them to the user's terminal. The user's terminal displays these results and provides specific food and restaurant information. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food," and then list specific menu items as options.
[1409] Specific example
[1410] As a concrete example, a user enters "Italian" and has the app scan their face. The emotion recognition system analyzes the user's facial expression and recognizes that they are feeling stressed. The emotion-based recommendation system then displays a message saying, "To reduce stress, try a healthy salad or a familiar comfort food," and recommends several specific menu items.
[1411] Example of a prompt
[1412] "Users are experiencing stress. Please suggest some healthy food menu options."
[1413] "Recommend new and unique dishes to users who are experiencing positive emotions."
[1414] This system enables personalized food delivery recommendations based on the user's emotional state, thereby improving user satisfaction.
[1415] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1416] Step 1:
[1417] The user enters information about their desired food or restaurant into a food delivery app on their smartphone. Simultaneously, a facial image is captured via the smartphone's camera. This inputs both the user's preferences and facial image data. This data is then analyzed using emotion recognition technology.
[1418] Step 2:
[1419] The device's emotion recognition system analyzes the user's emotions based on captured facial images. Using technologies such as EmotionRecognizer, it extracts feature data from the facial image and determines emotions such as stress, joy, and relaxation. This analysis result is output as emotion data.
[1420] Step 3:
[1421] The device obtains the user's location information. Using location information acquisition methods such as GPS, it determines the user's current location and obtains that location information. This information is then sent to the server.
[1422] Step 4:
[1423] The server receives the acquired sentiment data and location information. Using a sentiment-based recommendation system, the server retrieves past order data and rating information using a database referencing system. This allows it to search for information on dishes and restaurants that best suit the user's emotional state.
[1424] Step 5:
[1425] The server uses emotion-based recommendation methods to select the most suitable dishes and restaurants based on the acquired data. If the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes. These recommendation results are generated and sent to the device.
[1426] Step 6:
[1427] The terminal displays the recommendation results received from the server to the user via a calculation result display mechanism. Specific food and restaurant information is provided in a list format, allowing the user to select. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food."
[1428] Step 7:
[1429] The user selects dishes and restaurants from the displayed recommendations. The selection information is then sent back to the server for final order processing. This process completes the food delivery order.
[1430] This series of processes enables personalized food delivery recommendations based on the user's emotional state, thereby increasing user satisfaction.
[1431] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1432] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1433] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1434] [Fourth Embodiment]
[1435] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1436] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1437] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1438] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1439] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1440] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1441] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1442] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1443] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1444] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1445] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1446] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1447] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1448] This invention provides a system that supports efficient fishing by coordinating various means. This section explains how to specifically implement the invention. Three parties are involved in implementing the invention: the user, the server, and the terminal. Each of these will be explained in detail based on their respective roles.
[1449] User input and information retrieval
[1450] The user enters the location where they want to go fishing into the app. For example, if the user enters "I want to fish in Tokyo Bay," the device receives location information from the user. This information includes, for example, location data (latitude, longitude, etc.).
[1451] Location information acquisition and fishing success prediction
[1452] The device acquires location information and uses that information to access the database using a fishing catch prediction database reference mechanism. The server retrieves past fishing catch data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past fishing catch data under similar conditions.
[1453] The server uses a fishing success prediction calculation method to calculate the optimal fishing time from the analyzed data. For example, if it concludes that "7 PM to 8 PM is the best time to fish," it sends that result to the terminal. The terminal can then display this prediction result to the user, informing them of the appropriate fishing time.
[1454] Sharing and confirming fishing results
[1455] When a user enters fishing results (type, number, and location of fish caught, etc.), the terminal sends this information to the server. For example, it might send information such as "I caught 5 sea bass in Tokyo Bay." The server has a means of storing fishing results, which allows fishing results from all over the country to be collected.
[1456] Based on accumulated information, the server analyzes the data and creates a ranking of popular fishing spots. The terminal displays this ranking to the user, showing which locations have been producing good catches recently. For example, it might display information such as "1st place: Tokyo Bay, 2nd place: Lake Biwa, 3rd place: Seto Inland Sea."
[1457] Recommended fishing gear and a guide to retailers.
[1458] When a user decides on a fishing trip plan, the server extracts information from partner fishing tackle manufacturers and retailers. For example, if a user decides to go to Tokyo Bay, the server will recommend the most suitable fishing gear (e.g., specific lures or rods).
[1459] The server sends recommended fishing gear information to the terminal and displays it to the user. It also retrieves information about nearby stores and notifies the user. For example, by displaying "Recommended lure: ABC XYZ, Store: XX Fishing Tackle Shop (Address: AA Ward, Tokyo, Business Hours: 9:00-18:00)", the user can make appropriate preparations.
[1460] Specific example
[1461] If a user selects "fishing in Tokyo Bay," the device acquires location information and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. Furthermore, if the user registers their fishing results, the server compiles this information and displays it as a ranking of "Tokyo Bay as currently the best fishing spot." After that, information on the most suitable fishing gear and retailers is displayed on the device, allowing the user to prepare.
[1462] In this way, the present invention provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailer information, thereby realizing a comprehensive fishing trip support system.
[1463] The following describes the processing flow.
[1464] Step 1:
[1465] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[1466] Step 2:
[1467] The device receives input from the user and obtains location information (latitude, longitude, etc.) for that location.
[1468] Step 3:
[1469] The device uses its location information to access a fishing catch prediction database and queries the server for past fishing catch data.
[1470] Example: GET / api / fishing / prediction?location=TokyoBay
[1471] Step 4:
[1472] The server receives the request and extracts past fishing results data from the database.
[1473] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[1474] Step 5:
[1475] Based on the data extracted by the server, AI algorithms and machine learning models are used to predict fishing results. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[1476] Examples: Time series analysis, applying machine learning models
[1477] Step 6:
[1478] The server returns the analysis results to the terminal. As a prediction, it sends data such as, "The optimal time for fishing is from 7 PM to 8 PM."
[1479] Step 7:
[1480] The device displays the prediction results it has received to the user.
[1481] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM."
[1482] Step 8:
[1483] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1484] Step 9:
[1485] The device sends fishing results information from the user to the server.
[1486] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[1487] Step 10:
[1488] The server stores the fishing results information it receives in a database.
[1489] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[1490] Step 11:
[1491] A user requests information about popular fishing spots. The device sends this request to the server.
[1492] Step 12:
[1493] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[1494] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[1495] Step 13:
[1496] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[1497] Step 14:
[1498] The ranking information received by the device is displayed to the user.
[1499] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[1500] Step 15:
[1501] When the user decides on a destination, the device sends that information to the server.
[1502] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[1503] Step 16:
[1504] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[1505] Step 17:
[1506] The server retrieves information about the nearest retailer based on the partner retailer information.
[1507] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[1508] Step 18:
[1509] The server sends recommended fishing gear information and retailer information to the terminal.
[1510] Step 19:
[1511] The device displays fishing gear and retailer information it has received to the user.
[1512] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1513] (Example 1)
[1514] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1515] In recent years, fishing enthusiasts have been seeking more efficient fishing trips, but they face the challenge of selecting the optimal timing and location. Furthermore, the variety of information available regarding fishing gear selection and purchasing locations means that preparation takes considerable time. It is necessary to eliminate this complex pre-trip preparation process and provide users with a more convenient and efficient fishing support system.
[1516] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1517] In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a recommended fishing gear generation means, and a retailer information acquisition means. This makes it possible for the user to easily obtain information on the optimal fishing timing, fishing location, recommended fishing gear, and retailers.
[1518] "User input means" refers to the means by which users can input information such as the location where they want to go fishing and their fishing results.
[1519] "Location information acquisition means" refers to the means of acquiring the specific location information (latitude and longitude) of a fishing spot specified by the user.
[1520] A "fishing catch prediction database reference means" is a means of accessing a database containing past fishing catch data and referencing that data.
[1521] A "fishing catch prediction calculation method" is a means of predicting fishing catches using AI algorithms or machine learning models based on past fishing catch data.
[1522] The "calculation result display means" is a means for displaying the prediction results obtained by the fishing catch prediction calculation means to the user.
[1523] The "recommended fishing gear generation method" is a method for generating and recommending the optimal fishing gear based on the user's fishing trip plan.
[1524] "Retailer information acquisition method" refers to a method for obtaining information on retailers where recommended fishing equipment can be purchased.
[1525] A "storage method" refers to a means of storing fishing results information entered by users in a database.
[1526] The "ranking display method" is a means of analyzing fishing results information in a database and displaying popular fishing spots in a ranking format.
[1527] This invention is a comprehensive system for supporting fishing trips. This system is realized through the cooperation of three parties: the user, the terminal, and the server. The following describes a specific embodiment of this system.
[1528] User input and information retrieval
[1529] The user enters the location where they want to go fishing into the application (app). This app runs on mobile devices such as smartphones. For example, if the user enters "I want to fish in Tokyo Bay," the app retrieves that information and uses its built-in GPS function and map API (for example, Google Maps API) to determine the specific location information (latitude and longitude).
[1530] Location information acquisition and fishing success prediction
[1531] The device sends its identified location information to the server using the HTTPS protocol. The server runs on a cloud computing service (e.g., AWS EC2). The server accesses a database (e.g., AWS RDS) to retrieve historical fishing data for that area. This fishing data includes the date and time of the catch, the type of fish, and the location.
[1532] Based on the acquired data, the server uses an AI algorithm (for example, using TensorFlow or PyTorch) to predict fishing results. This AI model learns from past data and predicts fishing results at a specified location and time. For example, it might generate a prediction such as "7 PM to 8 PM is the optimal time for fishing." The server sends this prediction result to the terminal, which then displays it to the user.
[1533] Sharing and confirming fishing results
[1534] After fishing, users enter their catch information into the app. For example, they might enter information such as, "I caught 5 sea bass in Tokyo Bay." This information is sent to the server via the device. The server stores the catch information in cloud storage (e.g., AWS S3) and also stores it in a database (AWS RDS). The server then analyzes the catch data using an analysis tool (e.g., Apache Spark) and creates a ranking of popular fishing spots. This ranking information is sent to the device and displayed to the user.
[1535] Recommended fishing gear and a guide to retailers.
[1536] When a user decides on a fishing trip plan, the server retrieves information from partner fishing tackle manufacturers and retailers to generate the most suitable fishing gear. For example, if a user decides to go to Tokyo Bay, the server will recommend specific lures and rods. The server sends this recommendation information and retailer information to the user's device. The device then displays this information to the user. For example, it might provide information such as, "Recommended lure: Lure from a specific manufacturer, Retailer: Specific retailer (Address: XX Ward, Tokyo, Business hours: 9:00-18:00)."
[1537] Examples of specific cases and prompt statements
[1538] For example, if a user selects "fishing in Tokyo Bay," the device obtains location information ("Tokyo Bay") and queries the server. Based on past data for Tokyo Bay, the server predicts that "7 PM to 8 PM is the best time for fishing," and the device displays this to the user. After the fishing trip, if the user registers that they "caught 5 sea bass in Tokyo Bay," the server uses this information to display a ranking of Tokyo Bay as "currently the best fishing spot." In addition, information on the best fishing gear and retailers is displayed on the device, allowing the user to prepare accordingly.
[1539] Examples of prompts for a generative AI model include the following:
[1540] "What is the best time to fish in Tokyo Bay, and what fishing gear do you recommend?"
[1541] This system provides users with information on efficient fishing timing, optimal fishing locations, recommended fishing gear, and retailers, thereby providing comprehensive support for their fishing trips.
[1542] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1543] Step 1:
[1544] The user enters their fishing location into the app. For example, they might enter, "I want to fish in Tokyo Bay."
[1545] Input: Text information about the fishing location
[1546] Output: User input
[1547] Specifically, the user enters their desired fishing location into a text box on the smartphone app and presses the submit button.
[1548] Step 2:
[1549] The device receives user input and obtains location information using GPS functionality or map APIs.
[1550] Input: User input
[1551] Output: Identified location information (latitude and longitude)
[1552] Specifically, the device uses its built-in GPS function to obtain the user's current location and the latitude and longitude of the entered location.
[1553] Step 3:
[1554] The device sends the location information it has acquired to the server.
[1555] Input: Location information (latitude and longitude)
[1556] Output: Location information sent to the server
[1557] Specifically, the device uses the HTTPS protocol to send location information to the server via a POST request.
[1558] Step 4:
[1559] The server receives location information and retrieves past fishing results data from the database.
[1560] Input: Sent location information
[1561] Output: Past fishing results data
[1562] Specifically, the server queries a database such as AWS RDS to retrieve historical fishing data corresponding to the specified location.
[1563] Step 5:
[1564] The server uses an AI algorithm to predict fishing results.
[1565] Input: Past fishing results data
[1566] Output: Fishing catch prediction results
[1567] In practice, the server inputs fishing results data into an AI model (using, for example, TensorFlow or PyTorch) to predict fishing results at a specified location and time. The output might be a prediction such as, "The best time to fish is from 7 PM to 8 PM."
[1568] Step 6:
[1569] The server sends the prediction results to the terminal.
[1570] Input: Fishing catch prediction result
[1571] Output: Prediction results sent to the terminal
[1572] Specifically, the server converts the prediction results into JSON format and sends them to the terminal using the HTTPS protocol.
[1573] Step 7:
[1574] The device displays the prediction results it has received to the user.
[1575] Input: Prediction results sent from the server
[1576] Output: Prediction results displayed to the user
[1577] Specifically, the app's UI displays the prediction results received by the device as "The best time to fish is between 7 PM and 8 PM."
[1578] Step 8:
[1579] After a fishing trip, the user enters their catch information into the app. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1580] Input: Fishing results information
[1581] Output: User's fishing results
[1582] In terms of specific actions, the user enters details of their catch (such as the type and number of fish) into the app's input form and presses the submit button.
[1583] Step 9:
[1584] The device sends fishing results information to the server.
[1585] Input: User's fishing results
[1586] Output: Fishing results information sent to the server
[1587] Specifically, the device sends fishing results information to the server via a POST request using the HTTPS protocol.
[1588] Step 10:
[1589] The server accumulates fishing results and saves them in a database.
[1590] Input: Submitted fishing results information
[1591] Output: Accumulated fishing results data
[1592] Specifically, the server saves the fishing results information it receives to AWS S3 or AWS RDS.
[1593] Step 11:
[1594] The server analyzes fishing results data and generates rankings of popular fishing spots.
[1595] Input: Accumulated fishing results data
[1596] Output: Fishing Spot Ranking
[1597] Specifically, the server periodically uses Apache Spark to perform data analysis and generate ranking data.
[1598] Step 12:
[1599] The server sends the generated ranking to the terminal.
[1600] Input: Fishing Spot Ranking
[1601] Output: Ranking information sent to the terminal
[1602] Specifically, the server converts the ranking data into JSON format and sends it to the terminal using the HTTPS protocol.
[1603] Step 13:
[1604] The ranking information received by the device is displayed to the user.
[1605] Input: Ranking information sent from the server
[1606] Output: Ranking information displayed to the user
[1607] Specifically, the device displays ranking information on the app's UI. For example, it might display "1st: Tokyo Bay, 2nd: Lake Biwa, 3rd: Seto Inland Sea."
[1608] Step 14:
[1609] The user decides on the fishing trip plan.
[1610] Input: Deciding on a fishing trip plan
[1611] Output: Fishing trip plan confirmation notification
[1612] Specifically, the user selects a fishing trip plan on the app and presses the confirm button.
[1613] Step 15:
[1614] The server retrieves information on partner fishing tackle manufacturers and retailers.
[1615] Input: Fishing trip plan confirmation notification
[1616] Output: Recommended fishing gear information and retailer information
[1617] Specifically, the server accesses the database to retrieve information about relevant fishing tackle and retailers.
[1618] Step 16:
[1619] The server sends recommended fishing gear and store information to the terminal.
[1620] Input: Recommended fishing gear and retailer information
[1621] Output: Information sent to the terminal
[1622] Specifically, the server converts recommended fishing gear information and retailer information into JSON format and sends it to the terminal using the HTTPS protocol.
[1623] Step 17:
[1624] The device displays recommended fishing gear and store information to the user.
[1625] Input: Information sent from the server
[1626] Output: Recommended fishing gear and retailer information displayed to the user.
[1627] Specifically, the device displays the following on the app's UI: "Recommended lure: Lure from a specified manufacturer, Retailer: Specified retailer (Address: Specific residential area, Business hours: 9:00-18:00)."
[1628] In this way, the system provides users with comprehensive support for their fishing trips.
[1629] (Application Example 1)
[1630] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1631] In food delivery, a system that provides optimal delivery timing and routes is necessary to improve delivery efficiency and customer satisfaction. However, current systems do not fully utilize historical data, and their calculation of optimal routes based on real-time traffic information is insufficient. As a result, delivery delays and inefficiencies occur. To solve these problems, it is necessary to improve the accuracy of delivery forecasting and route optimization.
[1632] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1633] In this invention, the server includes a user transport plan input means, a location information acquisition means, a delivery prediction database reference means, a delivery prediction calculation means, a traffic information acquisition means, and an optimal route calculation means. This makes it possible to provide highly accurate delivery predictions and optimal routes based on past logistics data and real-time traffic information.
[1634] "User transportation plan input means" refers to a device or interface for users to input delivery destinations and order information.
[1635] "Location information acquisition means" refers to means for acquiring the current location of a device or the location information of a destination.
[1636] "Delivery prediction database referencing means" refers to a means of accessing a database containing past delivery data and obtaining necessary information.
[1637] "Delivery prediction calculation means" refers to algorithms and models used to analyze past delivery data and predict future delivery timings.
[1638] "Calculation result display means" refers to a device or interface that visually displays calculated delivery timing and route information to the user.
[1639] "Means of acquiring traffic information" refers to methods of obtaining information to understand traffic conditions in real time and use it to optimize delivery routes.
[1640] "Optimal route calculation means" refers to algorithms and models for calculating the optimal delivery route based on location information and traffic information.
[1641] "Storage method" refers to a means of saving delivery information and logistics data entered by users to a database.
[1642] "Display means" refers to devices or interfaces that visually provide users with information stored in a database.
[1643] This invention provides a system that supports efficient food delivery. Specific embodiments will be described in detail based on the roles of the server, terminal, and user.
[1644] User input and information retrieval
[1645] The user enters order information and delivery address information into the food delivery app. For example, if the user enters "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the device receives the information from the user. This information includes, for example, location information (latitude and longitude).
[1646] Location information acquisition and delivery prediction
[1647] The terminal acquires location information and uses that information to access the database using a delivery prediction database reference mechanism. The server retrieves past delivery data from the database and analyzes it. This analysis uses AI algorithms and machine learning models to make predictions, for example, based on past delivery data under similar conditions. The server uses a delivery prediction calculation mechanism to calculate the optimal delivery timing from the analyzed data. For example, if it concludes that "18:30 to 18:45 is the optimal delivery time," it sends that result to the terminal. The terminal can then display this prediction result to the user.
[1648] Acquisition of traffic information and calculation of optimal route
[1649] The server acquires real-time traffic information using a traffic information acquisition method. The terminal calculates the optimal delivery route using an optimal route calculation method based on the current location, the delivery destination location information, and the real-time traffic information. For example, if it calculates the fastest and most efficient route and obtains the result that "the best route is to go through XX Street and enter YY Street," it sends the result to the terminal. The terminal can then display the optimal route information to the delivery person.
[1650] Accumulation and analysis of delivery information
[1651] When a user enters delivery information (order ID, delivery address, delivery completion time, etc.), the terminal sends this information to the server. The server has a storage system for accumulating delivery information, allowing for the collection of delivery data from across the country. Based on the accumulated information, the server analyzes the data and creates a ranking of popular delivery routes. The terminal can then display this ranking to the user, showing them which route has been the most efficient recently.
[1652] Specific example
[1653] If a user selects "I want a pizza delivered to 1-1-1 Marunouchi, Chiyoda-ku, Tokyo," the terminal acquires location information and queries the server. Based on past data, the server predicts that "18:30 to 18:45 is the optimal delivery time," and the terminal displays this to the user. Furthermore, the server acquires real-time traffic information and calculates the optimal route, such as "the best route is to go through XX Street and enter YY Street," and the terminal displays this to the delivery person.
[1654] The following is an example of a prompt sentence to be input using a generative AI model.
[1655] Order ID: 12345
[1656] Delivery address: 1-1-1 Marunouchi, Chiyoda-ku, Tokyo
[1657] Predict: What is the best delivery time and route for this order?
[1658] In this way, the present invention provides users with information on efficient delivery timing and optimal delivery routes, thereby realizing a comprehensive food delivery support system.
[1659] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1660] Step 1:
[1661] The user enters order information and delivery address information.
[1662] The user enters order information (for example, order ID: 12345) and the delivery address (1-1-1 Marunouchi, Chiyoda-ku, Tokyo) into the food delivery app. The device then retrieves this information. The input data consists of the order ID and the delivery location. This data forms the basis for the next step.
[1663] Step 2:
[1664] The device acquires location information and sends it to the server.
[1665] The terminal receives the delivery address location information (latitude and longitude) from the user and sends it to the server. The input data is the delivery address location information, and the output data is the location information sent to the server. Based on this information, the server performs the following processing.
[1666] Step 3:
[1667] The server predicts delivery timing based on past delivery data.
[1668] The server uses a delivery prediction database reference mechanism to retrieve historical delivery data and a delivery prediction calculation mechanism to predict the optimal delivery timing. The input data consists of the delivery destination's location information and historical delivery data, while the output data is the predicted optimal delivery timing (e.g., 18:30 to 18:45). A generative AI model is used for this process to analyze and predict the data.
[1669] Step 4:
[1670] The server sends the prediction results to the terminal, and the terminal displays them to the user.
[1671] The server sends the predicted delivery time to the terminal. The terminal receives this information and displays it to the user through a display device. The input data is the predicted delivery time, and the output data is the predicted result displayed to the user. This allows the user to know the optimal delivery time.
[1672] Step 5:
[1673] The server obtains traffic information and calculates the optimal route.
[1674] The server uses a traffic information acquisition mechanism to obtain real-time traffic information. Next, it uses an optimal route calculation mechanism to calculate the optimal route from the current location to the delivery destination. The input data is location information and traffic information, and the output data is the optimal delivery route (e.g., a route that goes through XX Street and enters YY Street).
[1675] Step 6:
[1676] The server sends optimal route information to the terminal, which then displays it to the delivery person.
[1677] The server sends the calculated optimal route information to the terminal. The terminal receives this information and displays it to the delivery person. The input data is the optimal delivery route, and the output data is the route information displayed to the delivery person. This allows the delivery person to know the most efficient route.
[1678] Step 7:
[1679] The user enters delivery information and the device sends it to the server.
[1680] After delivery is complete, the user enters delivery information (order ID, delivery address, delivery completion time, etc.). The terminal sends this information to the server. The input data is the delivery information, and the output data is the delivery information sent to the server.
[1681] Step 8:
[1682] The server stores and analyzes delivery information.
[1683] The server uses a storage method to accumulate delivery information and saves it to a database. Next, the ranking of popular delivery routes is analyzed based on the accumulated data. The input data consists of new and past delivery information, and the output data is the ranking of popular delivery routes that has been analyzed.
[1684] Step 9:
[1685] The server sends route rankings to the terminal, and the terminal displays them to the user.
[1686] The server sends ranking information of popular delivery routes that have been analyzed to the terminal. The terminal receives this information and displays it to the user. The input data is the ranking of popular delivery routes, and the output data is the ranking information displayed to the user. This allows the user to find the optimal delivery route.
[1687] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1688] This invention provides a system that further optimizes and personalizes the provision of services to users by combining it with an emotion engine that recognizes user emotions. First, the basic system configuration is as follows: it includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, a calculation result display means, a storage means, a display means, a partner fishing tackle manufacturer information acquisition means, a partner retailer information acquisition means, a recommended fishing tackle information display means, and a retailer information display means. Along with these basic means, an emotion engine is added to recognize user emotions and optimize the provision of services.
[1689] User input and emotion recognition
[1690] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay." The device analyzes the user's emotions through facial recognition and voice input, simultaneously with the user's input information, using an emotion engine.
[1691] Location information acquisition and fishing success prediction
[1692] The terminal acquires location information and uses that information to query the server for past fishing results data using a fishing results prediction database reference means. Based on the past data, the server uses a fishing results prediction calculation means to perform analysis and calculate the appropriate timing for fishing.
[1693] Providing advice tailored to your emotions
[1694] The server uses an emotion engine to customize calculation results based on the user's emotional data. For example, if a user expresses anxiety, it provides reassuring advice such as specific fishing techniques and preparation tips. Conversely, if a user expresses positive emotions, it recommends new fishing spots or challenging fishing equipment.
[1695] The server sends the calculation results to the terminal, which then displays this information to the user. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[1696] Sharing and confirming fishing results
[1697] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The device sends this information to the server, where it is stored in the fishing results database. The server analyzes this data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[1698] Emotion-based fishing gear recommendations and store suggestions
[1699] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Based on its emotion engine, the server recommends fishing tackle that best suits the user's emotional state. For example, if the user is a beginner and feeling anxious, the server will recommend beginner-friendly fishing tackle sets and provide information on the nearest retailer. If the user is experienced and excited, the server will provide information on new, high-performance fishing tackle and specific retailers they might not normally visit.
[1700] The server sends recommended fishing gear information and store information to the terminal, which then displays it to the user. For example, "Recommended fishing gear: ABC Corporation XYZ, Store: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1701] Specific example
[1702] For example, if a user enters "I want to go fishing in Tokyo Bay" and the emotion engine detects excitement from the user's facial expression, the server will advise the user that "7pm to 8pm is the best time to go fishing," as well as suggest, "Why not try a challenging new lure? We recommend ABC's latest model, the XYZ." If the user is feeling anxious, the server will provide customized information such as, "You can buy a beginner-friendly fishing gear set at XX Fishing Tackle Shop. Here is the nearest store."
[1703] This invention goes beyond simply predicting fishing results, enabling personalized services that are tailored to the user's emotions. This is expected to improve the fishing experience and increase user satisfaction.
[1704] The following describes the processing flow.
[1705] Step 1:
[1706] The user enters the location where they want to go fishing into the app on their device. For example, they might enter "Tokyo Bay".
[1707] Step 2:
[1708] The device receives input from the user and obtains location information (latitude, longitude, etc.). Furthermore, the emotion engine captures the user's face with the camera and performs facial expression analysis.
[1709] Step 3:
[1710] The emotion engine analyzes the user's emotions and sends the results to the device. For example, it might determine whether the emotion is "positive" or "negative."
[1711] Step 4:
[1712] The device uses location information and sentiment data to query the server for past fishing results data using a fishing results prediction database reference mechanism.
[1713] Example: GET / api / fishing / prediction?location=TokyoBay
[1714] Step 5:
[1715] The server receives the request and extracts past fishing results data from the database.
[1716] Example database query: SELECT FROM FishingData WHERE location='TokyoBay'
[1717] Step 6:
[1718] Based on data extracted by the server, fishing success is predicted using AI algorithms and machine learning models. Past fishing data is analyzed to calculate the optimal timing for fishing trips.
[1719] Step 7:
[1720] The server returns the analysis results to the terminal. For example, it sends data such as "The optimal time for fishing is from 7 PM to 8 PM."
[1721] Step 8:
[1722] The device generates customized advice based on prediction results and sentiment data. For example, if the sentiment is positive, it might add challenging advice. "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Try out some new lures."
[1723] Step 9:
[1724] The device displays customized prediction results and advice to the user.
[1725] Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. Also, to ensure you can fish with confidence even in unfamiliar locations, the recommended lure for sea bass is the ABC XYZ."
[1726] Step 10:
[1727] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay."
[1728] Step 11:
[1729] The device sends fishing results information from the user to the server.
[1730] Example: POST / api / fishing / results with data {"location": "TokyoBay", "fish_type": "Sebass", "quantity": 5}
[1731] Step 12:
[1732] The server stores the fishing results information it receives in a database.
[1733] Example database query: INSERT INTO FishingResults (location, fish_type, quantity) VALUES ('TokyoBay', 'Seabass', 5)
[1734] Step 13:
[1735] A user requests information about popular fishing spots. The device sends this request to the server.
[1736] Step 14:
[1737] The server collects the latest fishing results from the database and generates a ranking of popular fishing spots.
[1738] Example database query: SELECT location, COUNT() as catch_count FROM FishingResults GROUP BY location ORDER BY catch_count DESC
[1739] Step 15:
[1740] The server returns the aggregated results to the terminal. For example, it sends data such as "1. Tokyo Bay, 2. Lake Biwa, 3. Seto Inland Sea" as a popularity ranking.
[1741] Step 16:
[1742] The ranking information received by the device is displayed to the user.
[1743] Example: "1st place: Tokyo Bay (30 fish caught), 2nd place: Lake Biwa (25 fish caught), 3rd place: Seto Inland Sea (20 fish caught)"
[1744] Step 17:
[1745] When the user decides on a destination, the device sends that information to the server.
[1746] Example: {"location": "TokyoBay", "date": "2023-10-20"}
[1747] Step 18:
[1748] The server retrieves relevant information from partner fishing tackle manufacturers. Example: Recommended fishing tackle.
[1749] Step 19:
[1750] The server retrieves information about the nearest retailer based on the partner retailer information.
[1751] Example: {"store_name": "XX Fishing Tackle Shop", "address": "XX Ward, Tokyo", "hours": "9:00-18:00"}
[1752] Step 20:
[1753] The server sends recommended fishing gear information and retailer information to the terminal.
[1754] Step 21:
[1755] The device displays fishing gear and retailer information it has received to the user.
[1756] Example: "Recommended lure: ABC XYZ, Retailer: XX Fishing Tackle Shop (Address: XX Ward, Tokyo, Business Hours: 9:00-18:00)"
[1757] (Example 2)
[1758] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1759] Traditional fishing catch prediction systems primarily focused on improving prediction accuracy to support users' fishing trip planning, but struggled to provide personalized advice that took into account users' emotions and individual needs. Therefore, there were limitations to improving user satisfaction and the fishing experience. Furthermore, while they accumulated fishing catch information and displayed rankings of popular fishing spots, they lacked features to recommend fishing gear and retailers based on user sentiment.
[1760] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a user input means, a location information acquisition means, a fishing catch prediction database reference means, a fishing catch prediction calculation means, an emotion recognition means, and a calculation result display means. This makes it possible not only to predict fishing catches based on past fishing catch data, but also to analyze the user's emotion data using an emotion engine and provide personalized services. In addition to accumulating fishing catch information and displaying rankings of popular fishing spots, it is also possible to provide recommended fishing gear and store information according to the user's emotions, thereby improving the user's fishing experience and significantly increasing satisfaction.
[1761] A "user input method" is an interface for users to input information about the fishing locations they want to go to and their fishing trip plans.
[1762] "Location information acquisition means" refers to a means of obtaining the user's current location using location information technology such as GPS.
[1763] A "fishing catch prediction database reference method" is a means of referencing a database that stores past fishing catch data and making predictions based on that data.
[1764] A "fishing catch prediction calculation means" is a means of performing calculations to predict future fishing catches based on past fishing catch data that has been referenced.
[1765] "Emotion recognition means" refers to methods for recognizing a user's emotional state by analyzing data such as facial recognition and voice input.
[1766] The "calculation result display means" is an interface for visually displaying analysis results based on fishing catch predictions and sentiment data to the user.
[1767] "Storage method" refers to a means of saving fishing results information entered by users to a database.
[1768] A "display means" is an interface that provides users with information visually based on information stored in a database.
[1769] "Means for providing recommended fishing gear and retailer information" refers to means for recommending and providing users with appropriate fishing gear and retailer information based on user sentiment data.
[1770] This invention is a system that optimizes and personalizes the delivery of services to users by combining an emotion engine that recognizes the user's emotions. This system uses the following main hardware and software:
[1771] User input means: An interface for users to input fishing locations and fishing trip plans (e.g., a smartphone application).
[1772] Location information acquisition method: The user's current location is obtained using a GPS module.
[1773] Fishing catch prediction database reference means: A means of accessing a server database where past fishing catch data is stored.
[1774] Fishing catch prediction calculation method: Fishing catch prediction is performed using data analysis software (e.g., a Python script) that runs on a server.
[1775] Emotion recognition means: An emotion engine that analyzes the user's facial expressions and voice (e.g., a face recognition / voice analysis engine using a machine learning model).
[1776] Calculation result display means: An interface for visually displaying the analysis results to the user (e.g., a smartphone application).
[1777] Storage method: A database (e.g., SQL database) for storing fishing results information entered by users.
[1778] Display method: An interface for displaying ranking information and other data to the user based on information in a database (e.g., a smartphone application).
[1779] Means of providing recommended fishing gear and retailer information: Recommendation systems based on user sentiment data (e.g., machine learning-based recommendation engines).
[1780] User input and sentiment recognition
[1781] The user uses a device (smartphone app) to input the location where they want to go fishing. For example, they might input "Tokyo Bay." At this time, the device uses its camera and microphone to perform facial recognition and voice input, and an emotion recognition system analyzes the user's emotions.
[1782] Specific example:
[1783] The user types "Tokyo Bay" into a text box, and the device's camera captures the user's facial expression. An emotion engine analyzes the user's facial expression and voice to recognize emotions such as "happy" or "anxious."
[1784] Location information acquisition and fishing success prediction
[1785] The terminal's GPS module obtains the user's current location, and based on that information, it queries the server for past fishing results data using a fishing results prediction database reference means. The server analyzes the past data using a fishing results prediction calculation means and calculates the optimal timing for fishing.
[1786] Specific example:
[1787] The device obtains the user's current location and sends the location information, along with "Tokyo Bay," to the server. The server's database then refers to past fishing results data to calculate the optimal fishing time.
[1788] Providing advice tailored to your emotions
[1789] The server uses an emotion engine to generate customized calculation results based on the user's emotion data. The server sends the calculation results to the terminal, which then displays them to the user.
[1790] Specific example:
[1791] The server generates and sends advice such as, "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a beginner-friendly fishing gear set." The device then displays this information to the user.
[1792] Sharing and confirming fishing results
[1793] The user enters fishing results, and the device sends this information to a server for storage in a database. The server analyzes the stored data and creates a ranking of popular fishing spots nationwide. The device then displays this ranking information to the user.
[1794] Specific example:
[1795] The user enters "I caught 5 sea bass in Tokyo Bay," and the device sends the information to the server. The server adds the data to its database and generates the latest ranking. The device then displays this ranking to the user.
[1796] Emotion-based fishing gear recommendations and store suggestions
[1797] When a user decides on a fishing trip plan, the server extracts information on affiliated fishing tackle manufacturers and retailers. Using an emotion engine, it recommends fishing tackle and retailer information that best suits the user's emotional state. The server sends the recommended information to the device, which then displays it to the user.
[1798] Specific example:
[1799] The server recognizes that the user is a beginner and feeling anxious, and recommends a beginner-friendly fishing gear set and information on a reliable retailer. The terminal will display something like, "Recommended fishing gear for beginners: Fishing gear set XYZ. Retailer: ABC Fishing Tackle Shop (Address: XX Prefecture, XX City)."
[1800] Prompt example
[1801] "I want to go fishing in Tokyo Bay."
[1802] "I'm a beginner and I'm feeling anxious."
[1803] "I want to know the latest fishing gear information."
[1804] Through the procedures described above, this invention can provide personalized services that are tailored to the user's emotions, thereby improving the fishing experience and increasing user satisfaction.
[1805] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1806] Step 1:
[1807] The user enters the location where they want to go fishing into the device. For example, they might enter "Tokyo Bay." The device receives the user's input data and sends it to the backend. At this time, the camera and microphone are used to capture the user's facial expressions and voice, and this data is sent to the emotion recognition engine.
[1808] Input: Location information such as "Tokyo Bay", user's facial expression image, audio data
[1809] Data processing / calculation: Convert input location information into a database query format, and run facial image and audio data through an emotion recognition engine to generate analysis data.
[1810] Output: Analyzed emotion data, location data
[1811] Specific actions:
[1812] The user types "Tokyo Bay" into a text box, and the camera captures the user's face. Voice input is also accepted, and that data is sent to the emotion recognition engine in real time. Analysis results are obtained, and the user's emotional state is classified as "excited" or "anxious," etc.
[1813] Step 2:
[1814] The device uses a GPS module to obtain its current location. Based on the obtained location information, it queries the server for data through a fishing catch prediction database reference mechanism.
[1815] Input: User's current location information
[1816] Data processing / calculation: Convert current location information into a database query format and send it to the server.
[1817] Output: Inquiry results based on location information (past fishing results data)
[1818] Specific actions:
[1819] The device collects data from its GPS module hardware to determine the user's current location. This location information is then formatted to query the fishing success prediction database and sent to the server.
[1820] Step 3:
[1821] The server references a fishing catch prediction database and performs a fishing catch prediction calculation based on past fishing data. It generates calculation results and performs filtering and customization based on sentiment data.
[1822] Input: Past fishing results data, location information, sentiment data
[1823] Data Processing / Calculation: Analyze fishing results data and calculate the optimal fishing timing based on current location information and emotional data.
[1824] Output: Emotion-customized fishing catch prediction data
[1825] Specific actions:
[1826] The server retrieves past fishing results data from the database and compares it with the user's current location. Based on the user's emotional state, for example, if they are "excited," the server recommends new fishing spots; if they are anxious, it provides detailed instructions on how to fish.
[1827] Step 4:
[1828] The server generates fishing catch prediction data and sends it to the terminal, which then displays the analysis results to the user.
[1829] Input: Emotion-based customized fishing catch prediction data
[1830] Data processing / calculation: Convert customized data into a format for terminal display.
[1831] Output: Information displayed to the user
[1832] Specific actions:
[1833] The device displays information such as the optimal fishing time and recommended fishing gear based on data received from the server. Example: "The best time for fishing in Tokyo Bay is from 7 PM to 8 PM. We also recommend a fishing gear set suitable for beginners."
[1834] Step 5:
[1835] The user enters fishing results. For example, they might enter, "I caught 5 sea bass in Tokyo Bay." The terminal sends this information to the server, where it is stored in the database.
[1836] Input: Fishing results information
[1837] Data processing / calculation: Convert fishing results data to a database storage format.
[1838] Output: Accumulated fishing results data
[1839] Specific actions:
[1840] A user enters fishing results into the app and reports, for example, "I caught 5 sea bass." The device collects this data, sends it to a server, and stores it in a database.
[1841] Step 6:
[1842] The server analyzes accumulated fishing results data and creates a ranking of popular fishing spots nationwide. The terminal then displays this ranking information to the user.
[1843] Input: Accumulated fishing results data
[1844] Data Processing / Calculation: Statistical processing of fishing results data and organization into ranking format.
[1845] Output: Popular Fishing Spot Ranking
[1846] Specific actions:
[1847] The server extracts fishing results data from across the country from the database and performs statistical processing. It organizes popular fishing spots into a ranking format and sends this information to the terminal. The terminal then displays this ranking information to the user.
[1848] Step 7:
[1849] The server extracts information on affiliated fishing tackle manufacturers and retailers, and recommends the most suitable fishing tackle and retailer information based on an emotion recognition engine. The server sends the recommended information to the terminal, which then displays it to the user.
[1850] Input: User sentiment data, fishing trip plan
[1851] Data Processing / Calculation: Generates optimal fishing gear and retailer information based on emotional data and fishing trip plans.
[1852] Output: Recommended fishing gear information, retailer information
[1853] Specific actions:
[1854] The server analyzes the user's emotional data and fishing trip plan, generating optimal choices based on their emotions. For example, a beginner's set for beginners, or a specific store they wouldn't normally visit for those with high-performance fishing gear. The terminal then displays "Recommended fishing gear: XX Company YY, Store: ZZ Fishing Tackle Shop (address, business hours)."
[1855] (Application Example 2)
[1856] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1857] Current food delivery systems face the challenge of failing to provide personalized recommendations based on user emotions, making it difficult to fully enhance user satisfaction. Furthermore, there is a need to provide a better service experience by offering optimal recommendations tailored to the user's emotional state. Traditional systems, which provide uniform recommendations without considering user emotions, often fail to meet user needs.
[1858] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1859] In this invention, the server includes emotion recognition means, emotion-based recommendation means, and database referencing means. This makes it possible to analyze the user's emotional state in real time and recommend the most suitable food delivery menu or restaurant based on the results. Specifically, by recommending relaxing dishes when the user is feeling stressed, and new dishes when the user is showing positive emotions, user satisfaction can be increased.
[1860] A "user input means" is an interface device that allows a user to input information into a system.
[1861] "Location information acquisition means" refers to technologies for acquiring the user's current location information, and utilizes GPS or other location determination technologies.
[1862] The "fishing catch prediction database referencing method" is a technology for accessing a database containing past fishing catch data and obtaining necessary information.
[1863] A "fishing catch prediction calculation means" is a computing device or software used to predict fishing catches based on acquired data.
[1864] A "calculation result display means" is an output device for visually presenting the calculation results to the user.
[1865] "Emotion recognition means" refers to technologies for analyzing a user's emotions, such as facial recognition and voice analysis.
[1866] "Emotion-based recommendation methods" are technologies that generate optimal recommendation information based on acquired emotional data.
[1867] "Storage means" refers to a database or storage system for storing data collected from users.
[1868] "Display means" refers to a monitor, smartphone screen, or other display device used to visually present information to a user.
[1869] A "database referencing means" is a function that accesses a database in order to retrieve specific information.
[1870] A "recommendation method" is a technology used to suggest new and recommended information or products to users.
[1871] This invention is a system that optimizes food delivery services for users and provides personalized recommendations by combining an emotion engine that recognizes user emotions. Specific embodiments of this system are described below.
[1872] This system includes user input means, location information acquisition means, emotion recognition means, emotion-based recommendation means, database reference means, and calculation result display means. It is also implemented through communication between the server and the user's terminal.
[1873] User input and sentiment recognition
[1874] For example, a user might use their smartphone to input their desired dishes and restaurant information into a food delivery app. The smartphone's camera also captures the user's face, and an emotion recognition system analyzes the user's emotions in real time. This system uses technologies such as OpenCV and EmotionRecognizer to determine emotions like stress, joy, and relaxation from the user's facial expressions and voice.
[1875] Emotion-based recommendations and database referrals
[1876] The server uses a database referencing mechanism to retrieve past order data and rating information based on acquired location information and user sentiment data. The sentiment-based recommendation mechanism then uses this data to select the most suitable dishes and restaurants for the user's emotional state. For example, if the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes.
[1877] Display of calculation results
[1878] The server generates the calculation results and sends them to the user's terminal. The user's terminal displays these results and provides specific food and restaurant information. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food," and then list specific menu items as options.
[1879] Specific example
[1880] As a concrete example, a user enters "Italian" and has the app scan their face. The emotion recognition system analyzes the user's facial expression and recognizes that they are feeling stressed. The emotion-based recommendation system then displays a message saying, "To reduce stress, try a healthy salad or a familiar comfort food," and recommends several specific menu items.
[1881] Example of a prompt
[1882] "Users are experiencing stress. Please suggest some healthy food menu options."
[1883] "Recommend new and unique dishes to users who are experiencing positive emotions."
[1884] This system enables personalized food delivery recommendations based on the user's emotional state, thereby improving user satisfaction.
[1885] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1886] Step 1:
[1887] The user enters information about their desired food or restaurant into a food delivery app on their smartphone. Simultaneously, a facial image is captured via the smartphone's camera. This inputs both the user's preferences and facial image data. This data is then analyzed using emotion recognition technology.
[1888] Step 2:
[1889] The device's emotion recognition system analyzes the user's emotions based on captured facial images. Using technologies such as EmotionRecognizer, it extracts feature data from the facial image and determines emotions such as stress, joy, and relaxation. This analysis result is output as emotion data.
[1890] Step 3:
[1891] The device obtains the user's location information. Using location information acquisition methods such as GPS, it determines the user's current location and obtains that location information. This information is then sent to the server.
[1892] Step 4:
[1893] The server receives the acquired sentiment data and location information. Using a sentiment-based recommendation system, the server retrieves past order data and rating information using a database referencing system. This allows it to search for information on dishes and restaurants that best suit the user's emotional state.
[1894] Step 5:
[1895] The server uses emotion-based recommendation methods to select the most suitable dishes and restaurants based on the acquired data. If the user is feeling stressed, it recommends relaxing, healthy menu options; if they are feeling positive, it recommends new and unique dishes. These recommendation results are generated and sent to the device.
[1896] Step 6:
[1897] The terminal displays the recommendation results received from the server to the user via a calculation result display mechanism. Specific food and restaurant information is provided in a list format, allowing the user to select. For example, it might display, "To reduce stress, try a healthy salad or familiar comfort food."
[1898] Step 7:
[1899] The user selects dishes and restaurants from the displayed recommendations. The selection information is then sent back to the server for final order processing. This process completes the food delivery order.
[1900] This series of processes enables personalized food delivery recommendations based on the user's emotional state, thereby increasing user satisfaction.
[1901] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1902] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1903] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1904] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1905] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1906] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1907] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1908] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1909] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1910] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1911] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1912] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may ...
Claims
1. A user input means for the user to input information into the system, A location information acquisition method that identifies information about the desired location entered by the user and obtains location information such as the latitude and longitude of that location, A fishing results prediction database referencing means that accesses a database containing accumulated past fishing results data and refers to that data, A fishing catch prediction calculation means that uses AI algorithms and machine learning models to predict fishing results based on referenced data and calculates the optimal timing for fishing, A calculation result display means that visually displays the prediction results obtained by the fishing catch prediction calculation means to the user, A system that includes this.
2. The system according to claim 1, which predicts fishing results based on location information using past fishing results data.
3. A means for storing fishing results information entered by users in a database, A display method that analyzes fishing results information in a database and shows popular fishing spots in a ranking format, The system according to claim 1, including the following:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A