system
The system optimizes daily planning by integrating user preferences, budget, and real-time weather data to generate a life plan that aligns with individual needs and preferences, addressing the limitations of conventional planning systems.
Patent Information
- Application Number
- JP2024137259
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-16
- Publication Date
- 2026-02-27
AI Technical Summary
Individuals struggle to plan their daily schedules within a budget while accommodating their hobbies and preferences, and existing systems fail to consider real-time weather conditions and past expenditures effectively.
A system that generates a life plan based on user input, including budget, remaining days, preferences, and location, using weather forecast and past expenditure data to suggest activities and meals, optimizing the plan to fit within the user's budget and preferences.
Enables users to create a realistic and satisfying life plan that reflects their hobbies and preferences, ensuring they stay within their budget and account for weather and past spending patterns.
Smart Images

Figure 2026034138000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Many people often struggle to choose what they want and need within a limited budget. Planning a daily schedule without compromising on one's hobbies and preferences is particularly complex, and the time and effort required for planning can be a significant burden. There is an urgent need to address this issue. Another issue that needs to be addressed is the lack of a system that can select appropriate activities within a budget while taking into account weather conditions and past expenditures. [Means for solving the problem]
[0005] The present invention is a system for generating a life plan based on a user's budget, remaining days, preference information, and location information. The system includes the following means: a means for inputting information from the user, a means for generating a life plan, a means for acquiring weather forecast data from an external API, and a means for acquiring past expenditure data from the external API. The system further includes a means for selecting recommended activities taking into account the acquired weather forecast data and past expenditure data, and a means for displaying an optimal life plan to the user. The system also includes a function for suggesting optimal dining options and leisure activities based on specific preference information. As a result, the user can create a satisfactory plan within their budget without compromising their hobbies and preferences.
[0006] "Budget" refers to the total amount of monetary resources available to a User.
[0007] "Remaining days" refers to the number of days left to execute your life plan within your budget.
[0008] "Preference information" refers to information about a user's personal preferences and tastes, such as hobbies, interests, favorite foods, and favorite activities.
[0009] "Location Information" refers to geographic data about where a user is currently located or where an activity is planned.
[0010] A "life plan" refers to a collection of schedules and plans generated based on a user's budget, preferences, and other conditions.
[0011] "Weather Forecast Data" means weather information for a specified location obtained from an external API.
[0012] "Historical Spending Data" means detailed information about previous spending by a User.
[0013] "External API" refers to an application program interface for retrieving information through collaboration with other services or databases.
[0014] "Recommended activities" refer to activities or actions selected based on the user's budget, preferences, weather, etc.
[0015] "Dining options" refers to dining locations and menus suggested based on the user's preferences.
[0016] "Leisure activities" refers to activities such as entertainment and sports that enrich a user's free time. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12]FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0018] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0019] First, the terms used in the following description will be explained.
[0020] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0021] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0022] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0023] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0024] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0025] [First embodiment]
[0026] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0027] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0028] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0029] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0030] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0031] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0032] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0033] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0035] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0036] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0037] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0038] The present invention is a system for generating a lifestyle plan tailored to a user's tastes and preferences within a limited budget. The purpose of this system is to present the optimal plan for the user and improve their quality of life. Specific embodiments of the system are described below.
[0039] Basic flow
[0040] 1. First, the user inputs their budget, remaining days, preferences, and location information. This information is stored in the system's database, and a plan is generated based on it.
[0041] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0042] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes the weather forecast for the specified location based on the user's location information.
[0043] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used as a reference for planning the current budget.
[0044] 5. The device executes the generate_plan method to generate a life plan for the required number of days. This plan includes the following elements:
[0045] Weather data for each day
[0046] Daily budget allocation
[0047] Recommended activities and dietary choices
[0048] 6. The device uses the recommend_activities method to list recommended activities based on budget and weather, for example, outdoor activities on sunny days and indoor activities on rainy days.
[0049] 7. The server formats the data to display the generated life plan and provides it to the user. This information is used by the user to review the plan and make any necessary reservations or preparations.
[0050] Specific examples
[0051] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan:
[0052] 1. First day (sunny):
[0053] Plan: It's a sunny day, so visit the park and relax, then have dinner at an Italian restaurant.
[0054] Budget: Free to visit the park, allocate 3000 yen for dinner.
[0055] 2. Day 2 (Cloudy):
[0056] Plan: Suggest going to the movies.
[0057] Budget: Allocate 1500 yen to see a movie.
[0058] 3. Day 3 (Rain):
[0059] Plan: Set aside time for reading as an indoor activity, and have dinner at an Italian restaurant.
[0060] Budget: Reading is free, 3000 yen allocated for dinner.
[0061] This flow allows users to enjoy life without compromising their tastes and preferences, and stay within their budget. The system takes into account past spending data and weather information to provide realistic plans.
[0062] The processing flow will be explained below.
[0063] Step 1:
[0064] The user inputs the budget, remaining days, preference information, and location information into the terminal.
[0065] As a specific example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[0066] Step 2:
[0067] The device generates an instance of the LifestylePlanner class based on the input information.
[0068] As a concrete example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[0069] Step 3:
[0070] The device calls the fetch_weather method to retrieve weather forecast data from an external API.
[0071] As a concrete example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (e.g., Tokyo).
[0072] Step 4:
[0073] The terminal calls the fetch_past_expenses method to retrieve past expense data from an external API.
[0074] As a concrete example, the terminal executes past_expenses = planner.fetch_past_expenses() to obtain the user's past spending patterns.
[0075] Step 5:
[0076] The device executes the generate_plan method to generate a life plan for the required number of days.
[0077] For example, the device runs lifestyle_plan = planner.generate_plan() to generate a plan taking into account weather data and budget for each day.
[0078] Step 6:
[0079] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[0080] As a specific example, we suggest "visiting the park" on sunny days and "indoor activities" on rainy days.
[0081] Step 7:
[0082] The server formats the data to display the generated life plan and provides it to the user.
[0083] As a specific example, the server converts data into HTML or JSON format and sends it to the terminal.
[0084] Step 8:
[0085] The user checks the displayed life plan and makes the necessary reservations and preparations.
[0086] For example, we make restaurant reservations, buy movie tickets, and enjoy our daily lives based on plans.
[0087] Example 1
[0088] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0089] The problem that this invention aims to solve is to automatically generate a lifestyle plan that takes into account a user's hobbies and preferences within a limited budget, and allows the user to select optimal activities and meals based on that plan. Conventional plan generation systems have difficulty providing realistic and satisfying plans because they are unable to fully reflect the user's individual needs, real-time weather information, or past expenditure data. The purpose of this invention is to solve these problems and improve the user's quality of life by presenting a plan that is appropriate for the user.
[0090] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0091] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a lifestyle plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expense history data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expense history data, means for displaying the generated lifestyle plan to the user, and means for suggesting outdoor and indoor activities based on the budget and weather data. This allows the user to obtain a realistic and effective lifestyle plan that reflects their own hobbies and preferences.
[0092] "User" refers to an individual who uses this system to generate a life plan and acts based on that plan.
[0093] "Budget" refers to the total amount of financial constraints that a user can use to carry out their lifestyle plan.
[0094] "Number of days remaining" refers to the number of days remaining in the period for which the user is planning using this system.
[0095] "Preference information" refers to information about specific meals and activities that a user prefers.
[0096] "Location information" refers to data that indicates a user's current geographic location.
[0097] A "life plan" refers to a plan that includes suggestions for activities and meals to be done within a budget, generated based on the user's budget, preference information, weather forecast data, and past spending data.
[0098] "Weather Forecast Data" refers to information about future weather conditions based on a specific location, obtained through an external API.
[0099] "Historical Expense Data" means data regarding a User's historical spending history obtained through an External API.
[0100] "Recommended activities" refer to activities selected by the system taking into account the user's budget, preference information, and weather forecast data.
[0101] "External API" refers to an application program interface used to obtain data from other systems or services.
[0102] "Outdoor activities" refers to activities that are recommended to be carried out outdoors.
[0103] "Indoor activities" refer to activities that are recommended to be performed indoors.
[0104] The present invention relates to a system for automatically generating an optimal lifestyle plan for a user based on the user's budget, remaining days, preference information, and location information. An embodiment for implementing this system will be described below.
[0105] System configuration
[0106] This system consists of a user input device, a data processing terminal, a database, a means of communication with external APIs, and a display device for displaying results. Examples of specific software and hardware used include:
[0107] Input devices: PC, smartphone, tablet, etc.
[0108] Data processing terminal: Server
[0109] Database: Relational Database Management System (RDBMS)
[0110] External APIs: Weather APIs (e.g., OpenWeatherMap API), financial data APIs (e.g., Plaid API)
[0111] Display device: Web browser
[0112] User input of information
[0113] Users input their budget, remaining days, preferences, and location information into the system using an input device. This information is sent to the server and stored in a database. This information becomes the basis for generating a lifestyle plan.
[0114] Data Acquisition
[0115] The server uses the data processing terminal to obtain the following data:
[0116] Weather forecast data: Uses an external API to obtain weather forecast data based on the user's location.
[0117] Historical Expense Data: Utilize external financial data APIs to obtain users' historical spending data.
[0118] Life plan generation
[0119] The server creates an instance of the LifestylePlanner class based on the information it has obtained and creates a lifestyle plan that includes the following elements:
[0120] Weather data for each day
[0121] Daily budget allocation
[0122] Recommended activities and dietary choices
[0123] Activity suggestions
[0124] The server uses the recommend_activities method during the life plan generation process to list recommended activities taking into account budget and weather data. For example, outdoor activities are suggested on sunny days, and indoor activities on rainy days.
[0125] View Plans
[0126] The generated life plan is formatted by the server and sent back from the database to the user's input device. The user can then check the life plan through their own device and make any necessary reservations or preparations.
[0127] Specific examples
[0128] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information of "I like Italian food," and location information of "I live in Tokyo," the server will generate the following lifestyle plan.
[0129] Day 1 (Sunny): Visit a park and relax. Then have dinner at an Italian restaurant. Budget 3000 yen for dinner.
[0130] Day 2 (Cloudy): Suggest going to the movies. Allocate 1500 yen to the movie.
[0131] Day 3 (Rain): Set aside time to enjoy reading as an indoor activity. Also, have dinner at an Italian restaurant. Allocate a budget of 3,000 yen for dinner.
[0132] Prompt Sentence Examples
[0133] An example of a prompt is as follows:
[0134] "If a user inputs a budget of 30,000 yen, 5 days remaining, a preference for Italian food, and a residence in Tokyo, what kind of life plan will be generated?"
[0135] This system allows users to obtain realistic lifestyle plans that fully reflect their own tastes and preferences, enabling them to live an efficient and satisfying life within a limited budget.
[0136] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0137] Step 1:
[0138] The user inputs their budget, remaining days, preferences, and location information, which is the initial input to the system.
[0139] Input: Budget, remaining days, preferences, location
[0140] Specific operation: The user uses a device to input information into a web form. For example, the user inputs a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[0141] Output: User information stored in the database
[0142] Step 2:
[0143] The terminal receives the user's input information and generates an instance of the LifestylePlanner class based on the information stored in the database.
[0144] Input: User information
[0145] Specific operation: The device calls the constructor of the LifestylePlanner class and sets the user information as an instance variable.
[0146] Output: An instance of the LifestylePlanner class
[0147] Step 3:
[0148] The device uses the fetch_weather method to retrieve location-based weather forecast data from an external API.
[0149] Input:Location
[0150] Specific operation: The device makes an API request and sends the specified location information (e.g., "Tokyo") to the external API.
[0151] Output: Weather forecast data (JSON format)
[0152] Step 4:
[0153] The terminal uses the fetch_past_expenses method to retrieve past expense data from an external finance API.
[0154] Input: User's identity
[0155] Specific operation: The device makes an API request and sends the user's identification information. The external API responds with spending data for the past three months in JSON format.
[0156] Output: Historical spending data (JSON format)
[0157] Step 5:
[0158] The device executes the generate_plan method to generate a lifestyle plan for the required number of days.
[0159] Input: Weather forecast data, past spending data, user budget, preferences, remaining days
[0160] How it works: The device uses this data to run algorithms and calculate daily activities and budget allocations. For example, on sunny days, it suggests relaxing in the park as an outdoor activity, and on rainy days, it suggests reading or watching a movie as an indoor activity.
[0161] Output: Life plan (includes weather data, budget allocation, and activity suggestions)
[0162] Step 6:
[0163] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[0164] Input: Generated life plan
[0165] How it works: The device uses weather and budget data to create a list of recommended activities, such as playing tennis on a sunny day and reading in the library on a rainy day.
[0166] Output: List of recommended activities
[0167] Step 7:
[0168] The server formats the generated life plan and sends the data to the terminal for display to the user.
[0169] Input: Life plan and recommended activity list
[0170] Specific operation: The server converts the generated plan into HTML format and returns it to the user's device. The user can view the formatted plan through a browser, add it to their schedule, or make a reservation.
[0171] Output: A life plan displayed on the user's screen
[0172] (Application example 1)
[0173] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0174] In today's busy lifestyles, many people find it difficult to plan their meals and activities within budget and time constraints. It is particularly difficult to efficiently create a life plan while taking into account daily weather and budgets. Furthermore, there is a lack of systems that suggest meals and activities that suit users' preferences. Therefore, there is a need for real-time planning that takes into account users' preferences, budgets, and weather information.
[0175] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0176] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expenditure data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expenditure data, means for displaying the generated life plan to the user, and means for suggesting optimal food and drink options based on the user's preference information and budget. This enables users to efficiently plan optimal meals and activities that fit their budget and preferences, taking into account daily weather conditions.
[0177] A "user" is a person who inputs a budget, preference information, remaining days, and location information and uses the presented life plan.
[0178] A "budget" is the amount of money that a user plans to spend within their life plan.
[0179] "Days remaining" is the number of days remaining in the period set for the user to execute the plan.
[0180] "Preference information" is information relating to the types of food and activities that the user prefers.
[0181] "Location information" is information that indicates the user's current location or the location that serves as the base point for the user's activity.
[0182] A "life plan" is a detailed schedule for planning the user's life, generated based on the user's budget, preference information, weather forecast data, and past expenditure data.
[0183] "Weather forecast data" is weather forecast information based on the user's location information.
[0184] An "external API" is an interface for obtaining data from other systems or services.
[0185] "Past expenditure data" is information that indicates how a user has spent their budget in the past.
[0186] "Recommended activities" are activities that are recommended for the user to perform, selected based on the user's preference information, budget, and weather forecast data.
[0187] "Food and Drink Options" are the available food and drink options presented based on the user's preference information and budget.
[0188] The present invention relates to a system that generates an optimal life plan based on a user's budget, remaining days, preference information, and location information, using weather forecasts and past expenditure data. This system is designed to improve the user's quality of life. Specific embodiments of the system are described below.
[0189] Basic configuration
[0190] The server has the following means:
[0191] 1. User information input method: The user inputs the budget, remaining days, preferences, and location information via the terminal. This information is sent to the server and stored in the database.
[0192] 2. Life plan generation means: The server generates a life plan based on the information entered above. The LifestylePlanner class plays a central role in generating a life plan, and an instance of this class is generated.
[0193] 3. Weather forecast data acquisition method: The server uses an external weather forecast API to acquire weather forecast data based on the user's location information.
[0194] 4. Method for obtaining past expenditure data: The server obtains past expenditure data through an external API and reflects this in the current budget plan.
[0195] 5. Recommended activity selection method: The server uses weather forecast data and past expenditure data to generate a list of recommended activities and meal options, including outdoor activities suitable for sunny days and indoor activities suitable for rainy days.
[0196] 6. Data display means: The generated life plan is formatted and provided to the user. This information is used by the user to confirm the plan and make any necessary reservations or preparations.
[0197] Program processing explanation
[0198] The server is built using Python or other programming languages and utilizes various APIs, including the Python Requests library (used for API access). The hardware can be any standard server or cloud service.
[0199] Specific example of the procedure
[0200] As a specific example, if a user inputs information that they live in Tokyo, have a budget of 30,000 yen, have 7 days left, and like Italian food, the server will process it as follows:
[0201] 1. Enter your user information:
[0202] The user uses a smartphone to input the budget, remaining days, preference information (e.g., Italian food, Japanese food), and location information.
[0203] 2. Get weather data:
[0204] Get weather data for the next 7 days from the weather forecast API using Tokyo coordinates.
[0205] 3. Obtain historical spending data:
[0206] For example, obtain past food expenditure data from an external API.
[0207] 4. Generate the plan:
[0208] A plan is generated according to the logic of life plan generation. For example, it suggests curry rice on a rainy day and sushi on a sunny day.
[0209] Prompt Sentence Examples
[0210] An example of a prompt to be input to the generative AI model is as follows:
[0211] User information: Budget 30,000 yen, 7 days left, loves Italian and Japanese food, lives in Tokyo
[0212] 1. Make a plan.
[0213] 2. Provide a recommended food delivery menu for each day.
[0214] 3. Vary your menu suggestions depending on the weather.
[0215] 4. Please consider your budget when making your proposal.
[0216] This allows users to efficiently find the best plan that suits their budget and preferences, taking into account daily weather information.This system makes optimal suggestions for each individual user, thereby improving the quality of their lifestyle.
[0217] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0218] Step 1:
[0219] Input and user information collection
[0220] The user uses a device such as a smartphone to input their budget, remaining days, preferences (e.g., favorite type of food), and location information. This information is sent to the server and stored in a database. Specifically, the user enters information into the application form and presses the "Submit" button, which stores the information in the database on the server.
[0221] Input: User's budget, remaining days, preferences, location
[0222] Output: User information stored in the database
[0223] Step 2:
[0224] Obtaining weather forecast data
[0225] The server sends a request to an external weather forecast API based on the user's location information to obtain future weather forecast data. The API is accessed using the Python Requests library. Specifically, the server sends a GET request to the API endpoint and receives the weather data in JSON format.
[0226] Input: User's location
[0227] Output: Retrieved weather forecast data (JSON format)
[0228] Step 3:
[0229] Obtaining historical spending data
[0230] The server retrieves the user's past spending data via an external API or database. Again, it uses the Requests library to access the API and retrieve the past spending history. Specifically, it sends a request including the user ID and other authentication information and receives the past spending information.
[0231] Input: User ID or authentication information stored in the system
[0232] Output: Obtained historical expenditure data
[0233] Step 4:
[0234] Creating a life plan
[0235] The server generates an instance of the LifestylePlanner class based on the weather forecast data, past expenditure data, and the user's preferences and budget, and creates a life plan. This plan includes daily budget allocations, recommended activities, and meal options. Specifically, an algorithm performs calculations based on this data and generates the plan.
[0236] Input: User preferences, budget, weather forecast data, past spending data
[0237] Output: Generated life plan
[0238] Step 5:
[0239] Recommended Activities and Dietary Selections
[0240] In the process of generating a life plan, the server determines recommended activities and meal options by taking into account weather forecast data and budget. Specifically, it selects outdoor activities on sunny days and indoor activities on rainy days, and also selects meals. This selection also includes budget allocation.
[0241] Input: Generated life plan, weather forecast data, budget
[0242] Output: Recommended activities and meal options
[0243] Step 6:
[0244] Formatting and displaying data
[0245] The server formats the generated life plan and recommended activities and sends them to the device. The user can check this on a smartphone or other device and order or reserve delivery as needed. The formatted data is then formatted so that it can be displayed in an intuitive UI. Specifically, the data is formatted into HTML or JSON format and sent to the device.
[0246] Input: Life plan and recommended activities before plastic surgery
[0247] Output: Formatted life plan data, displayed on the device
[0248] In this way, processing is performed based on specific input at each step, and appropriate output is obtained, thereby providing the user with an optimal life plan.
[0249] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0250] The present invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget. In addition to the features of conventional life plan generation systems, the system is characterized by recognizing the user's emotional state and dynamically optimizing the plan based on that. Specific embodiments of the system are described below.
[0251] Basic flow
[0252] 1. First, the user inputs their budget, remaining days, preference information, and location information into the device. For example, the budget is 30,000 yen, the remaining days are 5 days, preference information is "I like Italian food" and "My hobby is tennis," and location information is "I live in Tokyo."
[0253] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0254] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes a five-day weather forecast for Tokyo based on the user's location.
[0255] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used for budget planning.
[0256] 5. The device runs the generate_plan method to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0257] 6. The device uses the recommend_activities method to list recommended activities taking into account budget and weather, for example, "visit the park" on a sunny day and "indoor activities" on a rainy day.
[0258] 7. The device monitors the user's emotional state in real time using an emotion engine that recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0259] 8. The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0260] 9. The server formats the data to display the generated life plan and provides it to the user, allowing the user to review the plan and make any necessary reservations or preparations.
[0261] Specific examples
[0262] For example, suppose a user has a budget of 30,000 yen, 5 days left, preferences such as "I like Italian food," "My hobby is tennis," and location information such as "I live in Tokyo." The system generates the following life plan:
[0263] 1. First day (sunny):
[0264] Plan: Visit the park and relax, then have dinner at an Italian restaurant.
[0265] Budget: Visiting the park is free, but allocate 3000 yen for dinner.
[0266] 2. Day 2 (Cloudy):
[0267] Plan: Suggest a movie night.
[0268] Budget: Allocate 1,500 yen to see a movie.
[0269] 3. Day 3 (Rain):
[0270] The plan: Set aside some time for some indoor reading, followed by dinner at an Italian restaurant.
[0271] Budget: Reading is free, but allocate 3,000 yen for dinner.
[0272] Furthermore, if the user feels stressed on their first day, the emotion engine will recognize this and suggest additional relaxing activities, such as a relaxation session at a spa, and provide the best options based on their budget.
[0273] The advantage of this system is that it can dynamically optimize plans taking into account the user's emotional state, allowing users to always enjoy the best possible lifestyle without compromising their tastes and preferences and within their budget.
[0274] The processing flow will be explained below.
[0275] Step 1:
[0276] The user inputs the budget, remaining days, preference information, and location information into the terminal. For example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[0277] Step 2:
[0278] The device creates an instance of the LifestylePlanner class based on the input information. For example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[0279] Step 3:
[0280] The device calls the fetch_weather method to retrieve weather forecast data from an external API. For example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (Tokyo).
[0281] Step 4:
[0282] The terminal calls the fetch_past_expenses method to retrieve past expenditure data from an external API. For example, the terminal executes past_expenses = planner.fetch_past_expenses() to retrieve the user's past spending patterns.
[0283] Step 5:
[0284] The device executes the generate_plan method to generate a lifestyle plan for the required number of days. For example, the device executes lifestyle_plan = planner.generate_plan() to generate a plan taking into account the weather data and budget for each day.
[0285] Step 6:
[0286] The device uses the recommend_activities method to list recommended activities taking into account budget and weather. For example, it might suggest "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0287] Step 7:
[0288] The device uses an emotion engine to monitor the user's emotional state in real time, specifically by analyzing the user's facial expressions, voice tone, and input data.
[0289] Step 8:
[0290] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0291] Step 9:
[0292] The server formats the data to display the generated life plan and provides it to the user. For example, the server converts the data into HTML or JSON format and sends it to the terminal.
[0293] Step 10:
[0294] The user checks the displayed life plan, makes necessary reservations and preparations, for example, makes restaurant reservations and buys movie tickets, and enjoys daily life based on the plan.
[0295] Example 2
[0296] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0297] While conventional life plan generation systems generate life plans based on a user's budget and preferences, they have the problem of being unable to dynamically modify the plan to take into account the user's emotional state. As a result, users often feel stressed or are unable to adapt to unexpected situations. Furthermore, they are unable to provide optimal activity and meal options that fully take into account weather and past spending patterns.
[0298] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0299] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external information providing service, means for acquiring past expenditure data from the external information providing service, means for selecting recommended activities taking into account the weather forecast data and the past expenditure data, means for monitoring the user's emotional state, means for dynamically changing the life plan based on the emotional state, and means for displaying the generated life plan to the user. This makes it possible to dynamically generate and provide an optimal life plan taking into account the user's emotional state in real time.
[0300] A "budget" is the amount of money that a user can allocate to carrying out a life plan.
[0301] "Number of remaining days" refers to the number of days indicating the period of the life plan specified by the user.
[0302] "Preference information" refers to information that reflects a user's preferences and interests.
[0303] "Location information" refers to geographical information that indicates the user's current location and range of movement.
[0304] "Generating a life plan" means creating a plan of activities and events related to the user's life based on the input information.
[0305] "Weather forecast data" means information regarding future weather conditions in a specified area.
[0306] "External information providing services" refer to external systems or services that provide information such as weather forecast data or expenditure data.
[0307] "Past expenditure data" refers to historical data relating to expenditures made by a user in the past.
[0308] "Selecting a recommended activity" means selecting an appropriate activity based on user information and environmental data.
[0309] "Monitoring emotional state" means monitoring and analyzing the user's emotions in real time.
[0310] "Dynamically changing a life plan" means updating an already created life plan based on real-time data such as the user's emotional state.
[0311] "Displaying to the user" means providing the generated life plan to the user through a visual interface.
[0312] This invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget, and dynamically optimizes the plan by recognizing the user's emotional state in real time.In addition to the features of conventional life plan generation systems, this system has the feature of monitoring the user's emotional state and changing the plan according to the situation.
[0313] System configuration
[0314] This system is mainly composed of the following hardware and software:
[0315] Terminal (device on which the user inputs information, e.g. smartphone, tablet, PC)
[0316] Server (the central system that generates plans and processes data)
[0317] External information provision services (API services that provide weather forecast data and past expenditure data)
[0318] Emotion engine (software that analyzes the user's emotional state in real time)
[0319] Data Entry and Processing
[0320] First, the user uses a terminal to input their budget, remaining days, preferences, and location information into the system. For example, the user might input a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[0321] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan that takes into account the user's budget and preferences.
[0322] Obtaining weather forecast data and historical spending data
[0323] The device uses the fetch_weather method to obtain weather forecast data from an external information service, thereby obtaining five-day weather forecast data for the user's current location (Tokyo).
[0324] The device uses the fetch_past_expenses method to retrieve past expense data from an external information provider, which is used to aid in budget planning.
[0325] Generation and dynamic modification of life plans
[0326] The device runs the generate_plan method based on various data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0327] Additionally, the device can use the recommend_activities method to list recommended activities taking into account budget and weather, for example, suggesting "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0328] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0329] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0330] Plan Offerings
[0331] The server formats the data to display the generated life plan and provides it to the user, allowing the user to check the plan and make any necessary reservations or preparations.
[0332] Specific examples
[0333] For example, if you enter a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan.
[0334] 1. First day (sunny):
[0335] Plan: Visit the park and relax, then dinner at an Italian restaurant
[0336] Budget: Free to visit the park, 3000 yen for dinner
[0337] Emotion: If the user feels stressed, suggest an additional spa relaxation session.
[0338] 2. Day 2 (Cloudy):
[0339] Plan: Watch a movie
[0340] Budget: 1500 yen to see a movie
[0341] 3. Day 3 (Rain):
[0342] Plan: Indoor reading, followed by dinner at an Italian restaurant
[0343] Budget: Free reading, 3000 yen for dinner
[0344] Example prompts for generative AI models
[0345] "Create a 5-day travel plan for Tokyo with a budget of ¥30,000. The user likes Italian food and plays tennis. Optimize the plan by taking into account the weather forecast and the user's emotional state."
[0346] The advantage of this system is that it dynamically optimizes plans taking into account the user's emotional state, allowing users to enjoy an optimal lifestyle without compromising their hobbies and preferences, all while staying within their budget.
[0347] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0348] Step 1:
[0349] The user inputs their budget, remaining days, preferences, and location information into the device. The input data is temporarily stored in the device's database. For example, a user inputs the following data: a budget of 30,000 yen, five days remaining, "I like Italian food," "My hobby is tennis," and "I live in Tokyo."
[0350] Specific behavior:
[0351] The user enters information into the input form displayed on the device's screen UI and presses the send button.
[0352] Input: Budget, remaining days, preferences, location.
[0353] Output: User information stored in the database on the device.
[0354] Step 2:
[0355] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0356] Specific behavior:
[0357] The device creates an instance of the LifestylePlanner class using the saved user information as parameters.
[0358] Input: User information.
[0359] Output: An instance of the LifestylePlanner class.
[0360] Step 3:
[0361] The device uses the fetch_weather method to retrieve weather forecast data from an external information service. The weather forecast data is retrieved based on location information and includes forecasts for the specified number of days.
[0362] Specific behavior:
[0363] The device uses the location information to send a request to the weather forecast API.
[0364] Input: Location information (Tokyo).
[0365] Output: Five-day weather forecast data obtained from an external information provider.
[0366] Step 4:
[0367] The terminal uses the fetch_past_expenses method to retrieve past expenditure data from an external information service. The expenditure data reflects the user's past consumption patterns.
[0368] Specific behavior:
[0369] The device sends a request to the expenditure data API using the user ID.
[0370] Input: User ID.
[0371] Output: Historical spending data obtained from external information providers.
[0372] Step 5:
[0373] The device runs the generate_plan method based on the retrieved weather data and past spending data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0374] Specific behavior:
[0375] The terminal integrates weather data, expenditure data, and user information to generate a life plan.
[0376] Inputs: Weather data, historical spending data, user information.
[0377] Output: A detailed life plan by day.
[0378] Step 6:
[0379] The device uses the recommend_activities method to list recommended activities that take budget and weather into account, for example, "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0380] Specific behavior:
[0381] The device analyzes the generated life plan and recommends activities based on the day's weather and budget.
[0382] Input: A detailed daily life plan (including weather and budget).
[0383] Output: A list of recommended activities.
[0384] Step 7:
[0385] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0386] Specific behavior:
[0387] The device collects and analyzes emotional data through the user's camera and microphone.
[0388] Input: User's facial expression data, voice data.
[0389] Output: Parsed emotional state data.
[0390] Step 8:
[0391] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. If the user is feeling stressed, it will suggest relaxing activities.
[0392] Specific behavior:
[0393] The device reassess the life plan based on the emotional state data and makes any necessary changes.
[0394] Input: Emotional state data.
[0395] Output: Updated life plan.
[0396] Step 9:
[0397] The server formats the data to display the generated life plan and provides it to the user, who can then check the plan and make any necessary reservations or preparations.
[0398] Specific behavior:
[0399] The server converts the life plan data into HTML or application UI format and sends it to the device.
[0400] Input: Life plan data.
[0401] Output: The post-reconstruction life plan displayed to the user.
[0402] (Application example 2)
[0403] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0404] Conventional life plan generation systems provide plans based on basic data such as the user's budget and preferences, but lack dynamic optimization that takes into account the user's instantly fluctuating emotional state. As a result, they are unable to suggest activities and meals that fit the user's real-time emotions and state, resulting in a lack of an improved user experience. Furthermore, they lack specific suggestions for things like food delivery, leaving users with a lack of means to alleviate stress and discomfort in real time.
[0405] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for inputting the user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external software interface, means for acquiring past expenditure data from the external software interface, means for monitoring the user's emotional state in real time using an emotion engine, means for dynamically optimizing the life plan based on data acquired from the emotion engine, and means for displaying the generated life plan to the user. This makes it possible to respond to the user's emotional state at any time, propose an optimal food delivery plan, and improve user satisfaction and convenience.
[0406] "User" means an individual or organization that uses this system.
[0407] A "budget" indicates a range of amounts that a user can spend within a specific period of time.
[0408] "Number of days remaining" is the number of days remaining until the user executes the plan.
[0409] "Preference information" is data information that indicates the user's preferences, hobbies, and interests.
[0410] "Location information" is data that indicates the geographical location of the user.
[0411] A "life plan" is a lifestyle plan created based on information input by the user.
[0412] A "means" is a method or apparatus provided for performing a particular function or action.
[0413] "Weather forecast data" is forecast data of weather information for a specific time period and location.
[0414] An "external software interface" is an interface for connecting to external services or databases.
[0415] "Past expenditure data" refers to data relating to the user's past consumption behavior and expenditure details.
[0416] An "emotion engine" is software or hardware that recognizes emotions by analyzing a user's facial expressions, tone of voice, input data, etc.
[0417] "Emotional state" refers to the emotions and psychological state that a user is feeling in real time.
[0418] "Dynamic optimization" means adjusting and optimizing plans and proposals in real time in response to changing situations and conditions.
[0419] A "food delivery plan" is an optimal meal delivery plan proposed based on the user's emotional state and preference information.
[0420] The present invention is a system for generating an optimal life plan or food delivery plan based on a user's budget, remaining days, preference information, and emotional state. Specific embodiments are described below.
[0421] Overall system configuration
[0422] The system consists of a user terminal, a server, and an external software interface. Users input the necessary information using their smartphones, and the server processes the data in the backend and generates a plan.
[0423] The main means of the system
[0424] 1. Information input method
[0425] The user inputs their budget, remaining days, preferences, and location information into their smartphone. Based on this information, the server creates an instance of the LifestylePlanner class.
[0426] 2. Data Acquisition Method
[0427] The server uses an external software interface (API) to retrieve weather forecast data and historical spending data. The weather forecast data is location-based, e.g., a five-day weather forecast for Tokyo. The historical spending data reflects the user's spending patterns and is useful for budget management.
[0428] 3. Plan Generation Method
[0429] Based on the retrieved data, the server calls the generate_plan method to generate a life plan, which includes the weather for each day, budget allocation, and recommended activities and meal options.
[0430] 4. Means of monitoring emotional state
[0431] The server uses an emotion engine to analyze the user's facial expressions, voice tone, and input data to monitor their emotional state in real time. This emotion engine utilizes Microsoft® Face API and IBM Watson® Emotion Analysis.
[0432] 5. Dynamic plan optimization
[0433] The server dynamically optimizes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it suggests activities and meals that will help them relax.
[0434] 6. Results display means
[0435] The generated life plan and food delivery plan are displayed on the user's device, allowing the user to see suggestions for optimal activities and meals.
[0436] Usage example
[0437] As a specific example, let's say a user has a budget of 30,000 yen, 5 days left, "I like Italian food" and "My hobby is tennis" as their preference information, and "I live in Tokyo" as their location information. The system will generate the following plan:
[0438] First day (sunny):
[0439] Activities: Visit to the park and relax, followed by dinner at an Italian restaurant.
[0440] Budget: Free to visit the park, 3000 yen for dinner.
[0441] If the emotional state is stressed, we suggest an additional relaxation session at a spa and provide options based on budget.
[0442] An example of a prompt is as follows:
[0443] "Budget: 30,000 yen, Time remaining: 5 days, Preferences: Italian cuisine, Location: Tokyo, Best meal suggestions for when you're stressed."
[0444] This system allows users to always enjoy the optimal life plan, and in particular, food delivery plans can be suggested based on real-time emotional state.
[0445] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0446] Step 1:
[0447] The user inputs their budget, remaining days, preferences, and location information into their smartphone, which is then sent to the system.
[0448] Step 2:
[0449] The server generates an instance of the LifestylePlanner class based on the input information. This class stores the user information and is used in subsequent plan generation processes.
[0450] Step 3:
[0451] The server retrieves weather forecast data from an external software interface. Specifically, it retrieves location-based weather data and stores it in an instance of the LifestylePlanner class. In this step, the server receives weather data in JSON format via an API call, analyzes it, and stores it.
[0452] Step 4:
[0453] The server retrieves past spending data from an external software interface. This data reflects the user's past spending patterns and stores it in an instance of the LifestylePlanner class. Again, the server receives the JSON format data through an API call, which is then parsed and stored for use in budget management.
[0454] Step 5:
[0455] The server calls the generate_plan method to generate a daily life plan based on weather data and budget information. The plan includes the weather for each day, budget allocation, recommended activities, and meal options.
[0456] Step 6:
[0457] The server uses an emotion engine to monitor the user's emotional state in real time. It analyzes data obtained from the smartphone's camera and microphone to determine the user's emotional state. The emotion engine uses, for example, Microsoft Face API or IBM Watson Emotion Analysis.
[0458] Step 7:
[0459] The server dynamically optimizes the instance of the LifestylePlanner class based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it adds relaxing activities and food delivery plans. Specifically, it dynamically changes the plan by offering spa and relaxation menus to stressed users.
[0460] Step 8:
[0461] The server sends the generated life plan and food delivery plan to the user's device, where the user can check the optimized plan on their smartphone and take necessary actions (e.g., order food delivery).
[0462] This series of processes allows users to always enjoy the most optimal life plan, and in particular, by suggesting food delivery plans that correspond to their emotional state, user satisfaction is improved.
[0463] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0464] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0465] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0466] [Second embodiment]
[0467] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0468] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0469] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0470] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0471] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0472] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0473] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0474] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0475] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0476] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0477] In the smart glasses 214, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0478] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0479] The present invention is a system for generating a lifestyle plan tailored to a user's tastes and preferences within a limited budget. The purpose of this system is to present the optimal plan for the user and improve their quality of life. Specific embodiments of the system are described below.
[0480] Basic flow
[0481] 1. First, the user inputs their budget, remaining days, preferences, and location information. This information is stored in the system's database, and a plan is generated based on it.
[0482] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0483] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes the weather forecast for the specified location based on the user's location information.
[0484] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used as a reference for planning the current budget.
[0485] 5. The device executes the generate_plan method to generate a life plan for the required number of days. This plan includes the following elements:
[0486] Weather data for each day
[0487] Daily budget allocation
[0488] Recommended activities and dietary choices
[0489] 6. The device uses the recommend_activities method to list recommended activities based on budget and weather, for example, outdoor activities on sunny days and indoor activities on rainy days.
[0490] 7. The server formats the data to display the generated life plan and provides it to the user. This information is used by the user to review the plan and make any necessary reservations or preparations.
[0491] Specific examples
[0492] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan:
[0493] 1. First day (sunny):
[0494] Plan: It's a sunny day, so visit the park and relax, then have dinner at an Italian restaurant.
[0495] Budget: Free to visit the park, allocate 3000 yen for dinner.
[0496] 2. Day 2 (Cloudy):
[0497] Plan: Suggest going to the movies.
[0498] Budget: Allocate 1500 yen to see a movie.
[0499] 3. Day 3 (Rain):
[0500] Plan: Set aside time for reading as an indoor activity, and have dinner at an Italian restaurant.
[0501] Budget: Reading is free, 3000 yen allocated for dinner.
[0502] This flow allows users to enjoy life without compromising their tastes and preferences, and stay within their budget. The system takes into account past spending data and weather information to provide realistic plans.
[0503] The processing flow will be explained below.
[0504] Step 1:
[0505] The user inputs the budget, remaining days, preference information, and location information into the terminal.
[0506] As a specific example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[0507] Step 2:
[0508] The device generates an instance of the LifestylePlanner class based on the input information.
[0509] As a concrete example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[0510] Step 3:
[0511] The device calls the fetch_weather method to retrieve weather forecast data from an external API.
[0512] As a concrete example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (e.g., Tokyo).
[0513] Step 4:
[0514] The terminal calls the fetch_past_expenses method to retrieve past expense data from an external API.
[0515] As a concrete example, the terminal executes past_expenses = planner.fetch_past_expenses() to obtain the user's past spending patterns.
[0516] Step 5:
[0517] The device executes the generate_plan method to generate a life plan for the required number of days.
[0518] For example, the device runs lifestyle_plan = planner.generate_plan() to generate a plan taking into account weather data and budget for each day.
[0519] Step 6:
[0520] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[0521] As a specific example, we suggest "visiting the park" on sunny days and "indoor activities" on rainy days.
[0522] Step 7:
[0523] The server formats the data to display the generated life plan and provides it to the user.
[0524] As a specific example, the server converts data into HTML or JSON format and sends it to the terminal.
[0525] Step 8:
[0526] The user checks the displayed life plan and makes the necessary reservations and preparations.
[0527] For example, we make restaurant reservations, buy movie tickets, and enjoy our daily lives based on plans.
[0528] Example 1
[0529] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0530] The problem that this invention aims to solve is to automatically generate a lifestyle plan that takes into account a user's hobbies and preferences within a limited budget, and allows the user to select optimal activities and meals based on that plan. Conventional plan generation systems have difficulty providing realistic and satisfying plans because they are unable to fully reflect the user's individual needs, real-time weather information, or past expenditure data. The purpose of this invention is to solve these problems and improve the user's quality of life by presenting a plan that is appropriate for the user.
[0531] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0532] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a lifestyle plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expense history data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expense history data, means for displaying the generated lifestyle plan to the user, and means for suggesting outdoor and indoor activities based on the budget and weather data. This allows the user to obtain a realistic and effective lifestyle plan that reflects their own hobbies and preferences.
[0533] "User" refers to an individual who uses this system to generate a life plan and acts based on that plan.
[0534] "Budget" refers to the total amount of financial constraints that a user can use to carry out their lifestyle plan.
[0535] "Number of days remaining" refers to the number of days remaining in the period for which the user is planning using this system.
[0536] "Preference information" refers to information about specific meals and activities that a user prefers.
[0537] "Location information" refers to data that indicates a user's current geographic location.
[0538] A "life plan" refers to a plan that includes suggestions for activities and meals to be done within a budget, generated based on the user's budget, preference information, weather forecast data, and past spending data.
[0539] "Weather Forecast Data" refers to information about future weather conditions based on a specific location, obtained through an external API.
[0540] "Historical Expense Data" means data regarding a User's historical spending history obtained through an External API.
[0541] "Recommended activities" refer to activities selected by the system taking into account the user's budget, preference information, and weather forecast data.
[0542] "External API" refers to an application program interface used to obtain data from other systems or services.
[0543] "Outdoor activities" refers to activities that are recommended to be carried out outdoors.
[0544] "Indoor activities" refer to activities that are recommended to be performed indoors.
[0545] The present invention relates to a system for automatically generating an optimal lifestyle plan for a user based on the user's budget, remaining days, preference information, and location information. An embodiment for implementing this system will be described below.
[0546] System configuration
[0547] This system consists of a user input device, a data processing terminal, a database, a means of communication with external APIs, and a display device for displaying results. Examples of specific software and hardware used include:
[0548] Input devices: PC, smartphone, tablet, etc.
[0549] Data processing terminal: Server
[0550] Database: Relational Database Management System (RDBMS)
[0551] External APIs: Weather APIs (e.g., OpenWeatherMap API), financial data APIs (e.g., Plaid API)
[0552] Display device: Web browser
[0553] User input of information
[0554] Users input their budget, remaining days, preferences, and location information into the system using an input device. This information is sent to the server and stored in a database. This information becomes the basis for generating a lifestyle plan.
[0555] Data Acquisition
[0556] The server uses the data processing terminal to obtain the following data:
[0557] Weather forecast data: Uses an external API to obtain weather forecast data based on the user's location.
[0558] Historical Expense Data: Utilize external financial data APIs to obtain users' historical spending data.
[0559] Life plan generation
[0560] The server creates an instance of the LifestylePlanner class based on the information it has obtained and creates a lifestyle plan that includes the following elements:
[0561] Weather data for each day
[0562] Daily budget allocation
[0563] Recommended activities and dietary choices
[0564] Activity suggestions
[0565] The server uses the recommend_activities method during the life plan generation process to list recommended activities taking into account budget and weather data. For example, outdoor activities are suggested on sunny days, and indoor activities on rainy days.
[0566] View Plans
[0567] The generated life plan is formatted by the server and sent back from the database to the user's input device. The user can then check the life plan through their own device and make any necessary reservations or preparations.
[0568] Specific examples
[0569] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information of "I like Italian food," and location information of "I live in Tokyo," the server will generate the following lifestyle plan.
[0570] Day 1 (Sunny): Visit a park and relax. Then have dinner at an Italian restaurant. Budget 3000 yen for dinner.
[0571] Day 2 (Cloudy): Suggest going to the movies. Allocate 1500 yen to the movie.
[0572] Day 3 (Rain): Set aside time to enjoy reading as an indoor activity. Also, have dinner at an Italian restaurant. Allocate a budget of 3,000 yen for dinner.
[0573] Prompt Sentence Examples
[0574] An example of a prompt is as follows:
[0575] "If a user inputs a budget of 30,000 yen, 5 days remaining, a preference for Italian food, and a residence in Tokyo, what kind of life plan will be generated?"
[0576] This system allows users to obtain realistic lifestyle plans that fully reflect their own tastes and preferences, enabling them to live an efficient and satisfying life within a limited budget.
[0577] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0578] Step 1:
[0579] The user inputs their budget, remaining days, preferences, and location information, which is the initial input to the system.
[0580] Input: Budget, remaining days, preferences, location
[0581] Specific operation: The user uses a device to input information into a web form. For example, the user inputs a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[0582] Output: User information stored in the database
[0583] Step 2:
[0584] The terminal receives the user's input information and generates an instance of the LifestylePlanner class based on the information stored in the database.
[0585] Input: User information
[0586] Specific operation: The device calls the constructor of the LifestylePlanner class and sets the user information as an instance variable.
[0587] Output: An instance of the LifestylePlanner class
[0588] Step 3:
[0589] The device uses the fetch_weather method to retrieve location-based weather forecast data from an external API.
[0590] Input:Location
[0591] Specific operation: The device makes an API request and sends the specified location information (e.g., "Tokyo") to the external API.
[0592] Output: Weather forecast data (JSON format)
[0593] Step 4:
[0594] The terminal uses the fetch_past_expenses method to retrieve past expense data from an external finance API.
[0595] Input: User's identity
[0596] Specific operation: The device makes an API request and sends the user's identification information. The external API responds with spending data for the past three months in JSON format.
[0597] Output: Historical spending data (JSON format)
[0598] Step 5:
[0599] The device executes the generate_plan method to generate a lifestyle plan for the required number of days.
[0600] Input: Weather forecast data, past spending data, user budget, preferences, remaining days
[0601] How it works: The device uses this data to run algorithms and calculate daily activities and budget allocations. For example, on sunny days, it suggests relaxing in the park as an outdoor activity, and on rainy days, it suggests reading or watching a movie as an indoor activity.
[0602] Output: Life plan (includes weather data, budget allocation, and activity suggestions)
[0603] Step 6:
[0604] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[0605] Input: Generated life plan
[0606] How it works: The device uses weather and budget data to create a list of recommended activities, such as playing tennis on a sunny day and reading in the library on a rainy day.
[0607] Output: List of recommended activities
[0608] Step 7:
[0609] The server formats the generated life plan and sends the data to the terminal for display to the user.
[0610] Input: Life plan and recommended activity list
[0611] Specific operation: The server converts the generated plan into HTML format and returns it to the user's device. The user can view the formatted plan through a browser, add it to their schedule, or make a reservation.
[0612] Output: A life plan displayed on the user's screen
[0613] (Application example 1)
[0614] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0615] In today's busy lifestyles, many people find it difficult to plan their meals and activities within budget and time constraints. It is particularly difficult to efficiently create a life plan while taking into account daily weather and budgets. Furthermore, there is a lack of systems that suggest meals and activities that suit users' preferences. Therefore, there is a need for real-time planning that takes into account users' preferences, budgets, and weather information.
[0616] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0617] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expenditure data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expenditure data, means for displaying the generated life plan to the user, and means for suggesting optimal food and drink options based on the user's preference information and budget. This enables users to efficiently plan optimal meals and activities that fit their budget and preferences, taking into account daily weather conditions.
[0618] A "user" is a person who inputs a budget, preference information, remaining days, and location information and uses the presented life plan.
[0619] A "budget" is the amount of money that a user plans to spend within their life plan.
[0620] "Days remaining" is the number of days remaining in the period set for the user to execute the plan.
[0621] "Preference information" is information relating to the types of food and activities that the user prefers.
[0622] "Location information" is information that indicates the user's current location or the location that serves as the base point for the user's activity.
[0623] A "life plan" is a detailed schedule for planning the user's life, generated based on the user's budget, preference information, weather forecast data, and past expenditure data.
[0624] "Weather forecast data" is weather forecast information based on the user's location information.
[0625] An "external API" is an interface for obtaining data from other systems or services.
[0626] "Past expenditure data" is information that indicates how a user has spent their budget in the past.
[0627] "Recommended activities" are activities that are recommended for the user to perform, selected based on the user's preference information, budget, and weather forecast data.
[0628] "Food and Drink Options" are the available food and drink options presented based on the user's preference information and budget.
[0629] The present invention relates to a system that generates an optimal life plan based on a user's budget, remaining days, preference information, and location information, using weather forecasts and past expenditure data. This system is designed to improve the user's quality of life. Specific embodiments of the system are described below.
[0630] Basic configuration
[0631] The server has the following means:
[0632] 1. User information input method: The user inputs the budget, remaining days, preferences, and location information via the terminal. This information is sent to the server and stored in the database.
[0633] 2. Life plan generation means: The server generates a life plan based on the information entered above. The LifestylePlanner class plays a central role in generating a life plan, and an instance of this class is generated.
[0634] 3. Weather forecast data acquisition method: The server uses an external weather forecast API to acquire weather forecast data based on the user's location information.
[0635] 4. Method for obtaining past expenditure data: The server obtains past expenditure data through an external API and reflects this in the current budget plan.
[0636] 5. Recommended activity selection method: The server uses weather forecast data and past expenditure data to generate a list of recommended activities and meal options, including outdoor activities suitable for sunny days and indoor activities suitable for rainy days.
[0637] 6. Data display means: The generated life plan is formatted and provided to the user. This information is used by the user to confirm the plan and make any necessary reservations or preparations.
[0638] Program processing explanation
[0639] The server is built using Python or other programming languages and utilizes various APIs, including the Python Requests library (used for API access). The hardware can be any standard server or cloud service.
[0640] Specific example of the procedure
[0641] As a specific example, if a user inputs information that they live in Tokyo, have a budget of 30,000 yen, have 7 days left, and like Italian food, the server will process it as follows:
[0642] 1. Enter your user information:
[0643] The user uses a smartphone to input the budget, remaining days, preference information (e.g., Italian food, Japanese food), and location information.
[0644] 2. Get weather data:
[0645] Get weather data for the next 7 days from the weather forecast API using Tokyo coordinates.
[0646] 3. Obtain historical spending data:
[0647] For example, obtain past food expenditure data from an external API.
[0648] 4. Generate the plan:
[0649] A plan is generated according to the logic of life plan generation. For example, it suggests curry rice on a rainy day and sushi on a sunny day.
[0650] Prompt Sentence Examples
[0651] An example of a prompt to be input to the generative AI model is as follows:
[0652] User information: Budget 30,000 yen, 7 days left, loves Italian and Japanese food, lives in Tokyo
[0653] 1. Make a plan.
[0654] 2. Provide a recommended food delivery menu for each day.
[0655] 3. Vary your menu suggestions depending on the weather.
[0656] 4. Please consider your budget when making your proposal.
[0657] This allows users to efficiently find the best plan that suits their budget and preferences, taking into account daily weather information.This system makes optimal suggestions for each individual user, thereby improving the quality of their lifestyle.
[0658] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0659] Step 1:
[0660] Input and user information collection
[0661] The user uses a device such as a smartphone to input their budget, remaining days, preferences (e.g., favorite type of food), and location information. This information is sent to the server and stored in a database. Specifically, the user enters information into the application form and presses the "Submit" button, which stores the information in the database on the server.
[0662] Input: User's budget, remaining days, preferences, location
[0663] Output: User information stored in the database
[0664] Step 2:
[0665] Obtaining weather forecast data
[0666] The server sends a request to an external weather forecast API based on the user's location information to obtain future weather forecast data. The API is accessed using the Python Requests library. Specifically, the server sends a GET request to the API endpoint and receives the weather data in JSON format.
[0667] Input: User's location
[0668] Output: Retrieved weather forecast data (JSON format)
[0669] Step 3:
[0670] Obtaining historical spending data
[0671] The server retrieves the user's past spending data via an external API or database. Again, it uses the Requests library to access the API and retrieve the past spending history. Specifically, it sends a request including the user ID and other authentication information and receives the past spending information.
[0672] Input: User ID or authentication information stored in the system
[0673] Output: Obtained historical expenditure data
[0674] Step 4:
[0675] Creating a life plan
[0676] The server generates an instance of the LifestylePlanner class based on the weather forecast data, past expenditure data, and the user's preferences and budget, and creates a life plan. This plan includes daily budget allocations, recommended activities, and meal options. Specifically, an algorithm performs calculations based on this data and generates the plan.
[0677] Input: User preferences, budget, weather forecast data, past spending data
[0678] Output: Generated life plan
[0679] Step 5:
[0680] Recommended Activities and Dietary Selections
[0681] In the process of generating a life plan, the server determines recommended activities and meal options by taking into account weather forecast data and budget. Specifically, it selects outdoor activities on sunny days and indoor activities on rainy days, and also selects meals. This selection also includes budget allocation.
[0682] Input: Generated life plan, weather forecast data, budget
[0683] Output: Recommended activities and meal options
[0684] Step 6:
[0685] Formatting and displaying data
[0686] The server formats the generated life plan and recommended activities and sends them to the device. The user can check this on a smartphone or other device and order or reserve delivery as needed. The formatted data is then formatted so that it can be displayed in an intuitive UI. Specifically, the data is formatted into HTML or JSON format and sent to the device.
[0687] Input: Life plan and recommended activities before plastic surgery
[0688] Output: Formatted life plan data, displayed on the device
[0689] In this way, processing is performed based on specific input at each step, and appropriate output is obtained, thereby providing the user with an optimal life plan.
[0690] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0691] The present invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget. In addition to the features of conventional life plan generation systems, the system is characterized by recognizing the user's emotional state and dynamically optimizing the plan based on that. Specific embodiments of the system are described below.
[0692] Basic flow
[0693] 1. First, the user inputs their budget, remaining days, preference information, and location information into the device. For example, the budget is 30,000 yen, the remaining days are 5 days, preference information is "I like Italian food" and "My hobby is tennis," and location information is "I live in Tokyo."
[0694] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0695] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes a five-day weather forecast for Tokyo based on the user's location.
[0696] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used for budget planning.
[0697] 5. The device runs the generate_plan method to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0698] 6. The device uses the recommend_activities method to list recommended activities taking into account budget and weather, for example, "visit the park" on a sunny day and "indoor activities" on a rainy day.
[0699] 7. The device monitors the user's emotional state in real time using an emotion engine that recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0700] 8. The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0701] 9. The server formats the data to display the generated life plan and provides it to the user, allowing the user to review the plan and make any necessary reservations or preparations.
[0702] Specific examples
[0703] For example, suppose a user has a budget of 30,000 yen, 5 days left, preferences such as "I like Italian food," "My hobby is tennis," and location information such as "I live in Tokyo." The system generates the following life plan:
[0704] 1. First day (sunny):
[0705] Plan: Visit the park and relax, then have dinner at an Italian restaurant.
[0706] Budget: Visiting the park is free, but allocate 3000 yen for dinner.
[0707] 2. Day 2 (Cloudy):
[0708] Plan: Suggest a movie night.
[0709] Budget: Allocate 1,500 yen to see a movie.
[0710] 3. Day 3 (Rain):
[0711] The plan: Set aside some time for some indoor reading, followed by dinner at an Italian restaurant.
[0712] Budget: Reading is free, but allocate 3,000 yen for dinner.
[0713] Furthermore, if the user feels stressed on their first day, the emotion engine will recognize this and suggest additional relaxing activities, such as a relaxation session at a spa, and provide the best options based on their budget.
[0714] The advantage of this system is that it can dynamically optimize plans taking into account the user's emotional state, allowing users to always enjoy the best possible lifestyle without compromising their tastes and preferences and within their budget.
[0715] The processing flow will be explained below.
[0716] Step 1:
[0717] The user inputs the budget, remaining days, preference information, and location information into the terminal. For example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[0718] Step 2:
[0719] The device creates an instance of the LifestylePlanner class based on the input information. For example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[0720] Step 3:
[0721] The device calls the fetch_weather method to retrieve weather forecast data from an external API. For example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (Tokyo).
[0722] Step 4:
[0723] The terminal calls the fetch_past_expenses method to retrieve past expenditure data from an external API. For example, the terminal executes past_expenses = planner.fetch_past_expenses() to retrieve the user's past spending patterns.
[0724] Step 5:
[0725] The device executes the generate_plan method to generate a lifestyle plan for the required number of days. For example, the device executes lifestyle_plan = planner.generate_plan() to generate a plan taking into account the weather data and budget for each day.
[0726] Step 6:
[0727] The device uses the recommend_activities method to list recommended activities taking into account budget and weather. For example, it might suggest "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0728] Step 7:
[0729] The device uses an emotion engine to monitor the user's emotional state in real time, specifically by analyzing the user's facial expressions, voice tone, and input data.
[0730] Step 8:
[0731] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0732] Step 9:
[0733] The server formats the data to display the generated life plan and provides it to the user. For example, the server converts the data into HTML or JSON format and sends it to the terminal.
[0734] Step 10:
[0735] The user checks the displayed life plan, makes necessary reservations and preparations, for example, makes restaurant reservations and buys movie tickets, and enjoys daily life based on the plan.
[0736] Example 2
[0737] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0738] While conventional life plan generation systems generate life plans based on a user's budget and preferences, they have the problem of being unable to dynamically modify the plan to take into account the user's emotional state. As a result, users often feel stressed or are unable to adapt to unexpected situations. Furthermore, they are unable to provide optimal activity and meal options that fully take into account weather and past spending patterns.
[0739] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0740] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external information providing service, means for acquiring past expenditure data from the external information providing service, means for selecting recommended activities taking into account the weather forecast data and the past expenditure data, means for monitoring the user's emotional state, means for dynamically changing the life plan based on the emotional state, and means for displaying the generated life plan to the user. This makes it possible to dynamically generate and provide an optimal life plan taking into account the user's emotional state in real time.
[0741] A "budget" is the amount of money that a user can allocate to carrying out a life plan.
[0742] "Number of remaining days" refers to the number of days indicating the period of the life plan specified by the user.
[0743] "Preference information" refers to information that reflects a user's preferences and interests.
[0744] "Location information" refers to geographical information that indicates the user's current location and range of movement.
[0745] "Generating a life plan" means creating a plan of activities and events related to the user's life based on the input information.
[0746] "Weather forecast data" means information regarding future weather conditions in a specified area.
[0747] "External information providing services" refer to external systems or services that provide information such as weather forecast data or expenditure data.
[0748] "Past expenditure data" refers to historical data relating to expenditures made by a user in the past.
[0749] "Selecting a recommended activity" means selecting an appropriate activity based on user information and environmental data.
[0750] "Monitoring emotional state" means monitoring and analyzing the user's emotions in real time.
[0751] "Dynamically changing a life plan" means updating an already created life plan based on real-time data such as the user's emotional state.
[0752] "Displaying to the user" means providing the generated life plan to the user through a visual interface.
[0753] This invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget, and dynamically optimizes the plan by recognizing the user's emotional state in real time.In addition to the features of conventional life plan generation systems, this system has the feature of monitoring the user's emotional state and changing the plan according to the situation.
[0754] System configuration
[0755] This system is mainly composed of the following hardware and software:
[0756] Terminal (device on which the user inputs information, e.g. smartphone, tablet, PC)
[0757] Server (the central system that generates plans and processes data)
[0758] External information provision services (API services that provide weather forecast data and past expenditure data)
[0759] Emotion engine (software that analyzes the user's emotional state in real time)
[0760] Data Entry and Processing
[0761] First, the user uses a terminal to input their budget, remaining days, preferences, and location information into the system. For example, the user might input a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[0762] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan that takes into account the user's budget and preferences.
[0763] Obtaining weather forecast data and historical spending data
[0764] The device uses the fetch_weather method to obtain weather forecast data from an external information service, thereby obtaining five-day weather forecast data for the user's current location (Tokyo).
[0765] The device uses the fetch_past_expenses method to retrieve past expense data from an external information provider, which is used to aid in budget planning.
[0766] Generation and dynamic modification of life plans
[0767] The device runs the generate_plan method based on various data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0768] Additionally, the device can use the recommend_activities method to list recommended activities taking into account budget and weather, for example, suggesting "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0769] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0770] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[0771] Plan Offerings
[0772] The server formats the data to display the generated life plan and provides it to the user, allowing the user to check the plan and make any necessary reservations or preparations.
[0773] Specific examples
[0774] For example, if you enter a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan.
[0775] 1. First day (sunny):
[0776] Plan: Visit the park and relax, then dinner at an Italian restaurant
[0777] Budget: Free to visit the park, 3000 yen for dinner
[0778] Emotion: If the user feels stressed, suggest an additional spa relaxation session.
[0779] 2. Day 2 (Cloudy):
[0780] Plan: Watch a movie
[0781] Budget: 1500 yen to see a movie
[0782] 3. Day 3 (Rain):
[0783] Plan: Indoor reading, followed by dinner at an Italian restaurant
[0784] Budget: Free reading, 3000 yen for dinner
[0785] Example prompts for generative AI models
[0786] "Create a 5-day travel plan for Tokyo with a budget of ¥30,000. The user likes Italian food and plays tennis. Optimize the plan by taking into account the weather forecast and the user's emotional state."
[0787] The advantage of this system is that it dynamically optimizes plans taking into account the user's emotional state, allowing users to enjoy an optimal lifestyle without compromising their hobbies and preferences, all while staying within their budget.
[0788] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0789] Step 1:
[0790] The user inputs their budget, remaining days, preferences, and location information into the device. The input data is temporarily stored in the device's database. For example, a user inputs the following data: a budget of 30,000 yen, five days remaining, "I like Italian food," "My hobby is tennis," and "I live in Tokyo."
[0791] Specific behavior:
[0792] The user enters information into the input form displayed on the device's screen UI and presses the send button.
[0793] Input: Budget, remaining days, preferences, location.
[0794] Output: User information stored in the database on the device.
[0795] Step 2:
[0796] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0797] Specific behavior:
[0798] The device creates an instance of the LifestylePlanner class using the saved user information as parameters.
[0799] Input: User information.
[0800] Output: An instance of the LifestylePlanner class.
[0801] Step 3:
[0802] The device uses the fetch_weather method to retrieve weather forecast data from an external information service. The weather forecast data is retrieved based on location information and includes forecasts for the specified number of days.
[0803] Specific behavior:
[0804] The device uses the location information to send a request to the weather forecast API.
[0805] Input: Location information (Tokyo).
[0806] Output: Five-day weather forecast data obtained from an external information provider.
[0807] Step 4:
[0808] The terminal uses the fetch_past_expenses method to retrieve past expenditure data from an external information service. The expenditure data reflects the user's past consumption patterns.
[0809] Specific behavior:
[0810] The device sends a request to the expenditure data API using the user ID.
[0811] Input: User ID.
[0812] Output: Historical spending data obtained from external information providers.
[0813] Step 5:
[0814] The device runs the generate_plan method based on the retrieved weather data and past spending data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[0815] Specific behavior:
[0816] The terminal integrates weather data, expenditure data, and user information to generate a life plan.
[0817] Inputs: Weather data, historical spending data, user information.
[0818] Output: A detailed life plan by day.
[0819] Step 6:
[0820] The device uses the recommend_activities method to list recommended activities that take budget and weather into account, for example, "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[0821] Specific behavior:
[0822] The device analyzes the generated life plan and recommends activities based on the day's weather and budget.
[0823] Input: A detailed daily life plan (including weather and budget).
[0824] Output: A list of recommended activities.
[0825] Step 7:
[0826] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[0827] Specific behavior:
[0828] The device collects and analyzes emotional data through the user's camera and microphone.
[0829] Input: User's facial expression data, voice data.
[0830] Output: Parsed emotional state data.
[0831] Step 8:
[0832] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. If the user is feeling stressed, it will suggest relaxing activities.
[0833] Specific behavior:
[0834] The device reassess the life plan based on the emotional state data and makes any necessary changes.
[0835] Input: Emotional state data.
[0836] Output: Updated life plan.
[0837] Step 9:
[0838] The server formats the data to display the generated life plan and provides it to the user, who can then check the plan and make any necessary reservations or preparations.
[0839] Specific behavior:
[0840] The server converts the life plan data into HTML or application UI format and sends it to the device.
[0841] Input: Life plan data.
[0842] Output: The post-reconstruction life plan displayed to the user.
[0843] (Application example 2)
[0844] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0845] Conventional life plan generation systems provide plans based on basic data such as the user's budget and preferences, but lack dynamic optimization that takes into account the user's instantly fluctuating emotional state. As a result, they are unable to suggest activities and meals that fit the user's real-time emotions and state, resulting in a lack of an improved user experience. Furthermore, they lack specific suggestions for things like food delivery, leaving users with a lack of means to alleviate stress and discomfort in real time.
[0846] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for inputting the user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external software interface, means for acquiring past expenditure data from the external software interface, means for monitoring the user's emotional state in real time using an emotion engine, means for dynamically optimizing the life plan based on data acquired from the emotion engine, and means for displaying the generated life plan to the user. This makes it possible to respond to the user's emotional state at any time, propose an optimal food delivery plan, and improve user satisfaction and convenience.
[0847] "User" means an individual or organization that uses this system.
[0848] A "budget" indicates a range of amounts that a user can spend within a specific period of time.
[0849] "Number of days remaining" is the number of days remaining until the user executes the plan.
[0850] "Preference information" is data information that indicates the user's preferences, hobbies, and interests.
[0851] "Location information" is data that indicates the geographical location of the user.
[0852] A "life plan" is a lifestyle plan created based on information input by the user.
[0853] A "means" is a method or apparatus provided for performing a particular function or action.
[0854] "Weather forecast data" is forecast data of weather information for a specific time period and location.
[0855] An "external software interface" is an interface for connecting to external services or databases.
[0856] "Past expenditure data" refers to data relating to the user's past consumption behavior and expenditure details.
[0857] An "emotion engine" is software or hardware that recognizes emotions by analyzing a user's facial expressions, tone of voice, input data, etc.
[0858] "Emotional state" refers to the emotions and psychological state that a user is feeling in real time.
[0859] "Dynamic optimization" means adjusting and optimizing plans and proposals in real time in response to changing situations and conditions.
[0860] A "food delivery plan" is an optimal meal delivery plan proposed based on the user's emotional state and preference information.
[0861] The present invention is a system for generating an optimal life plan or food delivery plan based on a user's budget, remaining days, preference information, and emotional state. Specific embodiments are described below.
[0862] Overall system configuration
[0863] The system consists of a user terminal, a server, and an external software interface. Users input the necessary information using their smartphones, and the server processes the data in the backend and generates a plan.
[0864] The main means of the system
[0865] 1. Information input method
[0866] The user inputs their budget, remaining days, preferences, and location information into their smartphone. Based on this information, the server creates an instance of the LifestylePlanner class.
[0867] 2. Data Acquisition Method
[0868] The server uses an external software interface (API) to retrieve weather forecast data and historical spending data. The weather forecast data is location-based, e.g., a five-day weather forecast for Tokyo. The historical spending data reflects the user's spending patterns and is useful for budget management.
[0869] 3. Plan Generation Method
[0870] Based on the retrieved data, the server calls the generate_plan method to generate a life plan, which includes the weather for each day, budget allocation, and recommended activities and meal options.
[0871] 4. Means of monitoring emotional state
[0872] The server uses an emotion engine to analyze the user's facial expressions, voice tone, and input data to monitor their emotional state in real time. This emotion engine utilizes Microsoft Face API and IBM Watson Emotion Analysis.
[0873] 5. Dynamic plan optimization
[0874] The server dynamically optimizes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it suggests activities and meals that will help them relax.
[0875] 6. Results display means
[0876] The generated life plan and food delivery plan are displayed on the user's device, allowing the user to see suggestions for optimal activities and meals.
[0877] Usage example
[0878] As a specific example, let's say a user has a budget of 30,000 yen, 5 days left, "I like Italian food" and "My hobby is tennis" as their preference information, and "I live in Tokyo" as their location information. The system will generate the following plan:
[0879] First day (sunny):
[0880] Activities: Visit to the park and relax, followed by dinner at an Italian restaurant.
[0881] Budget: Free to visit the park, 3000 yen for dinner.
[0882] If the emotional state is stressed, we suggest an additional relaxation session at a spa and provide options based on budget.
[0883] An example of a prompt is as follows:
[0884] "Budget: 30,000 yen, Time remaining: 5 days, Preferences: Italian cuisine, Location: Tokyo, Best meal suggestions for when you're stressed."
[0885] This system allows users to always enjoy the optimal life plan, and in particular, food delivery plans can be suggested based on real-time emotional state.
[0886] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0887] Step 1:
[0888] The user inputs their budget, remaining days, preferences, and location information into their smartphone, which is then sent to the system.
[0889] Step 2:
[0890] The server generates an instance of the LifestylePlanner class based on the input information. This class stores the user information and is used in subsequent plan generation processes.
[0891] Step 3:
[0892] The server retrieves weather forecast data from an external software interface. Specifically, it retrieves location-based weather data and stores it in an instance of the LifestylePlanner class. In this step, the server receives weather data in JSON format via an API call, analyzes it, and stores it.
[0893] Step 4:
[0894] The server retrieves past spending data from an external software interface. This data reflects the user's past spending patterns and stores it in an instance of the LifestylePlanner class. Again, the server receives the JSON format data through an API call, which is then parsed and stored for use in budget management.
[0895] Step 5:
[0896] The server calls the generate_plan method to generate a daily life plan based on weather data and budget information. The plan includes the weather for each day, budget allocation, recommended activities, and meal options.
[0897] Step 6:
[0898] The server uses an emotion engine to monitor the user's emotional state in real time. It analyzes data obtained from the smartphone's camera and microphone to determine the user's emotional state. The emotion engine uses, for example, Microsoft Face API or IBM Watson Emotion Analysis.
[0899] Step 7:
[0900] The server dynamically optimizes the instance of the LifestylePlanner class based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it adds relaxing activities and food delivery plans. Specifically, it dynamically changes the plan by offering spa and relaxation menus to stressed users.
[0901] Step 8:
[0902] The server sends the generated life plan and food delivery plan to the user's device, where the user can check the optimized plan on their smartphone and take necessary actions (e.g., order food delivery).
[0903] This series of processes allows users to always enjoy the most optimal life plan, and in particular, by suggesting food delivery plans that correspond to their emotional state, user satisfaction is improved.
[0904] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0905] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0906] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0907] [Third embodiment]
[0908] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0909] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0910] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0911] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0912] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0913] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0914] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0915] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0916] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0917] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0918] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0919] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0920] The present invention is a system for generating a lifestyle plan tailored to a user's tastes and preferences within a limited budget. The purpose of this system is to present the optimal plan for the user and improve their quality of life. Specific embodiments of the system are described below.
[0921] Basic flow
[0922] 1. First, the user inputs their budget, remaining days, preferences, and location information. This information is stored in the system's database, and a plan is generated based on it.
[0923] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[0924] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes the weather forecast for the specified location based on the user's location information.
[0925] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used as a reference for planning the current budget.
[0926] 5. The device executes the generate_plan method to generate a life plan for the required number of days. This plan includes the following elements:
[0927] Weather data for each day
[0928] Daily budget allocation
[0929] Recommended activities and dietary choices
[0930] 6. The device uses the recommend_activities method to list recommended activities based on budget and weather, for example, outdoor activities on sunny days and indoor activities on rainy days.
[0931] 7. The server formats the data to display the generated life plan and provides it to the user. This information is used by the user to review the plan and make any necessary reservations or preparations.
[0932] Specific examples
[0933] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan:
[0934] 1. First day (sunny):
[0935] Plan: It's a sunny day, so visit the park and relax, then have dinner at an Italian restaurant.
[0936] Budget: Free to visit the park, allocate 3000 yen for dinner.
[0937] 2. Day 2 (Cloudy):
[0938] Plan: Suggest going to the movies.
[0939] Budget: Allocate 1500 yen to see a movie.
[0940] 3. Day 3 (Rain):
[0941] Plan: Set aside time for reading as an indoor activity, and have dinner at an Italian restaurant.
[0942] Budget: Reading is free, 3000 yen allocated for dinner.
[0943] This flow allows users to enjoy life without compromising their tastes and preferences, and stay within their budget. The system takes into account past spending data and weather information to provide realistic plans.
[0944] The processing flow will be explained below.
[0945] Step 1:
[0946] The user inputs the budget, remaining days, preference information, and location information into the terminal.
[0947] As a specific example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[0948] Step 2:
[0949] The device generates an instance of the LifestylePlanner class based on the input information.
[0950] As a concrete example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[0951] Step 3:
[0952] The device calls the fetch_weather method to retrieve weather forecast data from an external API.
[0953] As a concrete example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (e.g., Tokyo).
[0954] Step 4:
[0955] The terminal calls the fetch_past_expenses method to retrieve past expense data from an external API.
[0956] As a concrete example, the terminal executes past_expenses = planner.fetch_past_expenses() to obtain the user's past spending patterns.
[0957] Step 5:
[0958] The device executes the generate_plan method to generate a life plan for the required number of days.
[0959] For example, the device runs lifestyle_plan = planner.generate_plan() to generate a plan taking into account weather data and budget for each day.
[0960] Step 6:
[0961] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[0962] As a specific example, we suggest "visiting the park" on sunny days and "indoor activities" on rainy days.
[0963] Step 7:
[0964] The server formats the data to display the generated life plan and provides it to the user.
[0965] As a specific example, the server converts data into HTML or JSON format and sends it to the terminal.
[0966] Step 8:
[0967] The user checks the displayed life plan and makes the necessary reservations and preparations.
[0968] For example, we make restaurant reservations, buy movie tickets, and enjoy our daily lives based on plans.
[0969] Example 1
[0970] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0971] The problem that this invention aims to solve is to automatically generate a lifestyle plan that takes into account a user's hobbies and preferences within a limited budget, and allows the user to select optimal activities and meals based on that plan. Conventional plan generation systems have difficulty providing realistic and satisfying plans because they are unable to fully reflect the user's individual needs, real-time weather information, or past expenditure data. The purpose of this invention is to solve these problems and improve the user's quality of life by presenting a plan that is appropriate for the user.
[0972] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0973] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a lifestyle plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expense history data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expense history data, means for displaying the generated lifestyle plan to the user, and means for suggesting outdoor and indoor activities based on the budget and weather data. This allows the user to obtain a realistic and effective lifestyle plan that reflects their own hobbies and preferences.
[0974] "User" refers to an individual who uses this system to generate a life plan and acts based on that plan.
[0975] "Budget" refers to the total amount of financial constraints that a user can use to carry out their lifestyle plan.
[0976] "Number of days remaining" refers to the number of days remaining in the period for which the user is planning using this system.
[0977] "Preference information" refers to information about specific meals and activities that a user prefers.
[0978] "Location information" refers to data that indicates a user's current geographic location.
[0979] A "life plan" refers to a plan that includes suggestions for activities and meals to be done within a budget, generated based on the user's budget, preference information, weather forecast data, and past spending data.
[0980] "Weather Forecast Data" refers to information about future weather conditions based on a specific location, obtained through an external API.
[0981] "Historical Expense Data" means data regarding a User's historical spending history obtained through an External API.
[0982] "Recommended activities" refer to activities selected by the system taking into account the user's budget, preference information, and weather forecast data.
[0983] "External API" refers to an application program interface used to obtain data from other systems or services.
[0984] "Outdoor activities" refers to activities that are recommended to be carried out outdoors.
[0985] "Indoor activities" refer to activities that are recommended to be performed indoors.
[0986] The present invention relates to a system for automatically generating an optimal lifestyle plan for a user based on the user's budget, remaining days, preference information, and location information. An embodiment for implementing this system will be described below.
[0987] System configuration
[0988] This system consists of a user input device, a data processing terminal, a database, a means of communication with external APIs, and a display device for displaying results. Examples of specific software and hardware used include:
[0989] Input devices: PC, smartphone, tablet, etc.
[0990] Data processing terminal: Server
[0991] Database: Relational Database Management System (RDBMS)
[0992] External APIs: Weather APIs (e.g., OpenWeatherMap API), financial data APIs (e.g., Plaid API)
[0993] Display device: Web browser
[0994] User input of information
[0995] Users input their budget, remaining days, preferences, and location information into the system using an input device. This information is sent to the server and stored in a database. This information becomes the basis for generating a lifestyle plan.
[0996] Data Acquisition
[0997] The server uses the data processing terminal to obtain the following data:
[0998] Weather forecast data: Uses an external API to obtain weather forecast data based on the user's location.
[0999] Historical Expense Data: Utilize external financial data APIs to obtain users' historical spending data.
[1000] Life plan generation
[1001] The server creates an instance of the LifestylePlanner class based on the information it has obtained and creates a lifestyle plan that includes the following elements:
[1002] Weather data for each day
[1003] Daily budget allocation
[1004] Recommended activities and dietary choices
[1005] Activity suggestions
[1006] The server uses the recommend_activities method during the life plan generation process to list recommended activities taking into account budget and weather data. For example, outdoor activities are suggested on sunny days, and indoor activities on rainy days.
[1007] View Plans
[1008] The generated life plan is formatted by the server and sent back from the database to the user's input device. The user can then check the life plan through their own device and make any necessary reservations or preparations.
[1009] Specific examples
[1010] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information of "I like Italian food," and location information of "I live in Tokyo," the server will generate the following lifestyle plan.
[1011] Day 1 (Sunny): Visit a park and relax. Then have dinner at an Italian restaurant. Budget 3000 yen for dinner.
[1012] Day 2 (Cloudy): Suggest going to the movies. Allocate 1500 yen to the movie.
[1013] Day 3 (Rain): Set aside time to enjoy reading as an indoor activity. Also, have dinner at an Italian restaurant. Allocate a budget of 3,000 yen for dinner.
[1014] Prompt Sentence Examples
[1015] An example of a prompt is as follows:
[1016] "If a user inputs a budget of 30,000 yen, 5 days remaining, a preference for Italian food, and a residence in Tokyo, what kind of life plan will be generated?"
[1017] This system allows users to obtain realistic lifestyle plans that fully reflect their own tastes and preferences, enabling them to live an efficient and satisfying life within a limited budget.
[1018] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1019] Step 1:
[1020] The user inputs their budget, remaining days, preferences, and location information, which is the initial input to the system.
[1021] Input: Budget, remaining days, preferences, location
[1022] Specific operation: The user uses a device to input information into a web form. For example, the user inputs a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[1023] Output: User information stored in the database
[1024] Step 2:
[1025] The terminal receives the user's input information and generates an instance of the LifestylePlanner class based on the information stored in the database.
[1026] Input: User information
[1027] Specific operation: The device calls the constructor of the LifestylePlanner class and sets the user information as an instance variable.
[1028] Output: An instance of the LifestylePlanner class
[1029] Step 3:
[1030] The device uses the fetch_weather method to retrieve location-based weather forecast data from an external API.
[1031] Input:Location
[1032] Specific operation: The device makes an API request and sends the specified location information (e.g., "Tokyo") to the external API.
[1033] Output: Weather forecast data (JSON format)
[1034] Step 4:
[1035] The terminal uses the fetch_past_expenses method to retrieve past expense data from an external finance API.
[1036] Input: User's identity
[1037] Specific operation: The device makes an API request and sends the user's identification information. The external API responds with spending data for the past three months in JSON format.
[1038] Output: Historical spending data (JSON format)
[1039] Step 5:
[1040] The device executes the generate_plan method to generate a lifestyle plan for the required number of days.
[1041] Input: Weather forecast data, past spending data, user budget, preferences, remaining days
[1042] How it works: The device uses this data to run algorithms and calculate daily activities and budget allocations. For example, on sunny days, it suggests relaxing in the park as an outdoor activity, and on rainy days, it suggests reading or watching a movie as an indoor activity.
[1043] Output: Life plan (includes weather data, budget allocation, and activity suggestions)
[1044] Step 6:
[1045] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[1046] Input: Generated life plan
[1047] How it works: The device uses weather and budget data to create a list of recommended activities, such as playing tennis on a sunny day and reading in the library on a rainy day.
[1048] Output: List of recommended activities
[1049] Step 7:
[1050] The server formats the generated life plan and sends the data to the terminal for display to the user.
[1051] Input: Life plan and recommended activity list
[1052] Specific operation: The server converts the generated plan into HTML format and returns it to the user's device. The user can view the formatted plan through a browser, add it to their schedule, or make a reservation.
[1053] Output: A life plan displayed on the user's screen
[1054] (Application example 1)
[1055] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1056] In today's busy lifestyles, many people find it difficult to plan their meals and activities within budget and time constraints. It is particularly difficult to efficiently create a life plan while taking into account daily weather and budgets. Furthermore, there is a lack of systems that suggest meals and activities that suit users' preferences. Therefore, there is a need for real-time planning that takes into account users' preferences, budgets, and weather information.
[1057] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1058] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expenditure data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expenditure data, means for displaying the generated life plan to the user, and means for suggesting optimal food and drink options based on the user's preference information and budget. This enables users to efficiently plan optimal meals and activities that fit their budget and preferences, taking into account daily weather conditions.
[1059] A "user" is a person who inputs a budget, preference information, remaining days, and location information and uses the presented life plan.
[1060] A "budget" is the amount of money that a user plans to spend within their life plan.
[1061] "Days remaining" is the number of days remaining in the period set for the user to execute the plan.
[1062] "Preference information" is information relating to the types of food and activities that the user prefers.
[1063] "Location information" is information that indicates the user's current location or the location that serves as the base point for the user's activity.
[1064] A "life plan" is a detailed schedule for planning the user's life, generated based on the user's budget, preference information, weather forecast data, and past expenditure data.
[1065] "Weather forecast data" is weather forecast information based on the user's location information.
[1066] An "external API" is an interface for obtaining data from other systems or services.
[1067] "Past expenditure data" is information that indicates how a user has spent their budget in the past.
[1068] "Recommended activities" are activities that are recommended for the user to perform, selected based on the user's preference information, budget, and weather forecast data.
[1069] "Food and Drink Options" are the available food and drink options presented based on the user's preference information and budget.
[1070] The present invention relates to a system that generates an optimal life plan based on a user's budget, remaining days, preference information, and location information, using weather forecasts and past expenditure data. This system is designed to improve the user's quality of life. Specific embodiments of the system are described below.
[1071] Basic configuration
[1072] The server has the following means:
[1073] 1. User information input method: The user inputs the budget, remaining days, preferences, and location information via the terminal. This information is sent to the server and stored in the database.
[1074] 2. Life plan generation means: The server generates a life plan based on the information entered above. The LifestylePlanner class plays a central role in generating a life plan, and an instance of this class is generated.
[1075] 3. Weather forecast data acquisition method: The server uses an external weather forecast API to acquire weather forecast data based on the user's location information.
[1076] 4. Method for obtaining past expenditure data: The server obtains past expenditure data through an external API and reflects this in the current budget plan.
[1077] 5. Recommended activity selection method: The server uses weather forecast data and past expenditure data to generate a list of recommended activities and meal options, including outdoor activities suitable for sunny days and indoor activities suitable for rainy days.
[1078] 6. Data display means: The generated life plan is formatted and provided to the user. This information is used by the user to confirm the plan and make any necessary reservations or preparations.
[1079] Program processing explanation
[1080] The server is built using Python or other programming languages and utilizes various APIs, including the Python Requests library (used for API access). The hardware can be any standard server or cloud service.
[1081] Specific example of the procedure
[1082] As a specific example, if a user inputs information that they live in Tokyo, have a budget of 30,000 yen, have 7 days left, and like Italian food, the server will process it as follows:
[1083] 1. Enter your user information:
[1084] The user uses a smartphone to input the budget, remaining days, preference information (e.g., Italian food, Japanese food), and location information.
[1085] 2. Get weather data:
[1086] Get weather data for the next 7 days from the weather forecast API using Tokyo coordinates.
[1087] 3. Obtain historical spending data:
[1088] For example, obtain past food expenditure data from an external API.
[1089] 4. Generate the plan:
[1090] A plan is generated according to the logic of life plan generation. For example, it suggests curry rice on a rainy day and sushi on a sunny day.
[1091] Prompt Sentence Examples
[1092] An example of a prompt to be input to the generative AI model is as follows:
[1093] User information: Budget 30,000 yen, 7 days left, loves Italian and Japanese food, lives in Tokyo
[1094] 1. Make a plan.
[1095] 2. Provide a recommended food delivery menu for each day.
[1096] 3. Vary your menu suggestions depending on the weather.
[1097] 4. Please consider your budget when making your proposal.
[1098] This allows users to efficiently find the best plan that suits their budget and preferences, taking into account daily weather information.This system makes optimal suggestions for each individual user, thereby improving the quality of their lifestyle.
[1099] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1100] Step 1:
[1101] Input and user information collection
[1102] The user uses a device such as a smartphone to input their budget, remaining days, preferences (e.g., favorite type of food), and location information. This information is sent to the server and stored in a database. Specifically, the user enters information into the application form and presses the "Submit" button, which stores the information in the database on the server.
[1103] Input: User's budget, remaining days, preferences, location
[1104] Output: User information stored in the database
[1105] Step 2:
[1106] Obtaining weather forecast data
[1107] The server sends a request to an external weather forecast API based on the user's location information to obtain future weather forecast data. The API is accessed using the Python Requests library. Specifically, the server sends a GET request to the API endpoint and receives the weather data in JSON format.
[1108] Input: User's location
[1109] Output: Retrieved weather forecast data (JSON format)
[1110] Step 3:
[1111] Obtaining historical spending data
[1112] The server retrieves the user's past spending data via an external API or database. Again, it uses the Requests library to access the API and retrieve the past spending history. Specifically, it sends a request including the user ID and other authentication information and receives the past spending information.
[1113] Input: User ID or authentication information stored in the system
[1114] Output: Obtained historical expenditure data
[1115] Step 4:
[1116] Creating a life plan
[1117] The server generates an instance of the LifestylePlanner class based on the weather forecast data, past expenditure data, and the user's preferences and budget, and creates a life plan. This plan includes daily budget allocations, recommended activities, and meal options. Specifically, an algorithm performs calculations based on this data and generates the plan.
[1118] Input: User preferences, budget, weather forecast data, past spending data
[1119] Output: Generated life plan
[1120] Step 5:
[1121] Recommended Activities and Dietary Selections
[1122] In the process of generating a life plan, the server determines recommended activities and meal options by taking into account weather forecast data and budget. Specifically, it selects outdoor activities on sunny days and indoor activities on rainy days, and also selects meals. This selection also includes budget allocation.
[1123] Input: Generated life plan, weather forecast data, budget
[1124] Output: Recommended activities and meal options
[1125] Step 6:
[1126] Formatting and displaying data
[1127] The server formats the generated life plan and recommended activities and sends them to the device. The user can check this on a smartphone or other device and order or reserve delivery as needed. The formatted data is then formatted so that it can be displayed in an intuitive UI. Specifically, the data is formatted into HTML or JSON format and sent to the device.
[1128] Input: Life plan and recommended activities before plastic surgery
[1129] Output: Formatted life plan data, displayed on the device
[1130] In this way, processing is performed based on specific input at each step, and appropriate output is obtained, thereby providing the user with an optimal life plan.
[1131] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1132] The present invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget. In addition to the features of conventional life plan generation systems, the system is characterized by recognizing the user's emotional state and dynamically optimizing the plan based on that. Specific embodiments of the system are described below.
[1133] Basic flow
[1134] 1. First, the user inputs their budget, remaining days, preference information, and location information into the device. For example, the budget is 30,000 yen, the remaining days are 5 days, preference information is "I like Italian food" and "My hobby is tennis," and location information is "I live in Tokyo."
[1135] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[1136] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes a five-day weather forecast for Tokyo based on the user's location.
[1137] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used for budget planning.
[1138] 5. The device runs the generate_plan method to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1139] 6. The device uses the recommend_activities method to list recommended activities taking into account budget and weather, for example, "visit the park" on a sunny day and "indoor activities" on a rainy day.
[1140] 7. The device monitors the user's emotional state in real time using an emotion engine that recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1141] 8. The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1142] 9. The server formats the data to display the generated life plan and provides it to the user, allowing the user to review the plan and make any necessary reservations or preparations.
[1143] Specific examples
[1144] For example, suppose a user has a budget of 30,000 yen, 5 days left, preferences such as "I like Italian food," "My hobby is tennis," and location information such as "I live in Tokyo." The system generates the following life plan:
[1145] 1. First day (sunny):
[1146] Plan: Visit the park and relax, then have dinner at an Italian restaurant.
[1147] Budget: Visiting the park is free, but allocate 3000 yen for dinner.
[1148] 2. Day 2 (Cloudy):
[1149] Plan: Suggest a movie night.
[1150] Budget: Allocate 1,500 yen to see a movie.
[1151] 3. Day 3 (Rain):
[1152] The plan: Set aside some time for some indoor reading, followed by dinner at an Italian restaurant.
[1153] Budget: Reading is free, but allocate 3,000 yen for dinner.
[1154] Furthermore, if the user feels stressed on their first day, the emotion engine will recognize this and suggest additional relaxing activities, such as a relaxation session at a spa, and provide the best options based on their budget.
[1155] The advantage of this system is that it can dynamically optimize plans taking into account the user's emotional state, allowing users to always enjoy the best possible lifestyle without compromising their tastes and preferences and within their budget.
[1156] The processing flow will be explained below.
[1157] Step 1:
[1158] The user inputs the budget, remaining days, preference information, and location information into the terminal. For example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[1159] Step 2:
[1160] The device creates an instance of the LifestylePlanner class based on the input information. For example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[1161] Step 3:
[1162] The device calls the fetch_weather method to retrieve weather forecast data from an external API. For example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (Tokyo).
[1163] Step 4:
[1164] The terminal calls the fetch_past_expenses method to retrieve past expenditure data from an external API. For example, the terminal executes past_expenses = planner.fetch_past_expenses() to retrieve the user's past spending patterns.
[1165] Step 5:
[1166] The device executes the generate_plan method to generate a lifestyle plan for the required number of days. For example, the device executes lifestyle_plan = planner.generate_plan() to generate a plan taking into account the weather data and budget for each day.
[1167] Step 6:
[1168] The device uses the recommend_activities method to list recommended activities taking into account budget and weather. For example, it might suggest "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1169] Step 7:
[1170] The device uses an emotion engine to monitor the user's emotional state in real time, specifically by analyzing the user's facial expressions, voice tone, and input data.
[1171] Step 8:
[1172] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1173] Step 9:
[1174] The server formats the data to display the generated life plan and provides it to the user. For example, the server converts the data into HTML or JSON format and sends it to the terminal.
[1175] Step 10:
[1176] The user checks the displayed life plan, makes necessary reservations and preparations, for example, makes restaurant reservations and buys movie tickets, and enjoys daily life based on the plan.
[1177] Example 2
[1178] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1179] While conventional life plan generation systems generate life plans based on a user's budget and preferences, they have the problem of being unable to dynamically modify the plan to take into account the user's emotional state. As a result, users often feel stressed or are unable to adapt to unexpected situations. Furthermore, they are unable to provide optimal activity and meal options that fully take into account weather and past spending patterns.
[1180] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1181] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external information providing service, means for acquiring past expenditure data from the external information providing service, means for selecting recommended activities taking into account the weather forecast data and the past expenditure data, means for monitoring the user's emotional state, means for dynamically changing the life plan based on the emotional state, and means for displaying the generated life plan to the user. This makes it possible to dynamically generate and provide an optimal life plan taking into account the user's emotional state in real time.
[1182] A "budget" is the amount of money that a user can allocate to carrying out a life plan.
[1183] "Number of remaining days" refers to the number of days indicating the period of the life plan specified by the user.
[1184] "Preference information" refers to information that reflects a user's preferences and interests.
[1185] "Location information" refers to geographical information that indicates the user's current location and range of movement.
[1186] "Generating a life plan" means creating a plan of activities and events related to the user's life based on the input information.
[1187] "Weather forecast data" means information regarding future weather conditions in a specified area.
[1188] "External information providing services" refer to external systems or services that provide information such as weather forecast data or expenditure data.
[1189] "Past expenditure data" refers to historical data relating to expenditures made by a user in the past.
[1190] "Selecting a recommended activity" means selecting an appropriate activity based on user information and environmental data.
[1191] "Monitoring emotional state" means monitoring and analyzing the user's emotions in real time.
[1192] "Dynamically changing a life plan" means updating an already created life plan based on real-time data such as the user's emotional state.
[1193] "Displaying to the user" means providing the generated life plan to the user through a visual interface.
[1194] This invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget, and dynamically optimizes the plan by recognizing the user's emotional state in real time.In addition to the features of conventional life plan generation systems, this system has the feature of monitoring the user's emotional state and changing the plan according to the situation.
[1195] System configuration
[1196] This system is mainly composed of the following hardware and software:
[1197] Terminal (device on which the user inputs information, e.g. smartphone, tablet, PC)
[1198] Server (the central system that generates plans and processes data)
[1199] External information provision services (API services that provide weather forecast data and past expenditure data)
[1200] Emotion engine (software that analyzes the user's emotional state in real time)
[1201] Data Entry and Processing
[1202] First, the user uses a terminal to input their budget, remaining days, preferences, and location information into the system. For example, the user might input a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[1203] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan that takes into account the user's budget and preferences.
[1204] Obtaining weather forecast data and historical spending data
[1205] The device uses the fetch_weather method to obtain weather forecast data from an external information service, thereby obtaining five-day weather forecast data for the user's current location (Tokyo).
[1206] The device uses the fetch_past_expenses method to retrieve past expense data from an external information provider, which is used to aid in budget planning.
[1207] Generation and dynamic modification of life plans
[1208] The device runs the generate_plan method based on various data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1209] Additionally, the device can use the recommend_activities method to list recommended activities taking into account budget and weather, for example, suggesting "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1210] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1211] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1212] Plan Offerings
[1213] The server formats the data to display the generated life plan and provides it to the user, allowing the user to check the plan and make any necessary reservations or preparations.
[1214] Specific examples
[1215] For example, if you enter a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan.
[1216] 1. First day (sunny):
[1217] Plan: Visit the park and relax, then dinner at an Italian restaurant
[1218] Budget: Free to visit the park, 3000 yen for dinner
[1219] Emotion: If the user feels stressed, suggest an additional spa relaxation session.
[1220] 2. Day 2 (Cloudy):
[1221] Plan: Watch a movie
[1222] Budget: 1500 yen to see a movie
[1223] 3. Day 3 (Rain):
[1224] Plan: Indoor reading, followed by dinner at an Italian restaurant
[1225] Budget: Free reading, 3000 yen for dinner
[1226] Example prompts for generative AI models
[1227] "Create a 5-day travel plan for Tokyo with a budget of ¥30,000. The user likes Italian food and plays tennis. Optimize the plan by taking into account the weather forecast and the user's emotional state."
[1228] The advantage of this system is that it dynamically optimizes plans taking into account the user's emotional state, allowing users to enjoy an optimal lifestyle without compromising their hobbies and preferences, all while staying within their budget.
[1229] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1230] Step 1:
[1231] The user inputs their budget, remaining days, preferences, and location information into the device. The input data is temporarily stored in the device's database. For example, a user inputs the following data: a budget of 30,000 yen, five days remaining, "I like Italian food," "My hobby is tennis," and "I live in Tokyo."
[1232] Specific behavior:
[1233] The user enters information into the input form displayed on the device's screen UI and presses the send button.
[1234] Input: Budget, remaining days, preferences, location.
[1235] Output: User information stored in the database on the device.
[1236] Step 2:
[1237] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[1238] Specific behavior:
[1239] The device creates an instance of the LifestylePlanner class using the saved user information as parameters.
[1240] Input: User information.
[1241] Output: An instance of the LifestylePlanner class.
[1242] Step 3:
[1243] The device uses the fetch_weather method to retrieve weather forecast data from an external information service. The weather forecast data is retrieved based on location information and includes forecasts for the specified number of days.
[1244] Specific behavior:
[1245] The device uses the location information to send a request to the weather forecast API.
[1246] Input: Location information (Tokyo).
[1247] Output: Five-day weather forecast data obtained from an external information provider.
[1248] Step 4:
[1249] The terminal uses the fetch_past_expenses method to retrieve past expenditure data from an external information service. The expenditure data reflects the user's past consumption patterns.
[1250] Specific behavior:
[1251] The device sends a request to the expenditure data API using the user ID.
[1252] Input: User ID.
[1253] Output: Historical spending data obtained from external information providers.
[1254] Step 5:
[1255] The device runs the generate_plan method based on the retrieved weather data and past spending data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1256] Specific behavior:
[1257] The terminal integrates weather data, expenditure data, and user information to generate a life plan.
[1258] Inputs: Weather data, historical spending data, user information.
[1259] Output: A detailed life plan by day.
[1260] Step 6:
[1261] The device uses the recommend_activities method to list recommended activities that take budget and weather into account, for example, "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1262] Specific behavior:
[1263] The device analyzes the generated life plan and recommends activities based on the day's weather and budget.
[1264] Input: A detailed daily life plan (including weather and budget).
[1265] Output: A list of recommended activities.
[1266] Step 7:
[1267] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1268] Specific behavior:
[1269] The device collects and analyzes emotional data through the user's camera and microphone.
[1270] Input: User's facial expression data, voice data.
[1271] Output: Parsed emotional state data.
[1272] Step 8:
[1273] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. If the user is feeling stressed, it will suggest relaxing activities.
[1274] Specific behavior:
[1275] The device reassess the life plan based on the emotional state data and makes any necessary changes.
[1276] Input: Emotional state data.
[1277] Output: Updated life plan.
[1278] Step 9:
[1279] The server formats the data to display the generated life plan and provides it to the user, who can then check the plan and make any necessary reservations or preparations.
[1280] Specific behavior:
[1281] The server converts the life plan data into HTML or application UI format and sends it to the device.
[1282] Input: Life plan data.
[1283] Output: The post-reconstruction life plan displayed to the user.
[1284] (Application example 2)
[1285] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1286] Conventional life plan generation systems provide plans based on basic data such as the user's budget and preferences, but lack dynamic optimization that takes into account the user's instantly fluctuating emotional state. As a result, they are unable to suggest activities and meals that fit the user's real-time emotions and state, resulting in a lack of an improved user experience. Furthermore, they lack specific suggestions for things like food delivery, leaving users with a lack of means to alleviate stress and discomfort in real time.
[1287] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for inputting the user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external software interface, means for acquiring past expenditure data from the external software interface, means for monitoring the user's emotional state in real time using an emotion engine, means for dynamically optimizing the life plan based on data acquired from the emotion engine, and means for displaying the generated life plan to the user. This makes it possible to respond to the user's emotional state at any time, propose an optimal food delivery plan, and improve user satisfaction and convenience.
[1288] "User" means an individual or organization that uses this system.
[1289] A "budget" indicates a range of amounts that a user can spend within a specific period of time.
[1290] "Number of days remaining" is the number of days remaining until the user executes the plan.
[1291] "Preference information" is data information that indicates the user's preferences, hobbies, and interests.
[1292] "Location information" is data that indicates the geographical location of the user.
[1293] A "life plan" is a lifestyle plan created based on information input by the user.
[1294] A "means" is a method or apparatus provided for performing a particular function or action.
[1295] "Weather forecast data" is forecast data of weather information for a specific time period and location.
[1296] An "external software interface" is an interface for connecting to external services or databases.
[1297] "Past expenditure data" refers to data relating to the user's past consumption behavior and expenditure details.
[1298] An "emotion engine" is software or hardware that recognizes emotions by analyzing a user's facial expressions, tone of voice, input data, etc.
[1299] "Emotional state" refers to the emotions and psychological state that a user is feeling in real time.
[1300] "Dynamic optimization" means adjusting and optimizing plans and proposals in real time in response to changing situations and conditions.
[1301] A "food delivery plan" is an optimal meal delivery plan proposed based on the user's emotional state and preference information.
[1302] The present invention is a system for generating an optimal life plan or food delivery plan based on a user's budget, remaining days, preference information, and emotional state. Specific embodiments are described below.
[1303] Overall system configuration
[1304] The system consists of a user terminal, a server, and an external software interface. Users input the necessary information using their smartphones, and the server processes the data in the backend and generates a plan.
[1305] The main means of the system
[1306] 1. Information input method
[1307] The user inputs their budget, remaining days, preferences, and location information into their smartphone. Based on this information, the server creates an instance of the LifestylePlanner class.
[1308] 2. Data Acquisition Method
[1309] The server uses an external software interface (API) to retrieve weather forecast data and historical spending data. The weather forecast data is location-based, e.g., a five-day weather forecast for Tokyo. The historical spending data reflects the user's spending patterns and is useful for budget management.
[1310] 3. Plan Generation Method
[1311] Based on the retrieved data, the server calls the generate_plan method to generate a life plan, which includes the weather for each day, budget allocation, and recommended activities and meal options.
[1312] 4. Means of monitoring emotional state
[1313] The server uses an emotion engine to analyze the user's facial expressions, voice tone, and input data to monitor their emotional state in real time. This emotion engine utilizes Microsoft Face API and IBM Watson Emotion Analysis.
[1314] 5. Dynamic plan optimization
[1315] The server dynamically optimizes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it suggests activities and meals that will help them relax.
[1316] 6. Results display means
[1317] The generated life plan and food delivery plan are displayed on the user's device, allowing the user to see suggestions for optimal activities and meals.
[1318] Usage example
[1319] As a specific example, let's say a user has a budget of 30,000 yen, 5 days left, "I like Italian food" and "My hobby is tennis" as their preference information, and "I live in Tokyo" as their location information. The system will generate the following plan:
[1320] First day (sunny):
[1321] Activities: Visit to the park and relax, followed by dinner at an Italian restaurant.
[1322] Budget: Free to visit the park, 3000 yen for dinner.
[1323] If the emotional state is stressed, we suggest an additional relaxation session at a spa and provide options based on budget.
[1324] An example of a prompt is as follows:
[1325] "Budget: 30,000 yen, Time remaining: 5 days, Preferences: Italian cuisine, Location: Tokyo, Best meal suggestions for when you're stressed."
[1326] This system allows users to always enjoy the optimal life plan, and in particular, food delivery plans can be suggested based on real-time emotional state.
[1327] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1328] Step 1:
[1329] The user inputs their budget, remaining days, preferences, and location information into their smartphone, which is then sent to the system.
[1330] Step 2:
[1331] The server generates an instance of the LifestylePlanner class based on the input information. This class stores the user information and is used in subsequent plan generation processes.
[1332] Step 3:
[1333] The server retrieves weather forecast data from an external software interface. Specifically, it retrieves location-based weather data and stores it in an instance of the LifestylePlanner class. In this step, the server receives weather data in JSON format via an API call, analyzes it, and stores it.
[1334] Step 4:
[1335] The server retrieves past spending data from an external software interface. This data reflects the user's past spending patterns and stores it in an instance of the LifestylePlanner class. Again, the server receives the JSON format data through an API call, which is then parsed and stored for use in budget management.
[1336] Step 5:
[1337] The server calls the generate_plan method to generate a daily life plan based on weather data and budget information. The plan includes the weather for each day, budget allocation, recommended activities, and meal options.
[1338] Step 6:
[1339] The server uses an emotion engine to monitor the user's emotional state in real time. It analyzes data obtained from the smartphone's camera and microphone to determine the user's emotional state. The emotion engine uses, for example, Microsoft Face API or IBM Watson Emotion Analysis.
[1340] Step 7:
[1341] The server dynamically optimizes the instance of the LifestylePlanner class based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it adds relaxing activities and food delivery plans. Specifically, it dynamically changes the plan by offering spa and relaxation menus to stressed users.
[1342] Step 8:
[1343] The server sends the generated life plan and food delivery plan to the user's device, where the user can check the optimized plan on their smartphone and take necessary actions (e.g., order food delivery).
[1344] This series of processes allows users to always enjoy the most optimal life plan, and in particular, by suggesting food delivery plans that correspond to their emotional state, user satisfaction is improved.
[1345] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1346] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1347] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1348] [Fourth embodiment]
[1349] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1350] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1351] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1352] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1353] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1354] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1355] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1356] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1357] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1358] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1359] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1360] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1361] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1362] The present invention is a system for generating a lifestyle plan tailored to a user's tastes and preferences within a limited budget. The purpose of this system is to present the optimal plan for the user and improve their quality of life. Specific embodiments of the system are described below.
[1363] Basic flow
[1364] 1. First, the user inputs their budget, remaining days, preferences, and location information. This information is stored in the system's database, and a plan is generated based on it.
[1365] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[1366] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes the weather forecast for the specified location based on the user's location information.
[1367] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used as a reference for planning the current budget.
[1368] 5. The device executes the generate_plan method to generate a life plan for the required number of days. This plan includes the following elements:
[1369] Weather data for each day
[1370] Daily budget allocation
[1371] Recommended activities and dietary choices
[1372] 6. The device uses the recommend_activities method to list recommended activities based on budget and weather, for example, outdoor activities on sunny days and indoor activities on rainy days.
[1373] 7. The server formats the data to display the generated life plan and provides it to the user. This information is used by the user to review the plan and make any necessary reservations or preparations.
[1374] Specific examples
[1375] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan:
[1376] 1. First day (sunny):
[1377] Plan: It's a sunny day, so visit the park and relax, then have dinner at an Italian restaurant.
[1378] Budget: Free to visit the park, allocate 3000 yen for dinner.
[1379] 2. Day 2 (Cloudy):
[1380] Plan: Suggest going to the movies.
[1381] Budget: Allocate 1500 yen to see a movie.
[1382] 3. Day 3 (Rain):
[1383] Plan: Set aside time for reading as an indoor activity, and have dinner at an Italian restaurant.
[1384] Budget: Reading is free, 3000 yen allocated for dinner.
[1385] This flow allows users to enjoy life without compromising their tastes and preferences, and stay within their budget. The system takes into account past spending data and weather information to provide realistic plans.
[1386] The processing flow will be explained below.
[1387] Step 1:
[1388] The user inputs the budget, remaining days, preference information, and location information into the terminal.
[1389] As a specific example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[1390] Step 2:
[1391] The device generates an instance of the LifestylePlanner class based on the input information.
[1392] As a concrete example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[1393] Step 3:
[1394] The device calls the fetch_weather method to retrieve weather forecast data from an external API.
[1395] As a concrete example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (e.g., Tokyo).
[1396] Step 4:
[1397] The terminal calls the fetch_past_expenses method to retrieve past expense data from an external API.
[1398] As a concrete example, the terminal executes past_expenses = planner.fetch_past_expenses() to obtain the user's past spending patterns.
[1399] Step 5:
[1400] The device executes the generate_plan method to generate a life plan for the required number of days.
[1401] For example, the device runs lifestyle_plan = planner.generate_plan() to generate a plan taking into account weather data and budget for each day.
[1402] Step 6:
[1403] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[1404] As a specific example, we suggest "visiting the park" on sunny days and "indoor activities" on rainy days.
[1405] Step 7:
[1406] The server formats the data to display the generated life plan and provides it to the user.
[1407] As a specific example, the server converts data into HTML or JSON format and sends it to the terminal.
[1408] Step 8:
[1409] The user checks the displayed life plan and makes the necessary reservations and preparations.
[1410] For example, we make restaurant reservations, buy movie tickets, and enjoy our daily lives based on plans.
[1411] Example 1
[1412] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1413] The problem that this invention aims to solve is to automatically generate a lifestyle plan that takes into account a user's hobbies and preferences within a limited budget, and allows the user to select optimal activities and meals based on that plan. Conventional plan generation systems have difficulty providing realistic and satisfying plans because they are unable to fully reflect the user's individual needs, real-time weather information, or past expenditure data. The purpose of this invention is to solve these problems and improve the user's quality of life by presenting a plan that is appropriate for the user.
[1414] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1415] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a lifestyle plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expense history data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expense history data, means for displaying the generated lifestyle plan to the user, and means for suggesting outdoor and indoor activities based on the budget and weather data. This allows the user to obtain a realistic and effective lifestyle plan that reflects their own hobbies and preferences.
[1416] "User" refers to an individual who uses this system to generate a life plan and acts based on that plan.
[1417] "Budget" refers to the total amount of financial constraints that a user can use to carry out their lifestyle plan.
[1418] "Number of days remaining" refers to the number of days remaining in the period for which the user is planning using this system.
[1419] "Preference information" refers to information about specific meals and activities that a user prefers.
[1420] "Location information" refers to data that indicates a user's current geographic location.
[1421] A "life plan" refers to a plan that includes suggestions for activities and meals to be done within a budget, generated based on the user's budget, preference information, weather forecast data, and past spending data.
[1422] "Weather Forecast Data" refers to information about future weather conditions based on a specific location, obtained through an external API.
[1423] "Historical Expense Data" means data regarding a User's historical spending history obtained through an External API.
[1424] "Recommended activities" refer to activities selected by the system taking into account the user's budget, preference information, and weather forecast data.
[1425] "External API" refers to an application program interface used to obtain data from other systems or services.
[1426] "Outdoor activities" refers to activities that are recommended to be carried out outdoors.
[1427] "Indoor activities" refer to activities that are recommended to be performed indoors.
[1428] The present invention relates to a system for automatically generating an optimal lifestyle plan for a user based on the user's budget, remaining days, preference information, and location information. An embodiment for implementing this system will be described below.
[1429] System configuration
[1430] This system consists of a user input device, a data processing terminal, a database, a means of communication with external APIs, and a display device for displaying results. Examples of specific software and hardware used include:
[1431] Input devices: PC, smartphone, tablet, etc.
[1432] Data processing terminal: Server
[1433] Database: Relational Database Management System (RDBMS)
[1434] External APIs: Weather APIs (e.g., OpenWeatherMap API), financial data APIs (e.g., Plaid API)
[1435] Display device: Web browser
[1436] User input of information
[1437] Users input their budget, remaining days, preferences, and location information into the system using an input device. This information is sent to the server and stored in a database. This information becomes the basis for generating a lifestyle plan.
[1438] Data Acquisition
[1439] The server uses the data processing terminal to obtain the following data:
[1440] Weather forecast data: Uses an external API to obtain weather forecast data based on the user's location.
[1441] Historical Expense Data: Utilize external financial data APIs to obtain users' historical spending data.
[1442] Life plan generation
[1443] The server creates an instance of the LifestylePlanner class based on the information it has obtained and creates a lifestyle plan that includes the following elements:
[1444] Weather data for each day
[1445] Daily budget allocation
[1446] Recommended activities and dietary choices
[1447] Activity suggestions
[1448] The server uses the recommend_activities method during the life plan generation process to list recommended activities taking into account budget and weather data. For example, outdoor activities are suggested on sunny days, and indoor activities on rainy days.
[1449] View Plans
[1450] The generated life plan is formatted by the server and sent back from the database to the user's input device. The user can then check the life plan through their own device and make any necessary reservations or preparations.
[1451] Specific examples
[1452] For example, if a user inputs a budget of 30,000 yen, five days remaining, preference information of "I like Italian food," and location information of "I live in Tokyo," the server will generate the following lifestyle plan.
[1453] Day 1 (Sunny): Visit a park and relax. Then have dinner at an Italian restaurant. Budget 3000 yen for dinner.
[1454] Day 2 (Cloudy): Suggest going to the movies. Allocate 1500 yen to the movie.
[1455] Day 3 (Rain): Set aside time to enjoy reading as an indoor activity. Also, have dinner at an Italian restaurant. Allocate a budget of 3,000 yen for dinner.
[1456] Prompt Sentence Examples
[1457] An example of a prompt is as follows:
[1458] "If a user inputs a budget of 30,000 yen, 5 days remaining, a preference for Italian food, and a residence in Tokyo, what kind of life plan will be generated?"
[1459] This system allows users to obtain realistic lifestyle plans that fully reflect their own tastes and preferences, enabling them to live an efficient and satisfying life within a limited budget.
[1460] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1461] Step 1:
[1462] The user inputs their budget, remaining days, preferences, and location information, which is the initial input to the system.
[1463] Input: Budget, remaining days, preferences, location
[1464] Specific operation: The user uses a device to input information into a web form. For example, the user inputs a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[1465] Output: User information stored in the database
[1466] Step 2:
[1467] The terminal receives the user's input information and generates an instance of the LifestylePlanner class based on the information stored in the database.
[1468] Input: User information
[1469] Specific operation: The device calls the constructor of the LifestylePlanner class and sets the user information as an instance variable.
[1470] Output: An instance of the LifestylePlanner class
[1471] Step 3:
[1472] The device uses the fetch_weather method to retrieve location-based weather forecast data from an external API.
[1473] Input:Location
[1474] Specific operation: The device makes an API request and sends the specified location information (e.g., "Tokyo") to the external API.
[1475] Output: Weather forecast data (JSON format)
[1476] Step 4:
[1477] The terminal uses the fetch_past_expenses method to retrieve past expense data from an external finance API.
[1478] Input: User's identity
[1479] Specific operation: The device makes an API request and sends the user's identification information. The external API responds with spending data for the past three months in JSON format.
[1480] Output: Historical spending data (JSON format)
[1481] Step 5:
[1482] The device executes the generate_plan method to generate a lifestyle plan for the required number of days.
[1483] Input: Weather forecast data, past spending data, user budget, preferences, remaining days
[1484] How it works: The device uses this data to run algorithms and calculate daily activities and budget allocations. For example, on sunny days, it suggests relaxing in the park as an outdoor activity, and on rainy days, it suggests reading or watching a movie as an indoor activity.
[1485] Output: Life plan (includes weather data, budget allocation, and activity suggestions)
[1486] Step 6:
[1487] The device uses the recommend_activities method to list recommended activities that take budget and weather into account.
[1488] Input: Generated life plan
[1489] How it works: The device uses weather and budget data to create a list of recommended activities, such as playing tennis on a sunny day and reading in the library on a rainy day.
[1490] Output: List of recommended activities
[1491] Step 7:
[1492] The server formats the generated life plan and sends the data to the terminal for display to the user.
[1493] Input: Life plan and recommended activity list
[1494] Specific operation: The server converts the generated plan into HTML format and returns it to the user's device. The user can view the formatted plan through a browser, add it to their schedule, or make a reservation.
[1495] Output: A life plan displayed on the user's screen
[1496] (Application example 1)
[1497] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1498] In today's busy lifestyles, many people find it difficult to plan their meals and activities within budget and time constraints. It is particularly difficult to efficiently create a life plan while taking into account daily weather and budgets. Furthermore, there is a lack of systems that suggest meals and activities that suit users' preferences. Therefore, there is a need for real-time planning that takes into account users' preferences, budgets, and weather information.
[1499] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1500] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external API, means for acquiring past expenditure data from the external API, means for selecting recommended activities taking into account the weather forecast data and past expenditure data, means for displaying the generated life plan to the user, and means for suggesting optimal food and drink options based on the user's preference information and budget. This enables users to efficiently plan optimal meals and activities that fit their budget and preferences, taking into account daily weather conditions.
[1501] A "user" is a person who inputs a budget, preference information, remaining days, and location information and uses the presented life plan.
[1502] A "budget" is the amount of money that a user plans to spend within their life plan.
[1503] "Days remaining" is the number of days remaining in the period set for the user to execute the plan.
[1504] "Preference information" is information relating to the types of food and activities that the user prefers.
[1505] "Location information" is information that indicates the user's current location or the location that serves as the base point for the user's activity.
[1506] A "life plan" is a detailed schedule for planning the user's life, generated based on the user's budget, preference information, weather forecast data, and past expenditure data.
[1507] "Weather forecast data" is weather forecast information based on the user's location information.
[1508] An "external API" is an interface for obtaining data from other systems or services.
[1509] "Past expenditure data" is information that indicates how a user has spent their budget in the past.
[1510] "Recommended activities" are activities that are recommended for the user to perform, selected based on the user's preference information, budget, and weather forecast data.
[1511] "Food and Drink Options" are the available food and drink options presented based on the user's preference information and budget.
[1512] The present invention relates to a system that generates an optimal life plan based on a user's budget, remaining days, preference information, and location information, using weather forecasts and past expenditure data. This system is designed to improve the user's quality of life. Specific embodiments of the system are described below.
[1513] Basic configuration
[1514] The server has the following means:
[1515] 1. User information input method: The user inputs the budget, remaining days, preferences, and location information via the terminal. This information is sent to the server and stored in the database.
[1516] 2. Life plan generation means: The server generates a life plan based on the information entered above. The LifestylePlanner class plays a central role in generating a life plan, and an instance of this class is generated.
[1517] 3. Weather forecast data acquisition method: The server uses an external weather forecast API to acquire weather forecast data based on the user's location information.
[1518] 4. Method for obtaining past expenditure data: The server obtains past expenditure data through an external API and reflects this in the current budget plan.
[1519] 5. Recommended activity selection method: The server uses weather forecast data and past expenditure data to generate a list of recommended activities and meal options, including outdoor activities suitable for sunny days and indoor activities suitable for rainy days.
[1520] 6. Data display means: The generated life plan is formatted and provided to the user. This information is used by the user to confirm the plan and make any necessary reservations or preparations.
[1521] Program processing explanation
[1522] The server is built using Python or other programming languages and utilizes various APIs, including the Python Requests library (used for API access). The hardware can be any standard server or cloud service.
[1523] Specific example of the procedure
[1524] As a specific example, if a user inputs information that they live in Tokyo, have a budget of 30,000 yen, have 7 days left, and like Italian food, the server will process it as follows:
[1525] 1. Enter your user information:
[1526] The user uses a smartphone to input the budget, remaining days, preference information (e.g., Italian food, Japanese food), and location information.
[1527] 2. Get weather data:
[1528] Get weather data for the next 7 days from the weather forecast API using Tokyo coordinates.
[1529] 3. Obtain historical spending data:
[1530] For example, obtain past food expenditure data from an external API.
[1531] 4. Generate the plan:
[1532] A plan is generated according to the logic of life plan generation. For example, it suggests curry rice on a rainy day and sushi on a sunny day.
[1533] Prompt Sentence Examples
[1534] An example of a prompt to be input to the generative AI model is as follows:
[1535] User information: Budget 30,000 yen, 7 days left, loves Italian and Japanese food, lives in Tokyo
[1536] 1. Make a plan.
[1537] 2. Provide a recommended food delivery menu for each day.
[1538] 3. Vary your menu suggestions depending on the weather.
[1539] 4. Please consider your budget when making your proposal.
[1540] This allows users to efficiently find the best plan that suits their budget and preferences, taking into account daily weather information.This system makes optimal suggestions for each individual user, thereby improving the quality of their lifestyle.
[1541] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1542] Step 1:
[1543] Input and user information collection
[1544] The user uses a device such as a smartphone to input their budget, remaining days, preferences (e.g., favorite type of food), and location information. This information is sent to the server and stored in a database. Specifically, the user enters information into the application form and presses the "Submit" button, which stores the information in the database on the server.
[1545] Input: User's budget, remaining days, preferences, location
[1546] Output: User information stored in the database
[1547] Step 2:
[1548] Obtaining weather forecast data
[1549] The server sends a request to an external weather forecast API based on the user's location information to obtain future weather forecast data. The API is accessed using the Python Requests library. Specifically, the server sends a GET request to the API endpoint and receives the weather data in JSON format.
[1550] Input: User's location
[1551] Output: Retrieved weather forecast data (JSON format)
[1552] Step 3:
[1553] Obtaining historical spending data
[1554] The server retrieves the user's past spending data via an external API or database. Again, it uses the Requests library to access the API and retrieve the past spending history. Specifically, it sends a request including the user ID and other authentication information and receives the past spending information.
[1555] Input: User ID or authentication information stored in the system
[1556] Output: Obtained historical expenditure data
[1557] Step 4:
[1558] Creating a life plan
[1559] The server generates an instance of the LifestylePlanner class based on the weather forecast data, past expenditure data, and the user's preferences and budget, and creates a life plan. This plan includes daily budget allocations, recommended activities, and meal options. Specifically, an algorithm performs calculations based on this data and generates the plan.
[1560] Input: User preferences, budget, weather forecast data, past spending data
[1561] Output: Generated life plan
[1562] Step 5:
[1563] Recommended Activities and Dietary Selections
[1564] In the process of generating a life plan, the server determines recommended activities and meal options by taking into account weather forecast data and budget. Specifically, it selects outdoor activities on sunny days and indoor activities on rainy days, and also selects meals. This selection also includes budget allocation.
[1565] Input: Generated life plan, weather forecast data, budget
[1566] Output: Recommended activities and meal options
[1567] Step 6:
[1568] Formatting and displaying data
[1569] The server formats the generated life plan and recommended activities and sends them to the device. The user can check this on a smartphone or other device and order or reserve delivery as needed. The formatted data is then formatted so that it can be displayed in an intuitive UI. Specifically, the data is formatted into HTML or JSON format and sent to the device.
[1570] Input: Life plan and recommended activities before plastic surgery
[1571] Output: Formatted life plan data, displayed on the device
[1572] In this way, processing is performed based on specific input at each step, and appropriate output is obtained, thereby providing the user with an optimal life plan.
[1573] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1574] The present invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget. In addition to the features of conventional life plan generation systems, the system is characterized by recognizing the user's emotional state and dynamically optimizing the plan based on that. Specific embodiments of the system are described below.
[1575] Basic flow
[1576] 1. First, the user inputs their budget, remaining days, preference information, and location information into the device. For example, the budget is 30,000 yen, the remaining days are 5 days, preference information is "I like Italian food" and "My hobby is tennis," and location information is "I live in Tokyo."
[1577] 2. The terminal generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[1578] 3. The device uses the fetch_weather method to retrieve weather forecast data from an external API. This data includes a five-day weather forecast for Tokyo based on the user's location.
[1579] 4. The device retrieves past expenditure data from an external API using the fetch_past_expenses method. This data reflects the user's past spending patterns and can be used for budget planning.
[1580] 5. The device runs the generate_plan method to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1581] 6. The device uses the recommend_activities method to list recommended activities taking into account budget and weather, for example, "visit the park" on a sunny day and "indoor activities" on a rainy day.
[1582] 7. The device monitors the user's emotional state in real time using an emotion engine that recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1583] 8. The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1584] 9. The server formats the data to display the generated life plan and provides it to the user, allowing the user to review the plan and make any necessary reservations or preparations.
[1585] Specific examples
[1586] For example, suppose a user has a budget of 30,000 yen, 5 days left, preferences such as "I like Italian food," "My hobby is tennis," and location information such as "I live in Tokyo." The system generates the following life plan:
[1587] 1. First day (sunny):
[1588] Plan: Visit the park and relax, then have dinner at an Italian restaurant.
[1589] Budget: Visiting the park is free, but allocate 3000 yen for dinner.
[1590] 2. Day 2 (Cloudy):
[1591] Plan: Suggest a movie night.
[1592] Budget: Allocate 1,500 yen to see a movie.
[1593] 3. Day 3 (Rain):
[1594] The plan: Set aside some time for some indoor reading, followed by dinner at an Italian restaurant.
[1595] Budget: Reading is free, but allocate 3,000 yen for dinner.
[1596] Furthermore, if the user feels stressed on their first day, the emotion engine will recognize this and suggest additional relaxing activities, such as a relaxation session at a spa, and provide the best options based on their budget.
[1597] The advantage of this system is that it can dynamically optimize plans taking into account the user's emotional state, allowing users to always enjoy the best possible lifestyle without compromising their tastes and preferences and within their budget.
[1598] The processing flow will be explained below.
[1599] Step 1:
[1600] The user inputs the budget, remaining days, preference information, and location information into the terminal. For example, the budget is 30,000 yen, the remaining days are 5 days, the preference information includes "I like Italian food" and "My hobby is tennis," and the location information is "I live in Tokyo."
[1601] Step 2:
[1602] The device creates an instance of the LifestylePlanner class based on the input information. For example, the device creates an instance as follows: planner = LifestylePlanner(budget=30000, days_remaining=5, user_preferences=user_preferences, location=location).
[1603] Step 3:
[1604] The device calls the fetch_weather method to retrieve weather forecast data from an external API. For example, the device executes weather_data = planner.fetch_weather() to retrieve weather data for the specified location (Tokyo).
[1605] Step 4:
[1606] The terminal calls the fetch_past_expenses method to retrieve past expenditure data from an external API. For example, the terminal executes past_expenses = planner.fetch_past_expenses() to retrieve the user's past spending patterns.
[1607] Step 5:
[1608] The device executes the generate_plan method to generate a lifestyle plan for the required number of days. For example, the device executes lifestyle_plan = planner.generate_plan() to generate a plan taking into account the weather data and budget for each day.
[1609] Step 6:
[1610] The device uses the recommend_activities method to list recommended activities taking into account budget and weather. For example, it might suggest "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1611] Step 7:
[1612] The device uses an emotion engine to monitor the user's emotional state in real time, specifically by analyzing the user's facial expressions, voice tone, and input data.
[1613] Step 8:
[1614] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1615] Step 9:
[1616] The server formats the data to display the generated life plan and provides it to the user. For example, the server converts the data into HTML or JSON format and sends it to the terminal.
[1617] Step 10:
[1618] The user checks the displayed life plan, makes necessary reservations and preparations, for example, makes restaurant reservations and buys movie tickets, and enjoys daily life based on the plan.
[1619] Example 2
[1620] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1621] While conventional life plan generation systems generate life plans based on a user's budget and preferences, they have the problem of being unable to dynamically modify the plan to take into account the user's emotional state. As a result, users often feel stressed or are unable to adapt to unexpected situations. Furthermore, they are unable to provide optimal activity and meal options that fully take into account weather and past spending patterns.
[1622] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1623] In this invention, the server includes means for inputting a user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external information providing service, means for acquiring past expenditure data from the external information providing service, means for selecting recommended activities taking into account the weather forecast data and the past expenditure data, means for monitoring the user's emotional state, means for dynamically changing the life plan based on the emotional state, and means for displaying the generated life plan to the user. This makes it possible to dynamically generate and provide an optimal life plan taking into account the user's emotional state in real time.
[1624] A "budget" is the amount of money that a user can allocate to carrying out a life plan.
[1625] "Number of remaining days" refers to the number of days indicating the period of the life plan specified by the user.
[1626] "Preference information" refers to information that reflects a user's preferences and interests.
[1627] "Location information" refers to geographical information that indicates the user's current location and range of movement.
[1628] "Generating a life plan" means creating a plan of activities and events related to the user's life based on the input information.
[1629] "Weather forecast data" means information regarding future weather conditions in a specified area.
[1630] "External information providing services" refer to external systems or services that provide information such as weather forecast data or expenditure data.
[1631] "Past expenditure data" refers to historical data relating to expenditures made by a user in the past.
[1632] "Selecting a recommended activity" means selecting an appropriate activity based on user information and environmental data.
[1633] "Monitoring emotional state" means monitoring and analyzing the user's emotions in real time.
[1634] "Dynamically changing a life plan" means updating an already created life plan based on real-time data such as the user's emotional state.
[1635] "Displaying to the user" means providing the generated life plan to the user through a visual interface.
[1636] This invention is a system that generates a life plan tailored to a user's hobbies and preferences within a limited budget, and dynamically optimizes the plan by recognizing the user's emotional state in real time.In addition to the features of conventional life plan generation systems, this system has the feature of monitoring the user's emotional state and changing the plan according to the situation.
[1637] System configuration
[1638] This system is mainly composed of the following hardware and software:
[1639] Terminal (device on which the user inputs information, e.g. smartphone, tablet, PC)
[1640] Server (the central system that generates plans and processes data)
[1641] External information provision services (API services that provide weather forecast data and past expenditure data)
[1642] Emotion engine (software that analyzes the user's emotional state in real time)
[1643] Data Entry and Processing
[1644] First, the user uses a terminal to input their budget, remaining days, preferences, and location information into the system. For example, the user might input a budget of 30,000 yen, five days remaining, preferences such as "I like Italian food" and "Tennis is my hobby," and location information such as "I live in Tokyo."
[1645] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan that takes into account the user's budget and preferences.
[1646] Obtaining weather forecast data and historical spending data
[1647] The device uses the fetch_weather method to obtain weather forecast data from an external information service, thereby obtaining five-day weather forecast data for the user's current location (Tokyo).
[1648] The device uses the fetch_past_expenses method to retrieve past expense data from an external information provider, which is used to aid in budget planning.
[1649] Generation and dynamic modification of life plans
[1650] The device runs the generate_plan method based on various data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1651] Additionally, the device can use the recommend_activities method to list recommended activities taking into account budget and weather, for example, suggesting "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1652] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1653] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it will suggest relaxing activities.
[1654] Plan Offerings
[1655] The server formats the data to display the generated life plan and provides it to the user, allowing the user to check the plan and make any necessary reservations or preparations.
[1656] Specific examples
[1657] For example, if you enter a budget of 30,000 yen, five days remaining, preference information such as "I like Italian food" and "My hobby is tennis," and location information such as "I live in Tokyo," the system will generate the following life plan.
[1658] 1. First day (sunny):
[1659] Plan: Visit the park and relax, then dinner at an Italian restaurant
[1660] Budget: Free to visit the park, 3000 yen for dinner
[1661] Emotion: If the user feels stressed, suggest an additional spa relaxation session.
[1662] 2. Day 2 (Cloudy):
[1663] Plan: Watch a movie
[1664] Budget: 1500 yen to see a movie
[1665] 3. Day 3 (Rain):
[1666] Plan: Indoor reading, followed by dinner at an Italian restaurant
[1667] Budget: Free reading, 3000 yen for dinner
[1668] Example prompts for generative AI models
[1669] "Create a 5-day travel plan for Tokyo with a budget of ¥30,000. The user likes Italian food and plays tennis. Optimize the plan by taking into account the weather forecast and the user's emotional state."
[1670] The advantage of this system is that it dynamically optimizes plans taking into account the user's emotional state, allowing users to enjoy an optimal lifestyle without compromising their hobbies and preferences, all while staying within their budget.
[1671] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1672] Step 1:
[1673] The user inputs their budget, remaining days, preferences, and location information into the device. The input data is temporarily stored in the device's database. For example, a user inputs the following data: a budget of 30,000 yen, five days remaining, "I like Italian food," "My hobby is tennis," and "I live in Tokyo."
[1674] Specific behavior:
[1675] The user enters information into the input form displayed on the device's screen UI and presses the send button.
[1676] Input: Budget, remaining days, preferences, location.
[1677] Output: User information stored in the database on the device.
[1678] Step 2:
[1679] The device generates an instance of the LifestylePlanner class based on the input information. This class plays a central role in creating a life plan based on the user's information.
[1680] Specific behavior:
[1681] The device creates an instance of the LifestylePlanner class using the saved user information as parameters.
[1682] Input: User information.
[1683] Output: An instance of the LifestylePlanner class.
[1684] Step 3:
[1685] The device uses the fetch_weather method to retrieve weather forecast data from an external information service. The weather forecast data is retrieved based on location information and includes forecasts for the specified number of days.
[1686] Specific behavior:
[1687] The device uses the location information to send a request to the weather forecast API.
[1688] Input: Location information (Tokyo).
[1689] Output: Five-day weather forecast data obtained from an external information provider.
[1690] Step 4:
[1691] The terminal uses the fetch_past_expenses method to retrieve past expenditure data from an external information service. The expenditure data reflects the user's past consumption patterns.
[1692] Specific behavior:
[1693] The device sends a request to the expenditure data API using the user ID.
[1694] Input: User ID.
[1695] Output: Historical spending data obtained from external information providers.
[1696] Step 5:
[1697] The device runs the generate_plan method based on the retrieved weather data and past spending data to generate a life plan for the required number of days, including weather data for each day, budget allocation, and recommended activities and meal options.
[1698] Specific behavior:
[1699] The terminal integrates weather data, expenditure data, and user information to generate a life plan.
[1700] Inputs: Weather data, historical spending data, user information.
[1701] Output: A detailed life plan by day.
[1702] Step 6:
[1703] The device uses the recommend_activities method to list recommended activities that take budget and weather into account, for example, "visiting the park" on a sunny day and "indoor activities" on a rainy day.
[1704] Specific behavior:
[1705] The device analyzes the generated life plan and recommends activities based on the day's weather and budget.
[1706] Input: A detailed daily life plan (including weather and budget).
[1707] Output: A list of recommended activities.
[1708] Step 7:
[1709] The device monitors the user's emotional state in real time using an emotion engine, which recognizes emotions by analyzing the user's facial expressions, voice tone, input data, etc.
[1710] Specific behavior:
[1711] The device collects and analyzes emotional data through the user's camera and microphone.
[1712] Input: User's facial expression data, voice data.
[1713] Output: Parsed emotional state data.
[1714] Step 8:
[1715] The device dynamically changes the life plan based on the user's emotional state based on the data obtained from the emotion engine. If the user is feeling stressed, it will suggest relaxing activities.
[1716] Specific behavior:
[1717] The device reassess the life plan based on the emotional state data and makes any necessary changes.
[1718] Input: Emotional state data.
[1719] Output: Updated life plan.
[1720] Step 9:
[1721] The server formats the data to display the generated life plan and provides it to the user, who can then check the plan and make any necessary reservations or preparations.
[1722] Specific behavior:
[1723] The server converts the life plan data into HTML or application UI format and sends it to the device.
[1724] Input: Life plan data.
[1725] Output: The post-reconstruction life plan displayed to the user.
[1726] (Application example 2)
[1727] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1728] Conventional life plan generation systems provide plans based on basic data such as the user's budget and preferences, but lack dynamic optimization that takes into account the user's instantly fluctuating emotional state. As a result, they are unable to suggest activities and meals that fit the user's real-time emotions and state, resulting in a lack of an improved user experience. Furthermore, they lack specific suggestions for things like food delivery, leaving users with a lack of means to alleviate stress and discomfort in real time.
[1729] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for inputting the user's budget, remaining days, preference information, and location information, means for generating a life plan based on the input information, means for acquiring weather forecast data from an external software interface, means for acquiring past expenditure data from the external software interface, means for monitoring the user's emotional state in real time using an emotion engine, means for dynamically optimizing the life plan based on data acquired from the emotion engine, and means for displaying the generated life plan to the user. This makes it possible to respond to the user's emotional state at any time, propose an optimal food delivery plan, and improve user satisfaction and convenience.
[1730] "User" means an individual or organization that uses this system.
[1731] A "budget" indicates a range of amounts that a user can spend within a specific period of time.
[1732] "Number of days remaining" is the number of days remaining until the user executes the plan.
[1733] "Preference information" is data information that indicates the user's preferences, hobbies, and interests.
[1734] "Location information" is data that indicates the geographical location of the user.
[1735] A "life plan" is a lifestyle plan created based on information input by the user.
[1736] A "means" is a method or apparatus provided for performing a particular function or action.
[1737] "Weather forecast data" is forecast data of weather information for a specific time period and location.
[1738] An "external software interface" is an interface for connecting to external services or databases.
[1739] "Past expenditure data" refers to data relating to the user's past consumption behavior and expenditure details.
[1740] An "emotion engine" is software or hardware that recognizes emotions by analyzing a user's facial expressions, tone of voice, input data, etc.
[1741] "Emotional state" refers to the emotions and psychological state that a user is feeling in real time.
[1742] "Dynamic optimization" means adjusting and optimizing plans and proposals in real time in response to changing situations and conditions.
[1743] A "food delivery plan" is an optimal meal delivery plan proposed based on the user's emotional state and preference information.
[1744] The present invention is a system for generating an optimal life plan or food delivery plan based on a user's budget, remaining days, preference information, and emotional state. Specific embodiments are described below.
[1745] Overall system configuration
[1746] The system consists of a user terminal, a server, and an external software interface. Users input the necessary information using their smartphones, and the server processes the data in the backend and generates a plan.
[1747] The main means of the system
[1748] 1. Information input method
[1749] The user inputs their budget, remaining days, preferences, and location information into their smartphone. Based on this information, the server creates an instance of the LifestylePlanner class.
[1750] 2. Data Acquisition Method
[1751] The server uses an external software interface (API) to retrieve weather forecast data and historical spending data. The weather forecast data is location-based, e.g., a five-day weather forecast for Tokyo. The historical spending data reflects the user's spending patterns and is useful for budget management.
[1752] 3. Plan Generation Method
[1753] Based on the retrieved data, the server calls the generate_plan method to generate a life plan, which includes the weather for each day, budget allocation, and recommended activities and meal options.
[1754] 4. Means of monitoring emotional state
[1755] The server uses an emotion engine to analyze the user's facial expressions, voice tone, and input data to monitor their emotional state in real time. This emotion engine utilizes Microsoft Face API and IBM Watson Emotion Analysis.
[1756] 5. Dynamic plan optimization
[1757] The server dynamically optimizes the life plan based on the user's emotional state based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it suggests activities and meals that will help them relax.
[1758] 6. Results display means
[1759] The generated life plan and food delivery plan are displayed on the user's device, allowing the user to see suggestions for optimal activities and meals.
[1760] Usage example
[1761] As a specific example, let's say a user has a budget of 30,000 yen, 5 days left, "I like Italian food" and "My hobby is tennis" as their preference information, and "I live in Tokyo" as their location information. The system will generate the following plan:
[1762] First day (sunny):
[1763] Activities: Visit to the park and relax, followed by dinner at an Italian restaurant.
[1764] Budget: Free to visit the park, 3000 yen for dinner.
[1765] If the emotional state is stressed, we suggest an additional relaxation session at a spa and provide options based on budget.
[1766] An example of a prompt is as follows:
[1767] "Budget: 30,000 yen, Time remaining: 5 days, Preferences: Italian cuisine, Location: Tokyo, Best meal suggestions for when you're stressed."
[1768] This system allows users to always enjoy the optimal life plan, and in particular, food delivery plans can be suggested based on real-time emotional state.
[1769] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1770] Step 1:
[1771] The user inputs their budget, remaining days, preferences, and location information into their smartphone, which is then sent to the system.
[1772] Step 2:
[1773] The server generates an instance of the LifestylePlanner class based on the input information. This class stores the user information and is used in subsequent plan generation processes.
[1774] Step 3:
[1775] The server retrieves weather forecast data from an external software interface. Specifically, it retrieves location-based weather data and stores it in an instance of the LifestylePlanner class. In this step, the server receives weather data in JSON format via an API call, analyzes it, and stores it.
[1776] Step 4:
[1777] The server retrieves past spending data from an external software interface. This data reflects the user's past spending patterns and stores it in an instance of the LifestylePlanner class. Again, the server receives the JSON format data through an API call, which is then parsed and stored for use in budget management.
[1778] Step 5:
[1779] The server calls the generate_plan method to generate a daily life plan based on weather data and budget information. The plan includes the weather for each day, budget allocation, recommended activities, and meal options.
[1780] Step 6:
[1781] The server uses an emotion engine to monitor the user's emotional state in real time. It analyzes data obtained from the smartphone's camera and microphone to determine the user's emotional state. The emotion engine uses, for example, Microsoft Face API or IBM Watson Emotion Analysis.
[1782] Step 7:
[1783] The server dynamically optimizes the instance of the LifestylePlanner class based on the data obtained from the emotion engine. For example, if the user is feeling stressed, it adds relaxing activities and food delivery plans. Specifically, it dynamically changes the plan by offering spa and relaxation menus to stressed users.
[1784] Step 8:
[1785] The server sends the generated life plan and food delivery plan to the user's device, where the user can check the optimized plan on their smartphone and take necessary actions (e.g., order food delivery).
[1786] This series of processes allows users to always enjoy the most optimal life plan, and in particular, by suggesting food delivery plans that correspond to their emotional state, user satisfaction is improved.
[1787] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1788] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1789] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1790] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1791] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1792] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1793] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1794] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1795] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1796] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1797] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1798] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1799] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1800] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1801] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1802] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1803] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1804] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1805] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1806] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1807] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1808] The following is further disclosed regarding the above embodiment.
[1809] (Claim 1)
[1810] a means for inputting the user's budget, remaining days, preference information, and location information;
[1811] A means for generating a life plan based on the input information;
[1812] A means of obtaining weather forecast data from an external API,
[1813] A way to retrieve historical spending data from external APIs,
[1814] a means for selecting recommended activities taking into account the weather forecast data and historical expenditure data;
[1815] The system includes a means for displaying the generated life plan to a user.
[1816] (Claim 2)
[1817] 10. The system of claim 1, further comprising means for suggesting optimal dining options to a user based on said budget, preference information and weather forecast data.
[1818] (Claim 3)
[1819] 2. The system according to claim 1, further comprising means for suggesting optimal leisure activities to the user based on the budget, preference information and weather forecast data.
[1820] "Example 1"
[1821] (Claim 1)
[1822] a means for inputting the user's budget, remaining days, preference information, and location information;
[1823] A means for generating a life plan based on the input information;
[1824] A means of obtaining weather forecast data from an external API,
[1825] A means to retrieve historical cost data from an external API;
[1826] a means for selecting recommended activities taking into account the weather forecast data and historical cost data;
[1827] means for displaying the generated lifestyle plan to a user;
[1828] A way to suggest outdoor and indoor activities based on budget and weather data
[1829] A system including:
[1830] (Claim 2)
[1831] 10. The system of claim 1, further comprising means for suggesting optimal dining options to a user based on said budget, preference information and weather forecast data.
[1832] (Claim 3)
[1833] 2. The system according to claim 1, further comprising means for suggesting optimal leisure activities to the user based on the budget, preference information and weather forecast data.
[1834] "Application Example 1"
[1835] (Claim 1)
[1836] a means for inputting the user's budget, remaining days, preference information, and location information;
[1837] A means for generating a life plan based on the input information;
[1838] A means of obtaining weather forecast data from an external API,
[1839] A way to retrieve historical spending data from external APIs,
[1840] a means for selecting recommended activities taking into account the weather forecast data and historical expenditure data;
[1841] a means for displaying the generated life plan to a user;
[1842] The system includes a means for suggesting optimal food and beverage options based on a user's preference information and budget.
[1843] (Claim 2)
[1844] 2. The system of claim 1, further comprising means for suggesting optimal meal options to the user based on the budget, preference information and weather forecast data.
[1845] (Claim 3)
[1846] 2. The system according to claim 1, further comprising means for suggesting optimal leisure activities to the user based on the budget, preference information and weather forecast data.
[1847] "Example 2: Combining Emotion Engines"
[1848] (Claim 1)
[1849] a means for inputting the user's budget, remaining days, preference information, and location information;
[1850] A means for generating a life plan based on the input information;
[1851] A means for acquiring weather forecast data from an external information providing service;
[1852] A means for obtaining past expenditure data from an external information providing service;
[1853] a means for selecting recommended activities taking into account the weather forecast data and historical expenditure data;
[1854] means for monitoring the emotional state of a user;
[1855] means for dynamically changing a life plan based on said emotional state;
[1856] The system includes a means for displaying the generated life plan to a user.
[1857] (Claim 2)
[1858] 10. The system of claim 1, further comprising means for suggesting optimal dining options to a user based on said budget, preference information and weather forecast data.
[1859] (Claim 3)
[1860] 2. The system according to claim 1, further comprising means for suggesting optimal leisure activities to the user based on the budget, preference information and weather forecast data.
[1861] "Application example 2 when combining emotion engines"
[1862] (Claim 1)
[1863] a means for inputting the user's budget, remaining days, preference information, and location information;
[1864] A means for generating a life plan based on the input information;
[1865] means for obtaining weather forecast data from an external software interface;
[1866] a means for obtaining historical spend data from an external software interface;
[1867] a means for selecting recommended activities taking into account the weather forecast data and historical expenditure data;
[1868] means for monitoring the user's emotional state in real time using an emotion engine;
[1869] A means for dynamically optimizing a life plan based on data obtained from the emotion engine;
[1870] The system includes a means for displaying the generated life plan to a user.
[1871] (Claim 2)
[1872] 10. The system of claim 1, further comprising means for suggesting optimal dining options to a user based on said budget, preference information and weather forecast data.
[1873] (Claim 3)
[1874] 10. The system of claim 1, further comprising means for generating a dynamically optimized food delivery plan according to a user's emotional state using the emotion engine. [Explanation of symbols]
[1875] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a means for inputting the user's budget, remaining days, preference information, and location information; A means for generating a life plan based on the input information; A means of obtaining weather forecast data from an external API, A way to retrieve historical spending data from external APIs, a means for selecting recommended activities taking into account the weather forecast data and historical expenditure data; The system includes a means for displaying the generated life plan to a user.
2. The system of claim 1 , further comprising means for suggesting optimal dining options to a user based on said budget, preference information and weather forecast data.
3. The system according to claim 1 , further comprising means for suggesting optimal leisure activities to the user based on the budget, preference information and weather forecast data.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A