System
The system addresses travel planning challenges by allowing users to input requirements in free words, analyze, compare, and generate personalized itineraries with tour guide information and navigation, ensuring efficient and satisfying trips.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2026-03-04
AI Technical Summary
Travelers and trip organizers face challenges in planning efficient and satisfying trips due to the time-consuming process of selecting destinations, transportation, and booking accommodations, especially for those with little travel experience.
A system that includes input means for free-word travel requirements, analysis means for natural language processing, comparison means for collating travel plans from multiple agencies, generation means for personalized itineraries, output means for detailed itineraries, tour guide provision means, and navigation means for optimal routes, using APIs and map applications.
Enables users to easily create personalized travel plans with peace of mind, ensuring efficient and satisfying trips with detailed itineraries and real-time navigation support.
Smart Images

Figure 2026035437000001_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] For travelers who are not good at planning trips, or for organizers of group trips, detailed coordination and research is required, such as selecting a destination, transportation, and booking accommodations, which takes time and effort. Furthermore, users with little travel experience have difficulty finding the best travel plan for themselves, making it difficult to have a satisfying travel experience. There is a need for a system that can solve these problems and allow anyone to easily create efficient and satisfying travel plans. [Means for solving the problem]
[0005] The present invention provides a system that includes an input means for inputting a user's travel requirements in free words, an analysis means for analyzing the input travel requirements, a comparison means for collating optimal travel plans from the databases of multiple travel agencies, a generation means for generating multiple travel plans based on the collated travel plans, a proposal means for proposing the generated travel plans to the user, an itinerary generation means for generating an original itinerary based on the confirmed travel plan, an output means for providing the itinerary to the user, a tour guide provision means for providing tour guide information tailored to the user's age and knowledge level, and a navigation means for presenting optimal routes based on the travel plan in conjunction with a map application. This allows users to easily create personalized travel plans and enjoy their trip with peace of mind. In particular, the analysis means uses natural language processing technology to analyze the input travel requirements, and the comparison means accesses the APIs of multiple travel agencies to obtain optimal travel plan data, thereby meeting diverse user needs.
[0006] "Input means" refers to a device or software interface for accepting desired travel conditions from the user in free words.
[0007] The "analysis means" is a device or software component that has the function of analyzing the travel conditions received by the input means and extracting and organizing the necessary information.
[0008] The "collation means" is a device or software module that has the function of searching and selecting the optimal travel plan from the databases of multiple travel agencies based on the travel conditions analyzed by the analysis means.
[0009] The "generation means" is a device or software system that has the function of assembling and generating multiple travel plans that are optimal for the user based on the travel plans selected by the comparison means.
[0010] The "suggestion means" is a device or software interface that presents multiple travel plans generated by the generation means to the user and supports comparison and selection.
[0011] An "itinerary generator" is a device or software component that creates a detailed, original travel itinerary based on a user-defined travel plan.
[0012] "Output Means" means a device or software interface for displaying and providing the original itinerary created by the Itinerary Creation Means to the user.
[0013] The "tour guide providing means" is a device or software module that has the function of generating and providing personalized tour guide information according to the user's age and knowledge level.
[0014] A "navigation means" is a device or software system that has the function of obtaining the optimal route based on a travel plan in conjunction with a map application and presenting it to the user. [Brief explanation of the drawings]
[0015] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8]FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0016] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0017] First, the terms used in the following description will be explained.
[0018] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0019] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0020] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0021] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0022] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0026] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0027] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0028] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0029] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0030] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0033] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0034] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0035] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0036] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0037] Program processing
[0038] 1. User input of travel conditions:
[0039] Users start the application on their smartphone and enter their desired travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words, such as "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0040] 2. Parse user input:
[0041] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and extract and identify travel conditions. Specifically, the data is broken down into categories such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days."
[0042] 3. Travel Plan Verification:
[0043] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves multiple travel plans. The retrieved plan information is filtered according to the user's conditions.
[0044] 4. Travel plan generation and suggestions:
[0045] The server generates multiple travel plans that are optimal for the user based on the filtered travel plan data. The generated multiple plans are sent to the user's device, which displays them. The user can compare these plans and select or customize the optimal plan.
[0046] 5. Create your original itinerary:
[0047] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates an original travel itinerary based on the determined plan and sends it to the device. This itinerary includes accommodation reservation information, details of tourist attractions, and a schedule.
[0048] 6. Personal tour guide provided:
[0049] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. For example, it provides detailed historical background for history buffs, while providing educational and entertaining information for children. This information is then sent to the device.
[0050] 7. Navigation Support:
[0051] The server works with the map app to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device, which then provides real-time navigation. For example, the device may display the optimal route from the user's current location to a tourist spot and provide instructions on how to use public transportation.
[0052] Specific examples
[0053] 1. The user enters the following conditions: "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0054] 2. The server analyzes the data sent from the device and organizes the conditions.
[0055] 3. The server accesses the APIs of multiple travel agencies to obtain the best cherry blossom sightseeing plans for spring in Kyoto.
[0056] 4. The server proposes multiple plans for cherry blossom sightseeing in Kyoto to the user. The user selects Plan B and adds specific tourist spots.
[0057] 5. Based on the confirmed plan, the server generates an original itinerary and provides it to the terminal.
[0058] 6. The server takes into account the user's age and interests and provides personalized tour guide information including the history and highlights of cherry blossom viewing spots.
[0059] 7. The server works with the map app to provide the optimal access method based on the travel plan and perform real-time navigation on the device.
[0060] This allows users to easily plan their trips and enjoy an efficient and satisfying trip.
[0061] The processing flow will be explained below.
[0062] Step 1:
[0063] Users launch the application on their smartphone and enter travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0064] Step 2:
[0065] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology and identifies the travel conditions. As a result of the analysis, information such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days" is extracted.
[0066] Step 3:
[0067] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves the relevant travel plan data. The retrieved plan data can be enormous in volume, as it is provided by various travel agencies.
[0068] Step 4:
[0069] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's requirements, taking into account factors such as price, accessibility, and reviews.
[0070] Step 5:
[0071] The server sends the generated travel plans to the user's device, which then displays the plans on the screen and presents them to the user in an easy-to-compare format.
[0072] Step 6:
[0073] Users can compare the multiple plans displayed and select the one they prefer. They can also customize the plan by adding or changing tourist attractions and accommodations as needed.
[0074] Step 7:
[0075] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates an original travel itinerary based on the confirmed plan.
[0076] Step 8:
[0077] The server then sends the generated original itinerary to the user's device, which includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation options.
[0078] Step 9:
[0079] The server generates tour guide information tailored to the user's age and level of knowledge, including friendly explanations and child-friendly activity information for families with children, for example.
[0080] Step 10:
[0081] The server then sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[0082] Step 11:
[0083] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[0084] Step 12:
[0085] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[0086] This process allows users to easily create the perfect travel plan for themselves, and enjoy their trip with peace of mind, knowing they have a detailed itinerary and information.
[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] With conventional travel planning systems, users had to manually compare plans across multiple travel agency websites, requiring a great deal of time and effort to find the optimal travel plan. Furthermore, they often only provided partial suggestions that only met some of the travel requirements, and lacked personalized suggestions tailored to individual users' needs. Furthermore, they lacked detailed itineraries based on travel plans or real-time navigation support. Therefore, a new system was needed that would streamline the entire travel planning process and increase user satisfaction.
[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 input means for accepting travel conditions from a user in free words, transmission means for transmitting the travel condition data accepted from the input means to the server, analysis means for analyzing the transmitted travel condition data using natural language processing technology, comparison means for retrieving an optimal travel plan from databases of multiple travel information providing systems based on the travel conditions analyzed by the analysis means, generation means for generating multiple travel plans optimal for the user from the travel plans retrieved by the comparison means, proposal means for proposing the travel plans generated by the generation means to the user, itinerary generation means for generating an original itinerary based on the travel plans selected and customized by the user, output means for providing the itinerary generated by the itinerary generation means to the user, tour guide provision means for providing personalized tour guide information according to the user's age, knowledge level, and areas of interest, and navigation means for presenting an optimal route based on the travel plan in cooperation with a map application. This solves the problems faced by conventional travel planning systems and enables users to plan and implement efficient and personalized travel plans.
[0092] "User" means an individual or organization that intends to use this system to create a travel plan.
[0093] "Travel conditions" are detailed information about a trip specified by a user, and include elements such as area, sightseeing genre, date and time, and number of people.
[0094] "Free words" are phrases or sentences that users can freely enter in text format, and are not limited to a specific form or options.
[0095] "Input means" refers to the interface through which the user inputs travel conditions, such as a smartphone application or web form.
[0096] The "transmission means" is a device or software having a function of transmitting the travel condition data received from the input means to the server.
[0097] "Server" refers to a computer system that analyzes input data, collates information, and generates and proposes travel plans.
[0098] The "analysis means" is software or hardware for analyzing the transmitted travel condition data, and is characterized by the use of natural language processing technology.
[0099] "Natural language processing technology" refers to technology that enables computers to understand and analyze human language, and includes, for example, text analysis and context understanding.
[0100] The "collation means" is a device or software that has the function of obtaining the optimal travel plan from a plurality of travel information providing systems based on the travel conditions analyzed by the analysis means.
[0101] A "travel information system" is an online service or database that provides an API to provide travel plans and tourist information.
[0102] The "generation means" is a device or software that has the function of creating multiple travel plans that are optimal for the user from among the travel plans obtained by the comparison means.
[0103] The "proposal means" is a device or software that has the function of presenting the travel plan created by the creation means to the user.
[0104] "Selecting and customizing" means that the user can choose the most suitable travel plan from the suggested plans and modify the plan as needed.
[0105] "Itinerary Generator" means a device or software capable of generating a detailed travel itinerary based on a user's selected and customized travel plan.
[0106] The "output means" is an interface or display device for providing the itinerary generated by the itinerary generation means to the user.
[0107] A "tour guide providing means" is a device or software that has the function of providing personal guide information that is useful during a trip according to the user's age, knowledge level, and areas of interest.
[0108] A "navigation means" is a device or software that has the function of presenting the optimal route based on a travel plan and linking with a map application.
[0109] A "map application" is an online service or application that provides geographic information and enables users to find the best route to their destination.
[0110] This system allows users to input their travel requirements, and the server analyzes, collates, generates, and proposes the optimal travel plan. The system is primarily composed of user devices, an analysis server, and various API-linked systems.
[0111] First, the user uses a dedicated application on a device such as a smartphone or PC to enter their travel conditions in free-word format. This input method is provided through an interface such as a text box. The travel conditions entered by the user (for example, "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days") are converted into JSON format by the device and sent to the server using the HTTPS protocol.
[0112] The server then receives the data and analyzes it using natural language processing technology (e.g., Google® NLP API). As a result of the analysis, the travel conditions are broken down into individual elements (e.g., "Kyoto," "cherry blossom viewing," "spring," "3 people," "2 nights, 3 days").
[0113] Based on the analyzed travel condition data, the server accesses multiple travel information systems (for example, databases provided through the APIs of multiple travel agencies) to obtain travel plans that match the conditions. Next, it filters the obtained plans to find the one that best suits the user's conditions, and uses a generation means to propose the results to the user as multiple optimal travel plans. These proposals are displayed on the screen of the user's device, and the user can compare them to select the best plan and customize it as needed.
[0114] Furthermore, once the user selects and customizes the optimal travel plan, that information is again sent from the device to the server. The server uses this information to generate a detailed travel itinerary. This itinerary includes accommodation reservation confirmations, details of tourist attractions, and a schedule of activities for each day. The generated itinerary information is again sent to the device and provided to the user.
[0115] In addition, the server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. This information includes, for example, the history and cultural background of the tourist spot, as well as explanations of the attractions, and is sent to the user's device for presentation.
[0116] Finally, the server connects with a map application (e.g., Google Maps) to obtain the optimal route based on the travel plan. This sends real-time navigation information, including directions on how to use public transport and the shortest route to tourist spots, to the user's device, allowing the user to enjoy sightseeing smoothly while traveling.
[0117] Specific examples
[0118] When a user enters the search criteria "Kyoto, sightseeing, spring, cherry blossoms, three people, two nights and three days," the information is sent to the server via the device. The server analyzes this information using the Google NLP API and sends requests to the APIs of multiple travel agencies to obtain the optimal cherry blossom sightseeing plan. It then filters out plans that do not match the search criteria and presents multiple travel plan options that best suit the user. If the user selects "Plan B" and requests an additional visit to "Arashiyama," the server generates a detailed itinerary based on the information. This itinerary includes accommodation reservations, details of tourist attractions, and a schedule for each day, and is sent to the device. Furthermore, if the user is interested in history, the server also provides detailed guide information about the cultural background of Arashiyama and cherry blossoms. Finally, the server works with Google Maps to calculate the optimal access method and sends that information to the device, where real-time navigation is performed.
[0119] Example prompts (for generative AI models)
[0120] "I'm planning a trip. Please suggest the best itinerary for Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days. Also, please provide a detailed itinerary based on the itinerary, as well as personalized guide information for each tourist spot."
[0121] This system allows users to plan trips efficiently and with high satisfaction, and also provides comfortable guidance to their destinations during their trip.
[0122] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0123] Step 1:
[0124] Using a dedicated application on the device, the user enters travel conditions in free-word format. This input is done via a text box or voice recognition function. For example, the user might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days." The device then converts this input data into JSON format and prepares it for transmission.
[0125] Input: Travel conditions entered by the user ("Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days")
[0126] Output: JSON formatted travel conditions data
[0127] Step 2:
[0128] The terminal securely sends the converted JSON data to the server using the HTTPS protocol, and then waits for a response from the server.
[0129] Input: JSON format travel condition data
[0130] Output: Status of sending to server
[0131] Step 3:
[0132] The server analyzes the JSON data received from the device and uses natural language processing technology (e.g., Google NLP API) to break down the travel conditions into their individual elements, such as "Kyoto," "sightseeing," "spring," "cherry blossoms," "3 people," and "3 days and 2 nights."
[0133] Input: JSON format travel condition data
[0134] Output: Each element of the analyzed travel conditions ("Kyoto", "sightseeing", "spring", "cherry blossoms", "3 people", "2 nights, 3 days")
[0135] Step 4:
[0136] Based on each element of the analyzed travel conditions, the server accesses the APIs of multiple travel information providers and retrieves relevant travel plans in real time. For example, it queries the databases of multiple travel agencies to retrieve "cherry blossom sightseeing plans suitable for spring in Kyoto."
[0137] Input: Each element of the analyzed travel conditions
[0138] Output: A dataset of the retrieved travel plans
[0139] Step 5:
[0140] The server filters the acquired travel plan data according to the user's criteria, for example, excluding plans that do not match the budget or date and time, and extracts plans that meet the criteria.
[0141] Input: The retrieved travel plan dataset
[0142] Output: A filtered list of itineraries
[0143] Step 6:
[0144] The server generates a plurality of travel plans that are particularly suitable for the user from among the filtered travel plans and transmits the results to the terminal.
[0145] Input: A filtered list of itineraries
[0146] Output: A list of generated optimal itineraries, and the status of sending them to the device
[0147] Step 7:
[0148] The device displays a list of optimal travel plans sent from the server to the user, who can then compare these plans, select the best one, and customize it, for example by adding specific attractions or changing the date and time.
[0149] Input: A list of generated optimal itineraries
[0150] Output: User selected and customized itinerary
[0151] Step 8:
[0152] The device sends the information about the user's selected and customized travel plan to the server, which is also converted into JSON format.
[0153] Input: User-selected and customized travel plans
[0154] Output: Customized itinerary data in JSON format, status of sending to server
[0155] Step 9:
[0156] The server generates a detailed travel itinerary based on the user's selected and customized travel plan information, including, for example, confirmation of accommodation reservations, details of tourist attractions, and planned activities for each day.
[0157] Input: Customized itinerary data in JSON format
[0158] Output: Generated detailed itinerary
[0159] Step 10:
[0160] The server then sends the generated detailed itinerary to the user's device, allowing the user to check the itinerary on the device.
[0161] Input: Generated detailed travel itinerary
[0162] Output: Sending status to user's device, detailed travel itinerary
[0163] Step 11:
[0164] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest, including historical and cultural background of the tourist spot, and descriptions of the attractions. This information is then sent to the device and provided to the user.
[0165] Input: User's age, knowledge level, areas of interest
[0166] Output: Generated personal tour guide information, sending status to the device
[0167] Step 12:
[0168] The server works with a map application to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device and provided as real-time navigation information on the device.
[0169] Input: Generated detailed travel itinerary, link information with map application
[0170] Output: Acquired travel route, traffic information, transmission status to the terminal
[0171] (Application example 1)
[0172] 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."
[0173] Modern travel planning and sightseeing destination exploration involve a wealth of information, but it is difficult to efficiently utilize this information and provide travel plans and tourist information tailored to user needs. In particular, there are many challenges in providing content tailored to users' interests and conditions, and in generating personalized guide information. There is a need for a system that can integrate this information and provide it in the most optimal form for users.
[0174] 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.
[0175] In this invention, the server includes an input means for accepting a user's travel conditions in free words, an analysis means for analyzing the travel conditions accepted from the input means, a comparison means for collating an optimal travel plan from databases of multiple travel agencies based on the travel conditions analyzed by the analysis means, a generation means for generating multiple travel plans optimal for the user from the travel plans collated by the comparison means, a proposal means for proposing to the user the travel plans generated by the generation means, an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user, an output means for providing to the user the itinerary generated by the itinerary generation means, a tour guide provision means for providing personalized tour guide information according to the user's age and knowledge level, a navigation means for presenting an optimal route based on the travel plan in cooperation with a map application, a video acquisition means for acquiring and recommending related video content based on the user's travel conditions, and a video recommendation means for personalizing the video content acquired by the video acquisition means and suggesting it to the user. This makes it possible to provide travel plans, itineraries, tourist information, and video content appropriate to the user's requests.
[0176] The "input means" is a means for accepting travel conditions from the user in free words.
[0177] The "analysis means" is a means for analyzing the travel conditions received from the input means.
[0178] The "collation means" is a means for collating the optimum travel plan from the databases of a plurality of travel agencies based on the travel conditions analyzed by the analysis means.
[0179] The "generation means" is a means for generating a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[0180] The "proposing means" is a means for proposing the travel plan generated by the generating means to the user.
[0181] The "itinerary generation means" is a means for generating an original itinerary based on a travel plan determined by a user.
[0182] The "output means" is a means for providing the itinerary generated by the itinerary generation means to the user.
[0183] The "tour guide providing means" is a means for providing personalized tour guide information according to the age and knowledge level of the user.
[0184] The "navigation means" is a means for presenting the optimum route based on the travel plan in cooperation with a map application.
[0185] "Video acquisition means" refers to a means of acquiring and recommending relevant video content based on the user's travel conditions.
[0186] The "video recommendation means" is a means for personalizing video content acquired by the video acquisition means and proposing it to the user.
[0187] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0188] System configuration
[0189] This system mainly consists of the following means:
[0190] 1. Input method: Accept travel conditions from users in free words. This is mainly realized by a smartphone application, and users input their desired travel conditions.
[0191] 2. Analysis means: Analyzes the travel conditions received from the input means. For analysis, natural language processing technology (such as TENSORFLOW (registered trademark) or Hugging Face's BERT model) is used to extract necessary conditions from the user's free words.
[0192] 3. Matching means: Matches the optimal travel plan from the databases of multiple travel agencies based on the travel conditions analyzed by the analysis means. Specifically, it calls the travel agency's API to obtain related travel plans.
[0193] 4. Generation means: Generates a plurality of travel plans optimal for the user from among the travel plans collated by the collation means, using an algorithm that filters optimal plans based on the user's conditions.
[0194] 5. Proposal means: The travel plans generated by the generation means are proposed to the user, who can compare them and select the most suitable plan.
[0195] 6. Itinerary Generation: Generates an original itinerary based on the user's confirmed travel plan, including accommodation reservation information, tourist attraction details, and itinerary.
[0196] 7. Output means: The itinerary generated by the itinerary generation means is provided to the user via the smartphone application screen or email.
[0197] 8. Tour guide provision means: Providing personalized tour guide information according to the user's age and knowledge level, such as information explaining the historical background and highlights of tourist spots.
[0198] 9. Navigation: Based on the travel plan, the optimal route is presented in cooperation with a map app, allowing users to receive real-time navigation.
[0199] 10. Video Acquisition Method: Acquire and recommend relevant video content based on the user's travel conditions. This process uses the YouTube (registered trademark) API and Vimeo API.
[0200] 11. Video recommendation means: Personalizes the video content acquired by the video acquisition means and suggests it to the user. Based on the user's viewing history and ratings, the accuracy of recommendations will be improved from the next time onwards.
[0201] Example of a system
[0202] For example, consider a prompt that asks a user to search for a video about visiting museums in Paris in the fall.
[0203] User input conditions: Paris, sightseeing, museum, autumn, 2 people, 5 days
[0204] Prompt statement:
[0205] "Look for tourism videos about museums in Paris. Videos that include autumn-related tourist information and museum introductions are especially preferred."
[0206] In this way, users can view the most suitable travel content as a way to prepare for their travel destination, enabling them to have a more fulfilling travel experience.
[0207] Hardware and Software Use
[0208] Hardware: smartphones, servers
[0209] Software: React Native (front-end), Node.js + Express (back-end), TensorFlow (natural language processing), YouTube API (video acquisition), Vimeo API (video acquisition)
[0210] Data processing and calculation
[0211] Free word input analysis: Using natural language processing technology, conditions are extracted from free words.
[0212] Travel plan matching: Call the travel agency's API to obtain travel plan data.
[0213] Video retrieval and recommendation: Retrieve and personalize videos and present them to the user.
[0214] The present invention allows users to easily plan their trips and enjoy efficient and satisfying trips. In addition, the present invention allows users to simultaneously enjoy entertainment content related to their trips, thereby enriching the user's overall travel experience.
[0215] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0216] Step 1:
[0217] The user enters travel conditions. The user launches the smartphone application and enters travel conditions using free words, such as "Paris, sightseeing, museum, autumn, 2 people, 5 days." The entered travel conditions are sent from the device to the server. The input data is sent in text format and parsed into JSON format.
[0218] Step 2:
[0219] The server analyzes the travel conditions. The server uses natural language processing technology (TensorFlow or Hugging Face's BERT model) to analyze the received travel conditions data. The analysis process breaks down the input data and extracts elements such as the destination, sightseeing genre, date and time, and number of people. The analyzed data is converted into a structured format (e.g., a JSON object) for use in the next step.
[0220] Step 3:
[0221] The server matches the itineraries. Based on the conditions analyzed in the previous step, the server calls the APIs of multiple travel agencies to obtain the data of related itineraries. As a result of the API call, multiple itineraries are returned. These itineraries are temporarily stored on the server side.
[0222] Step 4:
[0223] The server generates an optimal itinerary. From the obtained itineraries, a filtering algorithm is used to select multiple itineraries that best meet the user's requirements. The selected itineraries are those that best meet the user's requirements, and each plan is assigned a rating score. These itineraries are prepared to be proposed to the user in the next step.
[0224] Step 5:
[0225] The server proposes travel plans to the user. The selected travel plans are sent to the user's device and displayed on the device's application screen. The user can compare these plans and select the best one. The user's input is sent back to the server.
[0226] Step 6:
[0227] The server generates an original itinerary based on the travel plan confirmed by the user. This itinerary includes accommodation reservation information, tourist attraction details, schedules, etc. The generated itinerary is then sent to the user's device in a structured data format.
[0228] Step 7:
[0229] The server generates personalized tour guide information. Detailed tour guide information is generated based on the user's age, knowledge level, and areas of interest. For example, a user interested in history can be provided with detailed information explaining the historical background of tourist attractions. This information is sent to the user's device.
[0230] Step 8:
[0231] The server provides navigation information. The server connects with the map app to obtain the optimal route based on the travel plan. The obtained route information is updated in real time and sent to the user's device. The user's current location and the optimal route to the destination are displayed on the map.
[0232] Step 9:
[0233] The server retrieves video content. Based on the user's travel conditions, it calls the YouTube API or Vimeo API to retrieve relevant video content. For example, it retrieves tourist videos that match the conditions "Paris, museums, autumn." This video list is temporarily stored on the server.
[0234] Step 10:
[0235] The server recommends video content. An algorithm is used to personalize the retrieved video content and suggest it to the user. Based on the user's viewing history and ratings, the most relevant video is selected and sent to the user's device. This allows the user to prepare for their trip by watching videos.
[0236] Through the above processing steps, the system provides users with optimal travel plans and related entertainment content, supporting a more fulfilling travel experience.
[0237] 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.
[0238] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with that of multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0239] Program processing
[0240] 1. User input of travel conditions:
[0241] Users start the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they can enter "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[0242] 2. Parse user input:
[0243] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and identify the travel conditions. As a result of this analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted.
[0244] 3. User sentiment analysis:
[0245] The server uses the analyzed conditions and an emotion engine to analyze the user's emotion at the time of input. The emotion engine infers emotion from the input text, the user's tone of voice, facial expression, etc. As a result, emotional information such as "The user is excited" or "The user is relaxed" can be obtained.
[0246] 4. Travel Plan Verification:
[0247] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and user sentiment information to obtain data on relevant travel plans. The obtained plan data can be enormous in volume, as it is provided by various travel agencies.
[0248] 5. Travel plan generation and suggestions:
[0249] The server filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotions, taking into account price, accessibility, reviews, and emotional information.
[0250] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them to the user in an easy-to-compare format.
[0251] 6. User Plan Selection and Customization:
[0252] Users can compare the different plans displayed and select or customize the plan that best suits them, for example by changing specific attractions or accommodations.
[0253] 7. Create original itinerary:
[0254] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates a custom itinerary based on the plan. The itinerary includes information such as accommodation reservations, details of tourist attractions, dining options, and transportation options.
[0255] 8. Personal tour guide provided:
[0256] The server generates tour guide information based on the user's age, knowledge level, and emotional information, including family-friendly and elderly-friendly tourist spots, and suggests relaxing places and activities if the user is tired.
[0257] The server sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[0258] 9. Navigation Support:
[0259] Based on the confirmed travel plan, the server connects with the map app to obtain the optimal travel route, including walking routes, public transport routes, and car routes.
[0260] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[0261] Specific examples
[0262] 1. The user enters the conditions "Tokyo, sightseeing, cherry blossoms, two people, three days," and the device sends the data to the server.
[0263] 2. The server analyzes the data and extracts the following conditions: "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[0264] 3. The server uses the emotion engine to obtain emotion information that the user is excited.
[0265] 4. The server accesses the APIs of multiple travel agencies and retrieves the relevant travel plans.
[0266] 5. The server filters the analyzed travel conditions and emotion information to generate the optimal plan.
[0267] 6. The user compares the proposed plans and selects and customizes the most suitable plan.
[0268] 7. The server generates an original itinerary based on the confirmed plan and sends it to the terminal.
[0269] 8. The server generates tour guide information based on age and emotional information and sends it to the user's device.
[0270] 9. The server connects with the map app to obtain the optimal route and sends it to the device, which then provides real-time navigation.
[0271] This allows users to easily plan their trips and enjoy their trip with peace of mind, knowing they have the best travel plans and information to suit their emotions.
[0272] The processing flow will be explained below.
[0273] Step 1:
[0274] Users launch the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people) in free words, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[0275] Step 2:
[0276] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology to identify the travel conditions. This analysis extracts information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[0277] Step 3:
[0278] The server uses the analyzed conditions and the emotion engine to analyze the emotion of the user's input. The emotion engine infers the emotion from the input text, tone of voice, and facial expression. As a result, the emotion information that "the user is excited" is obtained.
[0279] Step 4:
[0280] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and emotion information to obtain travel plan data. The plan data provided by each travel agency includes a wide range of information.
[0281] Step 5:
[0282] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotional information. Filtering takes into account price, accessibility, reviews, and emotional information.
[0283] Step 6:
[0284] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them in a way that makes it easy for the user to compare them.
[0285] Step 7:
[0286] Users can compare multiple plans displayed on their device and select or customize the plan that best suits them, for example, by changing specific attractions or accommodations.
[0287] Step 8:
[0288] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates a custom itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, dining locations, and transportation options.
[0289] Step 9:
[0290] The server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it includes friendly explanations for families and information on relaxing places. This tour guide information is sent to the device.
[0291] Step 10:
[0292] The server sends the generated tour guide information to the user's terminal, allowing the user to refer to it while traveling and enjoy sightseeing.
[0293] Step 11:
[0294] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[0295] Step 12:
[0296] The server then sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation to the user.
[0297] This process allows users to easily create the optimal travel plan and enjoy their trip with peace of mind, thanks to the detailed itinerary and personalized guide information. The introduction of the emotion engine makes it possible to propose flexible plans based on the user's current emotions, resulting in a more satisfying travel experience.
[0298] Example 2
[0299] 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."
[0300] Conventional travel planning systems propose plans based on the user's travel conditions, but they are unable to consider the user's emotions or individual needs, and the proposed plans do not necessarily increase user satisfaction. Furthermore, they do not provide sufficient navigation or personal tour guides during the trip, leaving many inconveniences in trip planning and implementation.
[0301] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes: an input means for receiving a user's travel conditions in free words; an analysis means for analyzing the travel conditions received from the input means; a comparison means for collating an optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means; a generation means for generating multiple optimal travel plans for the user from the travel plans collated by the comparison means; a proposal means for proposing the travel plans generated by the generation means to the user; an emotion analysis means for analyzing the user's emotions; an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user; an output means for providing the itinerary generated by the itinerary generation means to the user; a tour guide provision means for providing personalized tour guide information and emotion information according to the user's age and knowledge level; and a navigation means for presenting an optimal route based on the travel plan in cooperation with map software. This makes it possible to propose optimal travel plans according to the user's emotions and individual needs, and to provide personalized tour guide information and navigation.
[0302] "Input means" refers to a device or software that accepts travel conditions from the user as free word input.
[0303] "Analysis means" refers to a device or software that analyzes the travel conditions received from the input means and extracts specific keywords and related information.
[0304] The "collation means" refers to a device or software that collates the optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means.
[0305] The "generation means" refers to a device or software that generates a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[0306] The "suggestion means" refers to a device or software that proposes to the user the travel plan generated by the generation means.
[0307] "Emotion analysis means" refers to a device or software that analyzes a user's emotions by analyzing the user's input data, voice, facial expressions, etc.
[0308] "Itinerary generation means" refers to a device or software that generates an original itinerary based on a travel plan determined by a user.
[0309] "Output Means" means any device or software that provides the generated itinerary or other information to the user.
[0310] "Tour guide providing means" refers to a device or software that provides personalized tour guide information according to the user's age, knowledge level, and emotional information.
[0311] "Navigation means" refers to a device or software that works in conjunction with map software to present the optimal route based on a travel plan.
[0312] "Map Software" means a program that provides road, route, and geographic information to assist users in navigating the area.
[0313] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with data from multiple travel databases, generates and proposes an optimal travel plan, and provides detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with map software.
[0314] First, the user launches a dedicated application on their smartphone and enters travel conditions (area, sightseeing genre, date and time, number of people, etc.). For example, the user might enter free words such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days." The entered data is sent from the device to the server.
[0315] The server uses a natural language processing library (NLTK, spaCy) running on Python to analyze the received travel conditions. As a result of the analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted. Next, the server analyzes the user's emotions using an emotion engine (IBM Watson (registered trademark) Tone Analyzer, Microsoft (registered trademark) Azure (registered trademark) Text Analytics). The emotion engine infers emotions from the input text, the user's tone of voice, and facial expressions. This allows it to obtain emotional information such as "the user is excited."
[0316] Based on the analyzed travel conditions and sentiment information, the server accesses multiple travel information APIs (e.g., Expedia API, Travelport API) to obtain data on relevant travel plans. Because the amount of plan data obtained is enormous, the server uses a generative AI model (OpenAI (registered trademark) GPT, Google BERT) to generate a travel plan that best suits the user's conditions and sentiment. This plan generation takes into account price, accessibility, and review ratings.
[0317] The generated itineraries are sent from the server to the device and presented to the user. The user can compare the itineraries displayed on the device screen and select and customize the most suitable one. For example, they can change specific tourist spots or accommodations. The plan selected and customized by the user is then sent back to the server from the device.
[0318] Based on the confirmed plan, the server generates an original travel itinerary, which includes information on accommodation reservations, details of tourist attractions, places to eat, transportation, etc. This information is sent from the server to the terminal and provided to the user.
[0319] In addition, the server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places where the user can relax if they are tired. This tour guide information is also sent from the server to the terminal and provided to the user.
[0320] Finally, the server connects with map software (Google Maps, Apple Maps) to obtain the optimal route based on the confirmed itinerary. This includes walking routes, public transport routes, car routes, etc. The obtained information is sent to the device and provides real-time navigation.
[0321] For example, a user might enter a prompt into the app: "I want to see the cherry blossoms in Tokyo. I'm planning a three-day trip for two people. What travel plans do you recommend?" Based on this prompt, the server analyzes and generates an optimal travel plan, which is then presented to the device, allowing the user to plan their trip.
[0322] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0323] Step 1:
[0324] The user launches the smartphone application and inputs travel conditions (area, sightseeing genre, date and time, number of people, etc.). At this time, they input in free-word format, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days," and the data is sent to the server. The input data is raw text information.
[0325] Step 2:
[0326] The device sends the input data to the server. The server uses natural language processing libraries (NLTK, spaCy) that run on Python to analyze the input data. It analyzes the text data and extracts keywords such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days." This outputs structured data that has been analyzed from the raw text data.
[0327] Step 3:
[0328] The server runs an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics). The emotion engine estimates emotions from the input text, the user's tone of voice, and facial expressions. This analysis yields emotional information indicating the user's excitement. The input is the analyzed keywords and the user's voice and facial expression data, and the output is emotional information.
[0329] Step 4:
[0330] Based on the analyzed travel conditions and emotional information, the server accesses multiple travel information APIs (Expedia API, Travelport API) to obtain data on the relevant travel plans. The obtained data is stored in JSON format. At this point, the server processes a huge amount of data and extracts a list of relevant travel plans. The input is the analyzed keywords and emotional information, and the output is a list of travel plans.
[0331] Step 5:
[0332] The server generates optimal itineraries based on the acquired itinerary data using generative AI models (OpenAI GPT, Google BERT). This filtering takes into account price, accessibility, review ratings, and sentiment information. The list of generated itineraries is again stored in JSON format. The input is a list of itineraries, and the output is a list of optimal itineraries.
[0333] Step 6:
[0334] The server sends the optimal travel plan to the device and displays it on the device screen. The user reviews it and selects and customizes the plan that best suits them. For example, they can change specific tourist spots or accommodations. The customized plan is then sent from the device to the server. The input is the user's selection and customization information, and the output is the updated travel plan.
[0335] Step 7:
[0336] The server generates an original travel itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation. The generated itinerary information is again stored in JSON format and sent to the terminal. The input is the confirmed travel plan, and the output is the original itinerary.
[0337] Step 8:
[0338] The server generates personalized tour guide information based on the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places and activities where people can relax. This information is sent to the terminal and provided to the user. The input is the user's age, knowledge level, and emotional information, and the output is personalized tour guide information.
[0339] Step 9:
[0340] The server works with map software to obtain the optimal travel route based on the confirmed travel plan. This includes walking routes, public transportation routes, and car routes. The obtained traffic and route information is sent to the device, which provides real-time navigation. The input is the confirmed travel plan, and the output is the optimal travel route.
[0341] Through the above processing flow, users can obtain the optimal travel plan based on their individual needs and feelings, and can enjoy their entire trip efficiently and with a high level of satisfaction.
[0342] (Application example 2)
[0343] 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."
[0344] Current food delivery services lack mechanisms for suggesting optimal menu items based on users' individual emotions and preferences. This makes it difficult for users to select a menu that matches their mood and situation, resulting in low satisfaction. Furthermore, it is difficult to track delivery routes and delivery status in real time, leaving room for improvement in the overall user experience.
[0345] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0346] In this invention, the server includes an input means for receiving free word ordering conditions from a user, an analysis means for analyzing the ordering conditions received from the input means, a comparison means for collating an optimal menu from databases of multiple food delivery systems based on the ordering conditions analyzed by the analysis means, a generation means for generating multiple menus optimal for the user from the menus compared by the comparison means, a proposal means for proposing the menus generated by the generation means to the user, a plan generation means for generating an original delivery plan based on the menu confirmed by the user, an output means for providing the plan generated by the plan generation means to the user, a food information provision means for providing personalized food information according to the age and emotional information of the user, and a navigation means for presenting an optimal route based on the menu in cooperation with a map application. This enables the proposal of an optimal menu based on the user's emotions and situation and real-time management of delivery routes and statuses.
[0347] The "input means" is a means for accepting order conditions from the user in free words.
[0348] The "analysis means" is a means for analyzing the order conditions received from the input means.
[0349] The "checking means" is a means for checking the databases of a plurality of food serving systems to find the most suitable menu based on the order conditions analyzed by the analyzing means.
[0350] The "generation means" is a means for generating a plurality of menus that are optimal for the user from among the menus collated by the collation means.
[0351] The "proposing means" is a means for proposing the menu generated by the generating means to the user.
[0352] The "plan generation means" is a means for generating an original delivery plan based on a menu determined by the user.
[0353] The "output means" is a means for providing the plan generated by the plan generation means to the user.
[0354] The "cooking information providing means" is a means for providing personalized cooking information according to the age and emotional information of the user.
[0355] The "navigation means" is a means for presenting the optimum route based on the menu in cooperation with a map application.
[0356] The present invention will be described using a smartphone-based food delivery system as an example. This system allows users to input information such as meal requirements, budget, and number of people, and analyzes emotional information to suggest the optimal menu. It also has a function that allows users to track delivery routes and status in real time.
[0357] First, the user enters the order conditions using a smartphone application. This input method can accept free words, such as "pizza, spicy, for three people, budget 5,000 yen."
[0358] The entered data is sent from the smartphone to a server. The server analyzes the input data using natural language processing technology (for example, Google Cloud Natural Language API) and identifies the order conditions. The results of this analysis are converted into specific condition information such as "pizza," "spicy," "3 people," and "5,000 yen."
[0359] Next, the server uses an emotion analysis engine (e.g., Affdex SDK) to estimate the user's emotion from their input, tone of voice, facial expression, etc. As a result, emotional information such as "excited" or "relaxed" can be obtained.
[0360] The server accesses multiple food delivery systems (e.g., Zomato API and Yelp API) based on the analyzed order conditions and emotion information to retrieve the corresponding menu data. Because the retrieved menu data is often huge, it is filtered to generate a menu that best suits the user's conditions and emotions.
[0361] The generated menu is displayed on the smartphone in a way that makes it easy for users to compare. Users can compare the multiple suggested menus and select or customize the most suitable menu. For example, they can customize the "Hot Pepper Pizza (4,500 yen, very spicy)" by adding cheese.
[0362] Once the user has determined the optimal menu, the information is sent to the server, which then generates a custom delivery plan based on the determined menu, including information such as delivery route, delivery time, and delivery status.
[0363] The delivery plan is linked to a map app (e.g., Google Maps API) to obtain the optimal route and is displayed in real time on the smartphone, making it easier for users to keep track of the delivery progress.
[0364] Furthermore, the server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone. For example, it suggests "kid-friendly menus" for families with children, and "menus that can be prepared quickly" for busy business people.
[0365] As a concrete example, suppose a user launches the app and enters "Belgian waffles, something sweet, for two people, budget 3000 yen." The following prompt is used:
[0366] Analyze the user's request and extract the conditions: Belgian waffles, sweet food, for two people, budget 3000 yen. Furthermore, suggest the optimal menu based on the user's current emotions.
[0367] The emotion analysis engine analyzes the user's emotions and infers, for example, that they are "relaxed." Based on this result, the system filters data obtained from multiple food delivery systems to generate and suggest the optimal menu.
[0368] In this way, the system can suggest optimal menus based on the user's emotions and situation, and manage delivery routes and status in real time.
[0369] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0370] Step 1:
[0371] The user launches the application on their smartphone and enters the ordering conditions (type of meal, budget, number of people, etc.) using free words.
[0372] Input: User requirements (e.g., "Pizza, spicy, for 3 people, budget 5,000 yen")
[0373] What it does: A smartphone app accepts user input.
[0374] Output: The accepted input data
[0375] Step 2:
[0376] The terminal transmits the input data to the server.
[0377] Input: The input data received
[0378] How it works: The smartphone app sends input data over the network to the server.
[0379] Output: Input data received on the server side
[0380] Step 3:
[0381] The server analyzes the input data using natural language processing technology (e.g., Google Cloud Natural Language API) and identifies the order conditions.
[0382] Input: The input data received by the server (e.g., "Pizza, spicy, 3 people, budget 5,000 yen")
[0383] Operation: The server performs natural language processing, analyzes the text data, and extracts condition information.
[0384] Output: Analyzed condition data (e.g. "pizza", "spicy", "3 people", "5000 yen")
[0385] Step 4:
[0386] The server uses an emotion analysis engine (e.g., Affdex SDK) to estimate emotions from the user's text, tone of voice, facial expressions, etc.
[0387] Input: User-entered text and voice data
[0388] Operation: The server runs the emotion analysis engine and estimates emotion information.
[0389] Output: Estimated emotion information (e.g., "excited")
[0390] Step 5:
[0391] Based on the analyzed order conditions and emotion information, the server accesses the APIs of multiple food delivery systems (e.g., Zomato API, Yelp API) and retrieves the corresponding menu data.
[0392] Input: Parsed order conditions, sentiment information
[0393] Operation: The server sends a request to the API of each food delivery system to obtain menu information.
[0394] Output: Retrieved menu data
[0395] Step 6:
[0396] The server filters the acquired menu information and generates a menu that best suits the user's conditions and emotions.
[0397] Input: Retrieved menu data
[0398] How it works: The server runs an algorithm that filters data based on criteria and selects the best menu.
[0399] Output: Optimal menu (e.g. "Hot Pepper Pizza (4500 yen, very spicy)")
[0400] Step 7:
[0401] The server proposes the generated menu to the user.
[0402] Enter: Optimal Menu
[0403] How it works: The server sends the optimal menu to the smartphone app.
[0404] Output: Optimal menu displayed on smartphone
[0405] Step 8:
[0406] The user compares the proposed menus and selects or customizes the most suitable menu.
[0407] Input: Menu options displayed on your smartphone
[0408] What it does: The user taps on the provided menu to select or customize.
[0409] Output: Selected optimal menu or customized menu
[0410] Step 9:
[0411] The server generates an original delivery plan based on the menu determined by the user.
[0412] Input: Selected or customized menu
[0413] Operation: The server runs an algorithm that generates a delivery plan based on the user's menu selections.
[0414] Output: The generated delivery plan
[0415] Step 10:
[0416] The server works with a map app (e.g., Google Maps API) to obtain the optimal delivery route based on the confirmed menu and displays it on the smartphone in real time.
[0417] Input: Generated delivery plan
[0418] How it works: The server calls the map app's API to obtain route information and sends it to the smartphone.
[0419] Output: Real-time delivery route displayed on a smartphone map app
[0420] Step 11:
[0421] The server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone.
[0422] Input: User's age information, emotional information, confirmed menu
[0423] How it works: The server runs an algorithm that generates appropriate cooking information based on age and emotions, and sends it to the smartphone.
[0424] Output: Personalized recipe information displayed on a smartphone
[0425] 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.
[0426] 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.
[0427] 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.
[0428] [Second embodiment]
[0429] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0430] 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.
[0431] 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).
[0432] 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.
[0433] 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.
[0434] 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).
[0435] 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.
[0436] 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.
[0437] 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.
[0438] 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.
[0439] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0440] 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."
[0441] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0442] Program processing
[0443] 1. User input of travel conditions:
[0444] Users start the application on their smartphone and enter their desired travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words, such as "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0445] 2. Parse user input:
[0446] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and extract and identify travel conditions. Specifically, the data is broken down into categories such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days."
[0447] 3. Travel Plan Verification:
[0448] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves multiple travel plans. The retrieved plan information is filtered according to the user's conditions.
[0449] 4. Travel plan generation and suggestions:
[0450] The server generates multiple travel plans that are optimal for the user based on the filtered travel plan data. The generated multiple plans are sent to the user's device, which displays them. The user can compare these plans and select or customize the optimal plan.
[0451] 5. Create your original itinerary:
[0452] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates an original travel itinerary based on the determined plan and sends it to the device. This itinerary includes accommodation reservation information, details of tourist attractions, and a schedule.
[0453] 6. Personal tour guide provided:
[0454] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. For example, it provides detailed historical background for history buffs, while providing educational and entertaining information for children. This information is then sent to the device.
[0455] 7. Navigation Support:
[0456] The server works with the map app to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device, which then provides real-time navigation. For example, the device may display the optimal route from the user's current location to a tourist spot and provide instructions on how to use public transportation.
[0457] Specific examples
[0458] 1. The user enters the following conditions: "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0459] 2. The server analyzes the data sent from the device and organizes the conditions.
[0460] 3. The server accesses the APIs of multiple travel agencies to obtain the best cherry blossom sightseeing plans for spring in Kyoto.
[0461] 4. The server proposes multiple plans for cherry blossom sightseeing in Kyoto to the user. The user selects Plan B and adds specific tourist spots.
[0462] 5. Based on the confirmed plan, the server generates an original itinerary and provides it to the terminal.
[0463] 6. The server takes into account the user's age and interests and provides personalized tour guide information including the history and highlights of cherry blossom viewing spots.
[0464] 7. The server works with the map app to provide the optimal access method based on the travel plan and perform real-time navigation on the device.
[0465] This allows users to easily plan their trips and enjoy an efficient and satisfying trip.
[0466] The processing flow will be explained below.
[0467] Step 1:
[0468] Users launch the application on their smartphone and enter travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0469] Step 2:
[0470] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology and identifies the travel conditions. As a result of the analysis, information such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days" is extracted.
[0471] Step 3:
[0472] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves the relevant travel plan data. The retrieved plan data can be enormous in volume, as it is provided by various travel agencies.
[0473] Step 4:
[0474] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's requirements, taking into account factors such as price, accessibility, and reviews.
[0475] Step 5:
[0476] The server sends the generated travel plans to the user's device, which then displays the plans on the screen and presents them to the user in an easy-to-compare format.
[0477] Step 6:
[0478] Users can compare the multiple plans displayed and select the one they prefer. They can also customize the plan by adding or changing tourist attractions and accommodations as needed.
[0479] Step 7:
[0480] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates an original travel itinerary based on the confirmed plan.
[0481] Step 8:
[0482] The server then sends the generated original itinerary to the user's device, which includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation options.
[0483] Step 9:
[0484] The server generates tour guide information tailored to the user's age and level of knowledge, including friendly explanations and child-friendly activity information for families with children, for example.
[0485] Step 10:
[0486] The server then sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[0487] Step 11:
[0488] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[0489] Step 12:
[0490] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[0491] This process allows users to easily create the perfect travel plan for themselves, and enjoy their trip with peace of mind, knowing they have a detailed itinerary and information.
[0492] Example 1
[0493] 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."
[0494] With conventional travel planning systems, users had to manually compare plans across multiple travel agency websites, requiring a great deal of time and effort to find the optimal travel plan. Furthermore, they often only provided partial suggestions that only met some of the travel requirements, and lacked personalized suggestions tailored to individual users' needs. Furthermore, they lacked detailed itineraries based on travel plans or real-time navigation support. Therefore, a new system was needed that would streamline the entire travel planning process and increase user satisfaction.
[0495] 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.
[0496] In this invention, the server includes input means for accepting travel conditions from a user in free words, transmission means for transmitting the travel condition data accepted from the input means to the server, analysis means for analyzing the transmitted travel condition data using natural language processing technology, comparison means for retrieving an optimal travel plan from databases of multiple travel information providing systems based on the travel conditions analyzed by the analysis means, generation means for generating multiple travel plans optimal for the user from the travel plans retrieved by the comparison means, proposal means for proposing the travel plans generated by the generation means to the user, itinerary generation means for generating an original itinerary based on the travel plans selected and customized by the user, output means for providing the itinerary generated by the itinerary generation means to the user, tour guide provision means for providing personalized tour guide information according to the user's age, knowledge level, and areas of interest, and navigation means for presenting an optimal route based on the travel plan in cooperation with a map application. This solves the problems faced by conventional travel planning systems and enables users to plan and implement efficient and personalized travel plans.
[0497] "User" means an individual or organization that intends to use this system to create a travel plan.
[0498] "Travel conditions" are detailed information about a trip specified by a user, and include elements such as area, sightseeing genre, date and time, and number of people.
[0499] "Free words" are phrases or sentences that users can freely enter in text format, and are not limited to a specific form or options.
[0500] "Input means" refers to the interface through which the user inputs travel conditions, such as a smartphone application or web form.
[0501] The "transmission means" is a device or software having a function of transmitting the travel condition data received from the input means to the server.
[0502] "Server" refers to a computer system that analyzes input data, collates information, and generates and proposes travel plans.
[0503] The "analysis means" is software or hardware for analyzing the transmitted travel condition data, and is characterized by the use of natural language processing technology.
[0504] "Natural language processing technology" refers to technology that enables computers to understand and analyze human language, and includes, for example, text analysis and context understanding.
[0505] The "collation means" is a device or software that has the function of obtaining the optimal travel plan from a plurality of travel information providing systems based on the travel conditions analyzed by the analysis means.
[0506] A "travel information system" is an online service or database that provides an API to provide travel plans and tourist information.
[0507] The "generation means" is a device or software that has the function of creating multiple travel plans that are optimal for the user from among the travel plans obtained by the comparison means.
[0508] The "proposal means" is a device or software that has the function of presenting the travel plan created by the creation means to the user.
[0509] "Selecting and customizing" means that the user can choose the most suitable travel plan from the suggested plans and modify the plan as needed.
[0510] "Itinerary Generator" means a device or software capable of generating a detailed travel itinerary based on a user's selected and customized travel plan.
[0511] The "output means" is an interface or display device for providing the itinerary generated by the itinerary generation means to the user.
[0512] A "tour guide providing means" is a device or software that has the function of providing personal guide information that is useful during a trip according to the user's age, knowledge level, and areas of interest.
[0513] A "navigation means" is a device or software that has the function of presenting the optimal route based on a travel plan and linking with a map application.
[0514] A "map application" is an online service or application that provides geographic information and enables users to find the best route to their destination.
[0515] This system allows users to input their travel requirements, and the server analyzes, collates, generates, and proposes the optimal travel plan. The system is primarily composed of user devices, an analysis server, and various API-linked systems.
[0516] First, the user uses a dedicated application on a device such as a smartphone or PC to enter their travel conditions in free-word format. This input method is provided through an interface such as a text box. The travel conditions entered by the user (for example, "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days") are converted into JSON format by the device and sent to the server using the HTTPS protocol.
[0517] The server then receives the data and analyzes it using natural language processing technology (e.g., Google NLP API). As a result of the analysis, the travel conditions are broken down into individual elements (e.g., "Kyoto," "cherry blossom viewing," "spring," "3 people," "2 nights, 3 days").
[0518] Based on the analyzed travel condition data, the server accesses multiple travel information systems (for example, databases provided through the APIs of multiple travel agencies) to obtain travel plans that match the conditions. Next, it filters the obtained plans to find the one that best suits the user's conditions, and uses a generation means to propose the results to the user as multiple optimal travel plans. These proposals are displayed on the screen of the user's device, and the user can compare them to select the best plan and customize it as needed.
[0519] Furthermore, once the user selects and customizes the optimal travel plan, that information is again sent from the device to the server. The server uses this information to generate a detailed travel itinerary. This itinerary includes accommodation reservation confirmations, details of tourist attractions, and a schedule of activities for each day. The generated itinerary information is again sent to the device and provided to the user.
[0520] In addition, the server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. This information includes, for example, the history and cultural background of the tourist spot, as well as explanations of the attractions, and is sent to the user's device for presentation.
[0521] Finally, the server connects with a map application (e.g., Google Maps) to obtain the optimal route based on the travel plan. This sends real-time navigation information, including directions on how to use public transport and the shortest route to tourist spots, to the user's device, allowing the user to enjoy sightseeing smoothly while traveling.
[0522] Specific examples
[0523] When a user enters the search criteria "Kyoto, sightseeing, spring, cherry blossoms, three people, two nights and three days," the information is sent to the server via the device. The server analyzes this information using the Google NLP API and sends requests to the APIs of multiple travel agencies to obtain the optimal cherry blossom sightseeing plan. It then filters out plans that do not match the search criteria and presents multiple travel plan options that best suit the user. If the user selects "Plan B" and requests an additional visit to "Arashiyama," the server generates a detailed itinerary based on the information. This itinerary includes accommodation reservations, details of tourist attractions, and a schedule for each day, and is sent to the device. Furthermore, if the user is interested in history, the server also provides detailed guide information about the cultural background of Arashiyama and cherry blossoms. Finally, the server works with Google Maps to calculate the optimal access method and sends that information to the device, where real-time navigation is performed.
[0524] Example prompts (for generative AI models)
[0525] "I'm planning a trip. Please suggest the best itinerary for Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days. Also, please provide a detailed itinerary based on the itinerary, as well as personalized guide information for each tourist spot."
[0526] This system allows users to plan trips efficiently and with high satisfaction, and also provides comfortable guidance to their destinations during their trip.
[0527] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0528] Step 1:
[0529] Using a dedicated application on the device, the user enters travel conditions in free-word format. This input is done via a text box or voice recognition function. For example, the user might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days." The device then converts this input data into JSON format and prepares it for transmission.
[0530] Input: Travel conditions entered by the user ("Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days")
[0531] Output: JSON formatted travel conditions data
[0532] Step 2:
[0533] The terminal securely sends the converted JSON data to the server using the HTTPS protocol, and then waits for a response from the server.
[0534] Input: JSON format travel condition data
[0535] Output: Status of sending to server
[0536] Step 3:
[0537] The server analyzes the JSON data received from the device and uses natural language processing technology (e.g., Google NLP API) to break down the travel conditions into their individual elements, such as "Kyoto," "sightseeing," "spring," "cherry blossoms," "3 people," and "3 days and 2 nights."
[0538] Input: JSON format travel condition data
[0539] Output: Each element of the analyzed travel conditions ("Kyoto", "sightseeing", "spring", "cherry blossoms", "3 people", "2 nights, 3 days")
[0540] Step 4:
[0541] Based on each element of the analyzed travel conditions, the server accesses the APIs of multiple travel information providers and retrieves relevant travel plans in real time. For example, it queries the databases of multiple travel agencies to retrieve "cherry blossom sightseeing plans suitable for spring in Kyoto."
[0542] Input: Each element of the analyzed travel conditions
[0543] Output: A dataset of the retrieved travel plans
[0544] Step 5:
[0545] The server filters the acquired travel plan data according to the user's criteria, for example, excluding plans that do not match the budget or date and time, and extracts plans that meet the criteria.
[0546] Input: The retrieved travel plan dataset
[0547] Output: A filtered list of itineraries
[0548] Step 6:
[0549] The server generates a plurality of travel plans that are particularly suitable for the user from among the filtered travel plans and transmits the results to the terminal.
[0550] Input: A filtered list of itineraries
[0551] Output: A list of generated optimal itineraries, and the status of sending them to the device
[0552] Step 7:
[0553] The device displays a list of optimal travel plans sent from the server to the user, who can then compare these plans, select the best one, and customize it, for example by adding specific attractions or changing the date and time.
[0554] Input: A list of generated optimal itineraries
[0555] Output: User selected and customized itinerary
[0556] Step 8:
[0557] The device sends the information about the user's selected and customized travel plan to the server, which is also converted into JSON format.
[0558] Input: User-selected and customized travel plans
[0559] Output: Customized itinerary data in JSON format, status of sending to server
[0560] Step 9:
[0561] The server generates a detailed travel itinerary based on the user's selected and customized travel plan information, including, for example, confirmation of accommodation reservations, details of tourist attractions, and planned activities for each day.
[0562] Input: Customized itinerary data in JSON format
[0563] Output: Generated detailed itinerary
[0564] Step 10:
[0565] The server then sends the generated detailed itinerary to the user's device, allowing the user to check the itinerary on the device.
[0566] Input: Generated detailed travel itinerary
[0567] Output: Sending status to user's device, detailed travel itinerary
[0568] Step 11:
[0569] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest, including historical and cultural background of the tourist spot, and descriptions of the attractions. This information is then sent to the device and provided to the user.
[0570] Input: User's age, knowledge level, areas of interest
[0571] Output: Generated personal tour guide information, sending status to the device
[0572] Step 12:
[0573] The server works with a map application to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device and provided as real-time navigation information on the device.
[0574] Input: Generated detailed travel itinerary, link information with map application
[0575] Output: Acquired travel route, traffic information, transmission status to the terminal
[0576] (Application example 1)
[0577] 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."
[0578] Modern travel planning and sightseeing destination exploration involve a wealth of information, but it is difficult to efficiently utilize this information and provide travel plans and tourist information tailored to user needs. In particular, there are many challenges in providing content tailored to users' interests and conditions, and in generating personalized guide information. There is a need for a system that can integrate this information and provide it in the most optimal form for users.
[0579] 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.
[0580] In this invention, the server includes an input means for accepting a user's travel conditions in free words, an analysis means for analyzing the travel conditions accepted from the input means, a comparison means for collating an optimal travel plan from databases of multiple travel agencies based on the travel conditions analyzed by the analysis means, a generation means for generating multiple travel plans optimal for the user from the travel plans collated by the comparison means, a proposal means for proposing to the user the travel plans generated by the generation means, an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user, an output means for providing to the user the itinerary generated by the itinerary generation means, a tour guide provision means for providing personalized tour guide information according to the user's age and knowledge level, a navigation means for presenting an optimal route based on the travel plan in cooperation with a map application, a video acquisition means for acquiring and recommending related video content based on the user's travel conditions, and a video recommendation means for personalizing the video content acquired by the video acquisition means and suggesting it to the user. This makes it possible to provide travel plans, itineraries, tourist information, and video content appropriate to the user's requests.
[0581] The "input means" is a means for accepting travel conditions from the user in free words.
[0582] The "analysis means" is a means for analyzing the travel conditions received from the input means.
[0583] The "collation means" is a means for collating the optimum travel plan from the databases of a plurality of travel agencies based on the travel conditions analyzed by the analysis means.
[0584] The "generation means" is a means for generating a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[0585] The "proposing means" is a means for proposing the travel plan generated by the generating means to the user.
[0586] The "itinerary generation means" is a means for generating an original itinerary based on a travel plan determined by a user.
[0587] The "output means" is a means for providing the itinerary generated by the itinerary generation means to the user.
[0588] The "tour guide providing means" is a means for providing personalized tour guide information according to the age and knowledge level of the user.
[0589] The "navigation means" is a means for presenting the optimum route based on the travel plan in cooperation with a map application.
[0590] "Video acquisition means" refers to a means of acquiring and recommending relevant video content based on the user's travel conditions.
[0591] The "video recommendation means" is a means for personalizing video content acquired by the video acquisition means and proposing it to the user.
[0592] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0593] System configuration
[0594] This system mainly consists of the following means:
[0595] 1. Input method: Accept travel conditions from users in free words. This is mainly realized by a smartphone application, and users input their desired travel conditions.
[0596] 2. Analysis means: Analyzes the travel conditions received from the input means. For analysis, natural language processing technology (such as TensorFlow or Hugging Face's BERT model) is used to extract the necessary conditions from the user's free words.
[0597] 3. Matching means: Matches the optimal travel plan from the databases of multiple travel agencies based on the travel conditions analyzed by the analysis means. Specifically, it calls the travel agency's API to obtain related travel plans.
[0598] 4. Generation means: Generates a plurality of travel plans optimal for the user from among the travel plans collated by the collation means, using an algorithm that filters optimal plans based on the user's conditions.
[0599] 5. Proposal means: The travel plans generated by the generation means are proposed to the user, who can compare them and select the most suitable plan.
[0600] 6. Itinerary Generation: Generates an original itinerary based on the user's confirmed travel plan, including accommodation reservation information, tourist attraction details, and itinerary.
[0601] 7. Output means: The itinerary generated by the itinerary generation means is provided to the user via the smartphone application screen or email.
[0602] 8. Tour guide provision means: Providing personalized tour guide information according to the user's age and knowledge level, such as information explaining the historical background and highlights of tourist spots.
[0603] 9. Navigation: Based on the travel plan, the optimal route is presented in cooperation with a map app, allowing users to receive real-time navigation.
[0604] 10. Video Acquisition Method: Based on the user's travel conditions, relevant video content is acquired and recommended. This process uses the YouTube API and Vimeo API.
[0605] 11. Video recommendation means: Personalizes the video content acquired by the video acquisition means and suggests it to the user. Based on the user's viewing history and ratings, the accuracy of recommendations will be improved from the next time onwards.
[0606] Example of a system
[0607] For example, consider a prompt that asks a user to search for a video about visiting museums in Paris in the fall.
[0608] User input conditions: Paris, sightseeing, museum, autumn, 2 people, 5 days
[0609] Prompt statement:
[0610] "Look for tourism videos about museums in Paris. Videos that include autumn-related tourist information and museum introductions are especially preferred."
[0611] In this way, users can view the most suitable travel content as a way to prepare for their travel destination, enabling them to have a more fulfilling travel experience.
[0612] Hardware and Software Use
[0613] Hardware: smartphones, servers
[0614] Software: React Native (front-end), Node.js + Express (back-end), TensorFlow (natural language processing), YouTube API (video acquisition), Vimeo API (video acquisition)
[0615] Data processing and calculation
[0616] Free word input analysis: Using natural language processing technology, conditions are extracted from free words.
[0617] Travel plan matching: Call the travel agency's API to obtain travel plan data.
[0618] Video retrieval and recommendation: Retrieve and personalize videos and present them to the user.
[0619] The present invention allows users to easily plan their trips and enjoy efficient and satisfying trips. In addition, the present invention allows users to simultaneously enjoy entertainment content related to their trips, thereby enriching the user's overall travel experience.
[0620] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0621] Step 1:
[0622] The user enters travel conditions. The user launches the smartphone application and enters travel conditions using free words, such as "Paris, sightseeing, museum, autumn, 2 people, 5 days." The entered travel conditions are sent from the device to the server. The input data is sent in text format and parsed into JSON format.
[0623] Step 2:
[0624] The server analyzes the travel conditions. The server uses natural language processing technology (TensorFlow or Hugging Face's BERT model) to analyze the received travel conditions data. The analysis process breaks down the input data and extracts elements such as the destination, sightseeing genre, date and time, and number of people. The analyzed data is converted into a structured format (e.g., a JSON object) for use in the next step.
[0625] Step 3:
[0626] The server matches the itineraries. Based on the conditions analyzed in the previous step, the server calls the APIs of multiple travel agencies to obtain the data of related itineraries. As a result of the API call, multiple itineraries are returned. These itineraries are temporarily stored on the server side.
[0627] Step 4:
[0628] The server generates an optimal itinerary. From the obtained itineraries, a filtering algorithm is used to select multiple itineraries that best meet the user's requirements. The selected itineraries are those that best meet the user's requirements, and each plan is assigned a rating score. These itineraries are prepared to be proposed to the user in the next step.
[0629] Step 5:
[0630] The server proposes travel plans to the user. The selected travel plans are sent to the user's device and displayed on the device's application screen. The user can compare these plans and select the best one. The user's input is sent back to the server.
[0631] Step 6:
[0632] The server generates an original itinerary based on the travel plan confirmed by the user. This itinerary includes accommodation reservation information, tourist attraction details, schedules, etc. The generated itinerary is then sent to the user's device in a structured data format.
[0633] Step 7:
[0634] The server generates personalized tour guide information. Detailed tour guide information is generated based on the user's age, knowledge level, and areas of interest. For example, a user interested in history can be provided with detailed information explaining the historical background of tourist attractions. This information is sent to the user's device.
[0635] Step 8:
[0636] The server provides navigation information. The server connects with the map app to obtain the optimal route based on the travel plan. The obtained route information is updated in real time and sent to the user's device. The user's current location and the optimal route to the destination are displayed on the map.
[0637] Step 9:
[0638] The server retrieves video content. Based on the user's travel conditions, it calls the YouTube API or Vimeo API to retrieve relevant video content. For example, it retrieves tourist videos that match the conditions "Paris, museums, autumn." This video list is temporarily stored on the server.
[0639] Step 10:
[0640] The server recommends video content. An algorithm is used to personalize the retrieved video content and suggest it to the user. Based on the user's viewing history and ratings, the most relevant video is selected and sent to the user's device. This allows the user to prepare for their trip by watching videos.
[0641] Through the above processing steps, the system provides users with optimal travel plans and related entertainment content, supporting a more fulfilling travel experience.
[0642] 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.
[0643] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with that of multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0644] Program processing
[0645] 1. User input of travel conditions:
[0646] Users start the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they can enter "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[0647] 2. Parse user input:
[0648] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and identify the travel conditions. As a result of this analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted.
[0649] 3. User sentiment analysis:
[0650] The server uses the analyzed conditions and an emotion engine to analyze the user's emotion at the time of input. The emotion engine infers emotion from the input text, the user's tone of voice, facial expression, etc. As a result, emotional information such as "The user is excited" or "The user is relaxed" can be obtained.
[0651] 4. Travel Plan Verification:
[0652] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and user sentiment information to obtain data on relevant travel plans. The obtained plan data can be enormous in volume, as it is provided by various travel agencies.
[0653] 5. Travel plan generation and suggestions:
[0654] The server filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotions, taking into account price, accessibility, reviews, and emotional information.
[0655] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them to the user in an easy-to-compare format.
[0656] 6. User Plan Selection and Customization:
[0657] Users can compare the different plans displayed and select or customize the plan that best suits them, for example by changing specific attractions or accommodations.
[0658] 7. Create original itinerary:
[0659] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates a custom itinerary based on the plan. The itinerary includes information such as accommodation reservations, details of tourist attractions, dining options, and transportation options.
[0660] 8. Personal tour guide provided:
[0661] The server generates tour guide information based on the user's age, knowledge level, and emotional information, including family-friendly and elderly-friendly tourist spots, and suggests relaxing places and activities if the user is tired.
[0662] The server sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[0663] 9. Navigation Support:
[0664] Based on the confirmed travel plan, the server connects with the map app to obtain the optimal travel route, including walking routes, public transport routes, and car routes.
[0665] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[0666] Specific examples
[0667] 1. The user enters the conditions "Tokyo, sightseeing, cherry blossoms, two people, three days," and the device sends the data to the server.
[0668] 2. The server analyzes the data and extracts the following conditions: "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[0669] 3. The server uses the emotion engine to obtain emotion information that the user is excited.
[0670] 4. The server accesses the APIs of multiple travel agencies and retrieves the relevant travel plans.
[0671] 5. The server filters the analyzed travel conditions and emotion information to generate the optimal plan.
[0672] 6. The user compares the proposed plans and selects and customizes the most suitable plan.
[0673] 7. The server generates an original itinerary based on the confirmed plan and sends it to the terminal.
[0674] 8. The server generates tour guide information based on age and emotional information and sends it to the user's device.
[0675] 9. The server connects with the map app to obtain the optimal route and sends it to the device, which then provides real-time navigation.
[0676] This allows users to easily plan their trips and enjoy their trip with peace of mind, knowing they have the best travel plans and information to suit their emotions.
[0677] The processing flow will be explained below.
[0678] Step 1:
[0679] Users launch the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people) in free words, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[0680] Step 2:
[0681] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology to identify the travel conditions. This analysis extracts information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[0682] Step 3:
[0683] The server uses the analyzed conditions and the emotion engine to analyze the emotion of the user's input. The emotion engine infers the emotion from the input text, tone of voice, and facial expression. As a result, the emotion information that "the user is excited" is obtained.
[0684] Step 4:
[0685] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and emotion information to obtain travel plan data. The plan data provided by each travel agency includes a wide range of information.
[0686] Step 5:
[0687] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotional information. Filtering takes into account price, accessibility, reviews, and emotional information.
[0688] Step 6:
[0689] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them in a way that makes it easy for the user to compare them.
[0690] Step 7:
[0691] Users can compare multiple plans displayed on their device and select or customize the plan that best suits them, for example, by changing specific attractions or accommodations.
[0692] Step 8:
[0693] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates a custom itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, dining locations, and transportation options.
[0694] Step 9:
[0695] The server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it includes friendly explanations for families and information on relaxing places. This tour guide information is sent to the device.
[0696] Step 10:
[0697] The server sends the generated tour guide information to the user's terminal, allowing the user to refer to it while traveling and enjoy sightseeing.
[0698] Step 11:
[0699] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[0700] Step 12:
[0701] The server then sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation to the user.
[0702] This process allows users to easily create the optimal travel plan and enjoy their trip with peace of mind, thanks to the detailed itinerary and personalized guide information. The introduction of the emotion engine makes it possible to propose flexible plans based on the user's current emotions, resulting in a more satisfying travel experience.
[0703] Example 2
[0704] 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."
[0705] Conventional travel planning systems propose plans based on the user's travel conditions, but they are unable to consider the user's emotions or individual needs, and the proposed plans do not necessarily increase user satisfaction. Furthermore, they do not provide sufficient navigation or personal tour guides during the trip, leaving many inconveniences in trip planning and implementation.
[0706] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes: an input means for receiving a user's travel conditions in free words; an analysis means for analyzing the travel conditions received from the input means; a comparison means for collating an optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means; a generation means for generating multiple optimal travel plans for the user from the travel plans collated by the comparison means; a proposal means for proposing the travel plans generated by the generation means to the user; an emotion analysis means for analyzing the user's emotions; an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user; an output means for providing the itinerary generated by the itinerary generation means to the user; a tour guide provision means for providing personalized tour guide information and emotion information according to the user's age and knowledge level; and a navigation means for presenting an optimal route based on the travel plan in cooperation with map software. This makes it possible to propose optimal travel plans according to the user's emotions and individual needs, and to provide personalized tour guide information and navigation.
[0707] "Input means" refers to a device or software that accepts travel conditions from the user as free word input.
[0708] "Analysis means" refers to a device or software that analyzes the travel conditions received from the input means and extracts specific keywords and related information.
[0709] The "collation means" refers to a device or software that collates the optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means.
[0710] The "generation means" refers to a device or software that generates a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[0711] The "suggestion means" refers to a device or software that proposes to the user the travel plan generated by the generation means.
[0712] "Emotion analysis means" refers to a device or software that analyzes a user's emotions by analyzing the user's input data, voice, facial expressions, etc.
[0713] "Itinerary generation means" refers to a device or software that generates an original itinerary based on a travel plan determined by a user.
[0714] "Output Means" means any device or software that provides the generated itinerary or other information to the user.
[0715] "Tour guide providing means" refers to a device or software that provides personalized tour guide information according to the user's age, knowledge level, and emotional information.
[0716] "Navigation means" refers to a device or software that works in conjunction with map software to present the optimal route based on a travel plan.
[0717] "Map Software" means a program that provides road, route, and geographic information to assist users in navigating the area.
[0718] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with data from multiple travel databases, generates and proposes an optimal travel plan, and provides detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with map software.
[0719] First, the user launches a dedicated application on their smartphone and enters travel conditions (area, sightseeing genre, date and time, number of people, etc.). For example, the user might enter free words such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days." The entered data is sent from the device to the server.
[0720] The server uses a natural language processing library (NLTK, spaCy) running on Python to analyze the received travel conditions. As a result of the analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted. Next, the server uses an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics) to analyze the user's emotions. The emotion engine infers emotions from the input text, the user's tone of voice, and facial expressions. This allows it to obtain emotional information such as "the user is excited."
[0721] Based on the analyzed travel conditions and sentiment information, the server accesses multiple travel information provider APIs (e.g., Expedia API, Travelport API) to obtain data on relevant travel plans. Because the amount of plan data obtained is enormous, the server uses a generative AI model (OpenAI GPT, Google BERT) to generate a travel plan that best suits the user's conditions and sentiment. This plan generation takes into account price, accessibility, and review ratings.
[0722] The generated itineraries are sent from the server to the device and presented to the user. The user can compare the itineraries displayed on the device screen and select and customize the most suitable one. For example, they can change specific tourist spots or accommodations. The plan selected and customized by the user is then sent back to the server from the device.
[0723] Based on the confirmed plan, the server generates an original travel itinerary, which includes information on accommodation reservations, details of tourist attractions, places to eat, transportation, etc. This information is sent from the server to the terminal and provided to the user.
[0724] In addition, the server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places where the user can relax if they are tired. This tour guide information is also sent from the server to the terminal and provided to the user.
[0725] Finally, the server connects with map software (Google Maps, Apple Maps) to obtain the optimal route based on the confirmed itinerary. This includes walking routes, public transport routes, car routes, etc. The obtained information is sent to the device and provides real-time navigation.
[0726] For example, a user might enter a prompt into the app: "I want to see the cherry blossoms in Tokyo. I'm planning a three-day trip for two people. What travel plans do you recommend?" Based on this prompt, the server analyzes and generates an optimal travel plan, which is then presented to the device, allowing the user to plan their trip.
[0727] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0728] Step 1:
[0729] The user launches the smartphone application and inputs travel conditions (area, sightseeing genre, date and time, number of people, etc.). At this time, they input in free-word format, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days," and the data is sent to the server. The input data is raw text information.
[0730] Step 2:
[0731] The device sends the input data to the server. The server uses natural language processing libraries (NLTK, spaCy) that run on Python to analyze the input data. It analyzes the text data and extracts keywords such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days." This outputs structured data that has been analyzed from the raw text data.
[0732] Step 3:
[0733] The server runs an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics). The emotion engine estimates emotions from the input text, the user's tone of voice, and facial expressions. This analysis yields emotional information indicating the user's excitement. The input is the analyzed keywords and the user's voice and facial expression data, and the output is emotional information.
[0734] Step 4:
[0735] Based on the analyzed travel conditions and emotional information, the server accesses multiple travel information APIs (Expedia API, Travelport API) to obtain data on the relevant travel plans. The obtained data is stored in JSON format. At this point, the server processes a huge amount of data and extracts a list of relevant travel plans. The input is the analyzed keywords and emotional information, and the output is a list of travel plans.
[0736] Step 5:
[0737] The server generates optimal itineraries based on the acquired itinerary data using generative AI models (OpenAI GPT, Google BERT). This filtering takes into account price, accessibility, review ratings, and sentiment information. The list of generated itineraries is again stored in JSON format. The input is a list of itineraries, and the output is a list of optimal itineraries.
[0738] Step 6:
[0739] The server sends the optimal travel plan to the device and displays it on the device screen. The user reviews it and selects and customizes the plan that best suits them. For example, they can change specific tourist spots or accommodations. The customized plan is then sent from the device to the server. The input is the user's selection and customization information, and the output is the updated travel plan.
[0740] Step 7:
[0741] The server generates an original travel itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation. The generated itinerary information is again stored in JSON format and sent to the terminal. The input is the confirmed travel plan, and the output is the original itinerary.
[0742] Step 8:
[0743] The server generates personalized tour guide information based on the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places and activities where people can relax. This information is sent to the terminal and provided to the user. The input is the user's age, knowledge level, and emotional information, and the output is personalized tour guide information.
[0744] Step 9:
[0745] The server works with map software to obtain the optimal travel route based on the confirmed travel plan. This includes walking routes, public transportation routes, and car routes. The obtained traffic and route information is sent to the device, which provides real-time navigation. The input is the confirmed travel plan, and the output is the optimal travel route.
[0746] Through the above processing flow, users can obtain the optimal travel plan based on their individual needs and feelings, and can enjoy their entire trip efficiently and with a high level of satisfaction.
[0747] (Application example 2)
[0748] 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."
[0749] Current food delivery services lack mechanisms for suggesting optimal menu items based on users' individual emotions and preferences. This makes it difficult for users to select a menu that matches their mood and situation, resulting in low satisfaction. Furthermore, it is difficult to track delivery routes and delivery status in real time, leaving room for improvement in the overall user experience.
[0750] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0751] In this invention, the server includes an input means for receiving free word ordering conditions from a user, an analysis means for analyzing the ordering conditions received from the input means, a comparison means for collating an optimal menu from databases of multiple food delivery systems based on the ordering conditions analyzed by the analysis means, a generation means for generating multiple menus optimal for the user from the menus compared by the comparison means, a proposal means for proposing the menus generated by the generation means to the user, a plan generation means for generating an original delivery plan based on the menu confirmed by the user, an output means for providing the plan generated by the plan generation means to the user, a food information provision means for providing personalized food information according to the age and emotional information of the user, and a navigation means for presenting an optimal route based on the menu in cooperation with a map application. This enables the proposal of an optimal menu based on the user's emotions and situation and real-time management of delivery routes and statuses.
[0752] The "input means" is a means for accepting order conditions from the user in free words.
[0753] The "analysis means" is a means for analyzing the order conditions received from the input means.
[0754] The "checking means" is a means for checking the databases of a plurality of food serving systems to find the most suitable menu based on the order conditions analyzed by the analyzing means.
[0755] The "generation means" is a means for generating a plurality of menus that are optimal for the user from among the menus collated by the collation means.
[0756] The "proposing means" is a means for proposing the menu generated by the generating means to the user.
[0757] The "plan generation means" is a means for generating an original delivery plan based on a menu determined by the user.
[0758] The "output means" is a means for providing the plan generated by the plan generation means to the user.
[0759] The "cooking information providing means" is a means for providing personalized cooking information according to the age and emotional information of the user.
[0760] The "navigation means" is a means for presenting the optimum route based on the menu in cooperation with a map application.
[0761] The present invention will be described using a smartphone-based food delivery system as an example. This system allows users to input information such as meal requirements, budget, and number of people, and analyzes emotional information to suggest the optimal menu. It also has a function that allows users to track delivery routes and status in real time.
[0762] First, the user enters the order conditions using a smartphone application. This input method can accept free words, such as "pizza, spicy, for three people, budget 5,000 yen."
[0763] The entered data is sent from the smartphone to a server. The server analyzes the input data using natural language processing technology (for example, Google Cloud Natural Language API) and identifies the order conditions. The results of this analysis are converted into specific condition information such as "pizza," "spicy," "3 people," and "5,000 yen."
[0764] Next, the server uses an emotion analysis engine (e.g., Affdex SDK) to estimate the user's emotion from their input, tone of voice, facial expression, etc. As a result, emotional information such as "excited" or "relaxed" can be obtained.
[0765] The server accesses multiple food delivery systems (e.g., Zomato API and Yelp API) based on the analyzed order conditions and emotion information to retrieve the corresponding menu data. Because the retrieved menu data is often huge, it is filtered to generate a menu that best suits the user's conditions and emotions.
[0766] The generated menu is displayed on the smartphone in a way that makes it easy for users to compare. Users can compare the multiple suggested menus and select or customize the most suitable menu. For example, they can customize the "Hot Pepper Pizza (4,500 yen, very spicy)" by adding cheese.
[0767] Once the user has determined the optimal menu, the information is sent to the server, which then generates a custom delivery plan based on the determined menu, including information such as delivery route, delivery time, and delivery status.
[0768] The delivery plan is linked to a map app (e.g., Google Maps API) to obtain the optimal route and is displayed in real time on the smartphone, making it easier for users to keep track of the delivery progress.
[0769] Furthermore, the server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone. For example, it suggests "kid-friendly menus" for families with children, and "menus that can be prepared quickly" for busy business people.
[0770] As a concrete example, suppose a user launches the app and enters "Belgian waffles, something sweet, for two people, budget 3000 yen." The following prompt is used:
[0771] Analyze the user's request and extract the conditions: Belgian waffles, sweet food, for two people, budget 3000 yen. Furthermore, suggest the optimal menu based on the user's current emotions.
[0772] The emotion analysis engine analyzes the user's emotions and infers, for example, that they are "relaxed." Based on this result, the system filters data obtained from multiple food delivery systems to generate and suggest the optimal menu.
[0773] In this way, the system can suggest optimal menus based on the user's emotions and situation, and manage delivery routes and status in real time.
[0774] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0775] Step 1:
[0776] The user launches the application on their smartphone and enters the ordering conditions (type of meal, budget, number of people, etc.) using free words.
[0777] Input: User requirements (e.g., "Pizza, spicy, for 3 people, budget 5,000 yen")
[0778] What it does: A smartphone app accepts user input.
[0779] Output: The accepted input data
[0780] Step 2:
[0781] The terminal transmits the input data to the server.
[0782] Input: The input data received
[0783] How it works: The smartphone app sends input data over the network to the server.
[0784] Output: Input data received on the server side
[0785] Step 3:
[0786] The server analyzes the input data using natural language processing technology (e.g., Google Cloud Natural Language API) and identifies the order conditions.
[0787] Input: The input data received by the server (e.g., "Pizza, spicy, 3 people, budget 5,000 yen")
[0788] Operation: The server performs natural language processing, analyzes the text data, and extracts condition information.
[0789] Output: Analyzed condition data (e.g. "pizza", "spicy", "3 people", "5000 yen")
[0790] Step 4:
[0791] The server uses an emotion analysis engine (e.g., Affdex SDK) to estimate emotions from the user's text, tone of voice, facial expressions, etc.
[0792] Input: User-entered text and voice data
[0793] Operation: The server runs the emotion analysis engine and estimates emotion information.
[0794] Output: Estimated emotion information (e.g., "excited")
[0795] Step 5:
[0796] Based on the analyzed order conditions and emotion information, the server accesses the APIs of multiple food delivery systems (e.g., Zomato API, Yelp API) and retrieves the corresponding menu data.
[0797] Input: Parsed order conditions, sentiment information
[0798] Operation: The server sends a request to the API of each food delivery system to obtain menu information.
[0799] Output: Retrieved menu data
[0800] Step 6:
[0801] The server filters the acquired menu information and generates a menu that best suits the user's conditions and emotions.
[0802] Input: Retrieved menu data
[0803] How it works: The server runs an algorithm that filters data based on criteria and selects the best menu.
[0804] Output: Optimal menu (e.g. "Hot Pepper Pizza (4500 yen, very spicy)")
[0805] Step 7:
[0806] The server proposes the generated menu to the user.
[0807] Enter: Optimal Menu
[0808] How it works: The server sends the optimal menu to the smartphone app.
[0809] Output: Optimal menu displayed on smartphone
[0810] Step 8:
[0811] The user compares the proposed menus and selects or customizes the most suitable menu.
[0812] Input: Menu options displayed on your smartphone
[0813] What it does: The user taps on the provided menu to select or customize.
[0814] Output: Selected optimal menu or customized menu
[0815] Step 9:
[0816] The server generates an original delivery plan based on the menu determined by the user.
[0817] Input: Selected or customized menu
[0818] Operation: The server runs an algorithm that generates a delivery plan based on the user's menu selections.
[0819] Output: The generated delivery plan
[0820] Step 10:
[0821] The server works with a map app (e.g., Google Maps API) to obtain the optimal delivery route based on the confirmed menu and displays it on the smartphone in real time.
[0822] Input: Generated delivery plan
[0823] How it works: The server calls the map app's API to obtain route information and sends it to the smartphone.
[0824] Output: Real-time delivery route displayed on a smartphone map app
[0825] Step 11:
[0826] The server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone.
[0827] Input: User's age information, emotional information, confirmed menu
[0828] How it works: The server runs an algorithm that generates appropriate cooking information based on age and emotions, and sends it to the smartphone.
[0829] Output: Personalized recipe information displayed on a smartphone
[0830] 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.
[0831] 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.
[0832] 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.
[0833] [Third embodiment]
[0834] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0835] 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.
[0836] 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).
[0837] 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.
[0838] 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.
[0839] 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).
[0840] 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.
[0841] 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.
[0842] 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.
[0843] 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.
[0844] 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.
[0845] 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."
[0846] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0847] Program processing
[0848] 1. User input of travel conditions:
[0849] Users start the application on their smartphone and enter their desired travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words, such as "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0850] 2. Parse user input:
[0851] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and extract and identify travel conditions. Specifically, the data is broken down into categories such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days."
[0852] 3. Travel Plan Verification:
[0853] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves multiple travel plans. The retrieved plan information is filtered according to the user's conditions.
[0854] 4. Travel plan generation and suggestions:
[0855] The server generates multiple travel plans that are optimal for the user based on the filtered travel plan data. The generated multiple plans are sent to the user's device, which displays them. The user can compare these plans and select or customize the optimal plan.
[0856] 5. Create your original itinerary:
[0857] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates an original travel itinerary based on the determined plan and sends it to the device. This itinerary includes accommodation reservation information, details of tourist attractions, and a schedule.
[0858] 6. Personal tour guide provided:
[0859] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. For example, it provides detailed historical background for history buffs, while providing educational and entertaining information for children. This information is then sent to the device.
[0860] 7. Navigation Support:
[0861] The server works with the map app to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device, which then provides real-time navigation. For example, the device may display the optimal route from the user's current location to a tourist spot and provide instructions on how to use public transportation.
[0862] Specific examples
[0863] 1. The user enters the following conditions: "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0864] 2. The server analyzes the data sent from the device and organizes the conditions.
[0865] 3. The server accesses the APIs of multiple travel agencies to obtain the best cherry blossom sightseeing plans for spring in Kyoto.
[0866] 4. The server proposes multiple plans for cherry blossom sightseeing in Kyoto to the user. The user selects Plan B and adds specific tourist spots.
[0867] 5. Based on the confirmed plan, the server generates an original itinerary and provides it to the terminal.
[0868] 6. The server takes into account the user's age and interests and provides personalized tour guide information including the history and highlights of cherry blossom viewing spots.
[0869] 7. The server works with the map app to provide the optimal access method based on the travel plan and perform real-time navigation on the device.
[0870] This allows users to easily plan their trips and enjoy an efficient and satisfying trip.
[0871] The processing flow will be explained below.
[0872] Step 1:
[0873] Users launch the application on their smartphone and enter travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[0874] Step 2:
[0875] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology and identifies the travel conditions. As a result of the analysis, information such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days" is extracted.
[0876] Step 3:
[0877] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves the relevant travel plan data. The retrieved plan data can be enormous in volume, as it is provided by various travel agencies.
[0878] Step 4:
[0879] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's requirements, taking into account factors such as price, accessibility, and reviews.
[0880] Step 5:
[0881] The server sends the generated travel plans to the user's device, which then displays the plans on the screen and presents them to the user in an easy-to-compare format.
[0882] Step 6:
[0883] Users can compare the multiple plans displayed and select the one they prefer. They can also customize the plan by adding or changing tourist attractions and accommodations as needed.
[0884] Step 7:
[0885] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates an original travel itinerary based on the confirmed plan.
[0886] Step 8:
[0887] The server then sends the generated original itinerary to the user's device, which includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation options.
[0888] Step 9:
[0889] The server generates tour guide information tailored to the user's age and level of knowledge, including friendly explanations and child-friendly activity information for families with children, for example.
[0890] Step 10:
[0891] The server then sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[0892] Step 11:
[0893] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[0894] Step 12:
[0895] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[0896] This process allows users to easily create the perfect travel plan for themselves, and enjoy their trip with peace of mind, knowing they have a detailed itinerary and information.
[0897] Example 1
[0898] 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."
[0899] With conventional travel planning systems, users had to manually compare plans across multiple travel agency websites, requiring a great deal of time and effort to find the optimal travel plan. Furthermore, they often only provided partial suggestions that only met some of the travel requirements, and lacked personalized suggestions tailored to individual users' needs. Furthermore, they lacked detailed itineraries based on travel plans or real-time navigation support. Therefore, a new system was needed that would streamline the entire travel planning process and increase user satisfaction.
[0900] 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.
[0901] In this invention, the server includes input means for accepting travel conditions from a user in free words, transmission means for transmitting the travel condition data accepted from the input means to the server, analysis means for analyzing the transmitted travel condition data using natural language processing technology, comparison means for retrieving an optimal travel plan from databases of multiple travel information providing systems based on the travel conditions analyzed by the analysis means, generation means for generating multiple travel plans optimal for the user from the travel plans retrieved by the comparison means, proposal means for proposing the travel plans generated by the generation means to the user, itinerary generation means for generating an original itinerary based on the travel plans selected and customized by the user, output means for providing the itinerary generated by the itinerary generation means to the user, tour guide provision means for providing personalized tour guide information according to the user's age, knowledge level, and areas of interest, and navigation means for presenting an optimal route based on the travel plan in cooperation with a map application. This solves the problems faced by conventional travel planning systems and enables users to plan and implement efficient and personalized travel plans.
[0902] "User" means an individual or organization that intends to use this system to create a travel plan.
[0903] "Travel conditions" are detailed information about a trip specified by a user, and include elements such as area, sightseeing genre, date and time, and number of people.
[0904] "Free words" are phrases or sentences that users can freely enter in text format, and are not limited to a specific form or options.
[0905] "Input means" refers to the interface through which the user inputs travel conditions, such as a smartphone application or web form.
[0906] The "transmission means" is a device or software having a function of transmitting the travel condition data received from the input means to the server.
[0907] "Server" refers to a computer system that analyzes input data, collates information, and generates and proposes travel plans.
[0908] The "analysis means" is software or hardware for analyzing the transmitted travel condition data, and is characterized by the use of natural language processing technology.
[0909] "Natural language processing technology" refers to technology that enables computers to understand and analyze human language, and includes, for example, text analysis and context understanding.
[0910] The "collation means" is a device or software that has the function of obtaining the optimal travel plan from a plurality of travel information providing systems based on the travel conditions analyzed by the analysis means.
[0911] A "travel information system" is an online service or database that provides an API to provide travel plans and tourist information.
[0912] The "generation means" is a device or software that has the function of creating multiple travel plans that are optimal for the user from among the travel plans obtained by the comparison means.
[0913] The "proposal means" is a device or software that has the function of presenting the travel plan created by the creation means to the user.
[0914] "Selecting and customizing" means that the user can choose the most suitable travel plan from the suggested plans and modify the plan as needed.
[0915] "Itinerary Generator" means a device or software capable of generating a detailed travel itinerary based on a user's selected and customized travel plan.
[0916] The "output means" is an interface or display device for providing the itinerary generated by the itinerary generation means to the user.
[0917] A "tour guide providing means" is a device or software that has the function of providing personal guide information that is useful during a trip according to the user's age, knowledge level, and areas of interest.
[0918] A "navigation means" is a device or software that has the function of presenting the optimal route based on a travel plan and linking with a map application.
[0919] A "map application" is an online service or application that provides geographic information and enables users to find the best route to their destination.
[0920] This system allows users to input their travel requirements, and the server analyzes, collates, generates, and proposes the optimal travel plan. The system is primarily composed of user devices, an analysis server, and various API-linked systems.
[0921] First, the user uses a dedicated application on a device such as a smartphone or PC to enter their travel conditions in free-word format. This input method is provided through an interface such as a text box. The travel conditions entered by the user (for example, "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days") are converted into JSON format by the device and sent to the server using the HTTPS protocol.
[0922] The server then receives the data and analyzes it using natural language processing technology (e.g., Google NLP API). As a result of the analysis, the travel conditions are broken down into individual elements (e.g., "Kyoto," "cherry blossom viewing," "spring," "3 people," "2 nights, 3 days").
[0923] Based on the analyzed travel condition data, the server accesses multiple travel information systems (for example, databases provided through the APIs of multiple travel agencies) to obtain travel plans that match the conditions. Next, it filters the obtained plans to find the one that best suits the user's conditions, and uses a generation means to propose the results to the user as multiple optimal travel plans. These proposals are displayed on the screen of the user's device, and the user can compare them to select the best plan and customize it as needed.
[0924] Furthermore, once the user selects and customizes the optimal travel plan, that information is again sent from the device to the server. The server uses this information to generate a detailed travel itinerary. This itinerary includes accommodation reservation confirmations, details of tourist attractions, and a schedule of activities for each day. The generated itinerary information is again sent to the device and provided to the user.
[0925] In addition, the server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. This information includes, for example, the history and cultural background of the tourist spot, as well as explanations of the attractions, and is sent to the user's device for presentation.
[0926] Finally, the server connects with a map application (e.g., Google Maps) to obtain the optimal route based on the travel plan. This sends real-time navigation information, including directions on how to use public transport and the shortest route to tourist spots, to the user's device, allowing the user to enjoy sightseeing smoothly while traveling.
[0927] Specific examples
[0928] When a user enters the search criteria "Kyoto, sightseeing, spring, cherry blossoms, three people, two nights and three days," the information is sent to the server via the device. The server analyzes this information using the Google NLP API and sends requests to the APIs of multiple travel agencies to obtain the optimal cherry blossom sightseeing plan. It then filters out plans that do not match the search criteria and presents multiple travel plan options that best suit the user. If the user selects "Plan B" and requests an additional visit to "Arashiyama," the server generates a detailed itinerary based on the information. This itinerary includes accommodation reservations, details of tourist attractions, and a schedule for each day, and is sent to the device. Furthermore, if the user is interested in history, the server also provides detailed guide information about the cultural background of Arashiyama and cherry blossoms. Finally, the server works with Google Maps to calculate the optimal access method and sends that information to the device, where real-time navigation is performed.
[0929] Example prompts (for generative AI models)
[0930] "I'm planning a trip. Please suggest the best itinerary for Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days. Also, please provide a detailed itinerary based on the itinerary, as well as personalized guide information for each tourist spot."
[0931] This system allows users to plan trips efficiently and with high satisfaction, and also provides comfortable guidance to their destinations during their trip.
[0932] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0933] Step 1:
[0934] Using a dedicated application on the device, the user enters travel conditions in free-word format. This input is done via a text box or voice recognition function. For example, the user might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days." The device then converts this input data into JSON format and prepares it for transmission.
[0935] Input: Travel conditions entered by the user ("Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days")
[0936] Output: JSON formatted travel conditions data
[0937] Step 2:
[0938] The terminal securely sends the converted JSON data to the server using the HTTPS protocol, and then waits for a response from the server.
[0939] Input: JSON format travel condition data
[0940] Output: Status of sending to server
[0941] Step 3:
[0942] The server analyzes the JSON data received from the device and uses natural language processing technology (e.g., Google NLP API) to break down the travel conditions into their individual elements, such as "Kyoto," "sightseeing," "spring," "cherry blossoms," "3 people," and "3 days and 2 nights."
[0943] Input: JSON format travel condition data
[0944] Output: Each element of the analyzed travel conditions ("Kyoto", "sightseeing", "spring", "cherry blossoms", "3 people", "2 nights, 3 days")
[0945] Step 4:
[0946] Based on each element of the analyzed travel conditions, the server accesses the APIs of multiple travel information providers and retrieves relevant travel plans in real time. For example, it queries the databases of multiple travel agencies to retrieve "cherry blossom sightseeing plans suitable for spring in Kyoto."
[0947] Input: Each element of the analyzed travel conditions
[0948] Output: A dataset of the retrieved travel plans
[0949] Step 5:
[0950] The server filters the acquired travel plan data according to the user's criteria, for example, excluding plans that do not match the budget or date and time, and extracts plans that meet the criteria.
[0951] Input: The retrieved travel plan dataset
[0952] Output: A filtered list of itineraries
[0953] Step 6:
[0954] The server generates a plurality of travel plans that are particularly suitable for the user from among the filtered travel plans and transmits the results to the terminal.
[0955] Input: A filtered list of itineraries
[0956] Output: A list of generated optimal itineraries, and the status of sending them to the device
[0957] Step 7:
[0958] The device displays a list of optimal travel plans sent from the server to the user, who can then compare these plans, select the best one, and customize it, for example by adding specific attractions or changing the date and time.
[0959] Input: A list of generated optimal itineraries
[0960] Output: User selected and customized itinerary
[0961] Step 8:
[0962] The device sends the information about the user's selected and customized travel plan to the server, which is also converted into JSON format.
[0963] Input: User-selected and customized travel plans
[0964] Output: Customized itinerary data in JSON format, status of sending to server
[0965] Step 9:
[0966] The server generates a detailed travel itinerary based on the user's selected and customized travel plan information, including, for example, confirmation of accommodation reservations, details of tourist attractions, and planned activities for each day.
[0967] Input: Customized itinerary data in JSON format
[0968] Output: Generated detailed itinerary
[0969] Step 10:
[0970] The server then sends the generated detailed itinerary to the user's device, allowing the user to check the itinerary on the device.
[0971] Input: Generated detailed travel itinerary
[0972] Output: Sending status to user's device, detailed travel itinerary
[0973] Step 11:
[0974] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest, including historical and cultural background of the tourist spot, and descriptions of the attractions. This information is then sent to the device and provided to the user.
[0975] Input: User's age, knowledge level, areas of interest
[0976] Output: Generated personal tour guide information, sending status to the device
[0977] Step 12:
[0978] The server works with a map application to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device and provided as real-time navigation information on the device.
[0979] Input: Generated detailed travel itinerary, link information with map application
[0980] Output: Acquired travel route, traffic information, transmission status to the terminal
[0981] (Application example 1)
[0982] 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."
[0983] Modern travel planning and sightseeing destination exploration involve a wealth of information, but it is difficult to efficiently utilize this information and provide travel plans and tourist information tailored to user needs. In particular, there are many challenges in providing content tailored to users' interests and conditions, and in generating personalized guide information. There is a need for a system that can integrate this information and provide it in the most optimal form for users.
[0984] 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.
[0985] In this invention, the server includes an input means for accepting a user's travel conditions in free words, an analysis means for analyzing the travel conditions accepted from the input means, a comparison means for collating an optimal travel plan from databases of multiple travel agencies based on the travel conditions analyzed by the analysis means, a generation means for generating multiple travel plans optimal for the user from the travel plans collated by the comparison means, a proposal means for proposing to the user the travel plans generated by the generation means, an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user, an output means for providing to the user the itinerary generated by the itinerary generation means, a tour guide provision means for providing personalized tour guide information according to the user's age and knowledge level, a navigation means for presenting an optimal route based on the travel plan in cooperation with a map application, a video acquisition means for acquiring and recommending related video content based on the user's travel conditions, and a video recommendation means for personalizing the video content acquired by the video acquisition means and suggesting it to the user. This makes it possible to provide travel plans, itineraries, tourist information, and video content appropriate to the user's requests.
[0986] The "input means" is a means for accepting travel conditions from the user in free words.
[0987] The "analysis means" is a means for analyzing the travel conditions received from the input means.
[0988] The "collation means" is a means for collating the optimum travel plan from the databases of a plurality of travel agencies based on the travel conditions analyzed by the analysis means.
[0989] The "generation means" is a means for generating a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[0990] The "proposing means" is a means for proposing the travel plan generated by the generating means to the user.
[0991] The "itinerary generation means" is a means for generating an original itinerary based on a travel plan determined by a user.
[0992] The "output means" is a means for providing the itinerary generated by the itinerary generation means to the user.
[0993] The "tour guide providing means" is a means for providing personalized tour guide information according to the age and knowledge level of the user.
[0994] The "navigation means" is a means for presenting the optimum route based on the travel plan in cooperation with a map application.
[0995] "Video acquisition means" refers to a means of acquiring and recommending relevant video content based on the user's travel conditions.
[0996] The "video recommendation means" is a means for personalizing video content acquired by the video acquisition means and proposing it to the user.
[0997] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[0998] System configuration
[0999] This system mainly consists of the following means:
[1000] 1. Input method: Accept travel conditions from users in free words. This is mainly realized by a smartphone application, and users input their desired travel conditions.
[1001] 2. Analysis means: Analyzes the travel conditions received from the input means. For analysis, natural language processing technology (such as TensorFlow or Hugging Face's BERT model) is used to extract the necessary conditions from the user's free words.
[1002] 3. Matching means: Matches the optimal travel plan from the databases of multiple travel agencies based on the travel conditions analyzed by the analysis means. Specifically, it calls the travel agency's API to obtain related travel plans.
[1003] 4. Generation means: Generates a plurality of travel plans optimal for the user from among the travel plans collated by the collation means, using an algorithm that filters optimal plans based on the user's conditions.
[1004] 5. Proposal means: The travel plans generated by the generation means are proposed to the user, who can compare them and select the most suitable plan.
[1005] 6. Itinerary Generation: Generates an original itinerary based on the user's confirmed travel plan, including accommodation reservation information, tourist attraction details, and itinerary.
[1006] 7. Output means: The itinerary generated by the itinerary generation means is provided to the user via the smartphone application screen or email.
[1007] 8. Tour guide provision means: Providing personalized tour guide information according to the user's age and knowledge level, such as information explaining the historical background and highlights of tourist spots.
[1008] 9. Navigation: Based on the travel plan, the optimal route is presented in cooperation with a map app, allowing users to receive real-time navigation.
[1009] 10. Video Acquisition Method: Based on the user's travel conditions, relevant video content is acquired and recommended. This process uses the YouTube API and Vimeo API.
[1010] 11. Video recommendation means: Personalizes the video content acquired by the video acquisition means and suggests it to the user. Based on the user's viewing history and ratings, the accuracy of recommendations will be improved from the next time onwards.
[1011] Example of a system
[1012] For example, consider a prompt that asks a user to search for a video about visiting museums in Paris in the fall.
[1013] User input conditions: Paris, sightseeing, museum, autumn, 2 people, 5 days
[1014] Prompt statement:
[1015] "Look for tourism videos about museums in Paris. Videos that include autumn-related tourist information and museum introductions are especially preferred."
[1016] In this way, users can view the most suitable travel content as a way to prepare for their travel destination, enabling them to have a more fulfilling travel experience.
[1017] Hardware and Software Use
[1018] Hardware: smartphones, servers
[1019] Software: React Native (front-end), Node.js + Express (back-end), TensorFlow (natural language processing), YouTube API (video acquisition), Vimeo API (video acquisition)
[1020] Data processing and calculation
[1021] Free word input analysis: Using natural language processing technology, conditions are extracted from free words.
[1022] Travel plan matching: Call the travel agency's API to obtain travel plan data.
[1023] Video retrieval and recommendation: Retrieve and personalize videos and present them to the user.
[1024] The present invention allows users to easily plan their trips and enjoy efficient and satisfying trips. In addition, the present invention allows users to simultaneously enjoy entertainment content related to their trips, thereby enriching the user's overall travel experience.
[1025] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1026] Step 1:
[1027] The user enters travel conditions. The user launches the smartphone application and enters travel conditions using free words, such as "Paris, sightseeing, museum, autumn, 2 people, 5 days." The entered travel conditions are sent from the device to the server. The input data is sent in text format and parsed into JSON format.
[1028] Step 2:
[1029] The server analyzes the travel conditions. The server uses natural language processing technology (TensorFlow or Hugging Face's BERT model) to analyze the received travel conditions data. The analysis process breaks down the input data and extracts elements such as the destination, sightseeing genre, date and time, and number of people. The analyzed data is converted into a structured format (e.g., a JSON object) for use in the next step.
[1030] Step 3:
[1031] The server matches the itineraries. Based on the conditions analyzed in the previous step, the server calls the APIs of multiple travel agencies to obtain the data of related itineraries. As a result of the API call, multiple itineraries are returned. These itineraries are temporarily stored on the server side.
[1032] Step 4:
[1033] The server generates an optimal itinerary. From the obtained itineraries, a filtering algorithm is used to select multiple itineraries that best meet the user's requirements. The selected itineraries are those that best meet the user's requirements, and each plan is assigned a rating score. These itineraries are prepared to be proposed to the user in the next step.
[1034] Step 5:
[1035] The server proposes travel plans to the user. The selected travel plans are sent to the user's device and displayed on the device's application screen. The user can compare these plans and select the best one. The user's input is sent back to the server.
[1036] Step 6:
[1037] The server generates an original itinerary based on the travel plan confirmed by the user. This itinerary includes accommodation reservation information, tourist attraction details, schedules, etc. The generated itinerary is then sent to the user's device in a structured data format.
[1038] Step 7:
[1039] The server generates personalized tour guide information. Detailed tour guide information is generated based on the user's age, knowledge level, and areas of interest. For example, a user interested in history can be provided with detailed information explaining the historical background of tourist attractions. This information is sent to the user's device.
[1040] Step 8:
[1041] The server provides navigation information. The server connects with the map app to obtain the optimal route based on the travel plan. The obtained route information is updated in real time and sent to the user's device. The user's current location and the optimal route to the destination are displayed on the map.
[1042] Step 9:
[1043] The server retrieves video content. Based on the user's travel conditions, it calls the YouTube API or Vimeo API to retrieve relevant video content. For example, it retrieves tourist videos that match the conditions "Paris, museums, autumn." This video list is temporarily stored on the server.
[1044] Step 10:
[1045] The server recommends video content. An algorithm is used to personalize the retrieved video content and suggest it to the user. Based on the user's viewing history and ratings, the most relevant video is selected and sent to the user's device. This allows the user to prepare for their trip by watching videos.
[1046] Through the above processing steps, the system provides users with optimal travel plans and related entertainment content, supporting a more fulfilling travel experience.
[1047] 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.
[1048] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with that of multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[1049] Program processing
[1050] 1. User input of travel conditions:
[1051] Users start the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they can enter "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[1052] 2. Parse user input:
[1053] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and identify the travel conditions. As a result of this analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted.
[1054] 3. User sentiment analysis:
[1055] The server uses the analyzed conditions and an emotion engine to analyze the user's emotion at the time of input. The emotion engine infers emotion from the input text, the user's tone of voice, facial expression, etc. As a result, emotional information such as "The user is excited" or "The user is relaxed" can be obtained.
[1056] 4. Travel Plan Verification:
[1057] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and user sentiment information to obtain data on relevant travel plans. The obtained plan data can be enormous in volume, as it is provided by various travel agencies.
[1058] 5. Travel plan generation and suggestions:
[1059] The server filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotions, taking into account price, accessibility, reviews, and emotional information.
[1060] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them to the user in an easy-to-compare format.
[1061] 6. User Plan Selection and Customization:
[1062] Users can compare the different plans displayed and select or customize the plan that best suits them, for example by changing specific attractions or accommodations.
[1063] 7. Create original itinerary:
[1064] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates a custom itinerary based on the plan. The itinerary includes information such as accommodation reservations, details of tourist attractions, dining options, and transportation options.
[1065] 8. Personal tour guide provided:
[1066] The server generates tour guide information based on the user's age, knowledge level, and emotional information, including family-friendly and elderly-friendly tourist spots, and suggests relaxing places and activities if the user is tired.
[1067] The server sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[1068] 9. Navigation Support:
[1069] Based on the confirmed travel plan, the server connects with the map app to obtain the optimal travel route, including walking routes, public transport routes, and car routes.
[1070] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[1071] Specific examples
[1072] 1. The user enters the conditions "Tokyo, sightseeing, cherry blossoms, two people, three days," and the device sends the data to the server.
[1073] 2. The server analyzes the data and extracts the following conditions: "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[1074] 3. The server uses the emotion engine to obtain emotion information that the user is excited.
[1075] 4. The server accesses the APIs of multiple travel agencies and retrieves the relevant travel plans.
[1076] 5. The server filters the analyzed travel conditions and emotion information to generate the optimal plan.
[1077] 6. The user compares the proposed plans and selects and customizes the most suitable plan.
[1078] 7. The server generates an original itinerary based on the confirmed plan and sends it to the terminal.
[1079] 8. The server generates tour guide information based on age and emotional information and sends it to the user's device.
[1080] 9. The server connects with the map app to obtain the optimal route and sends it to the device, which then provides real-time navigation.
[1081] This allows users to easily plan their trips and enjoy their trip with peace of mind, knowing they have the best travel plans and information to suit their emotions.
[1082] The processing flow will be explained below.
[1083] Step 1:
[1084] Users launch the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people) in free words, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[1085] Step 2:
[1086] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology to identify the travel conditions. This analysis extracts information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[1087] Step 3:
[1088] The server uses the analyzed conditions and the emotion engine to analyze the emotion of the user's input. The emotion engine infers the emotion from the input text, tone of voice, and facial expression. As a result, the emotion information that "the user is excited" is obtained.
[1089] Step 4:
[1090] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and emotion information to obtain travel plan data. The plan data provided by each travel agency includes a wide range of information.
[1091] Step 5:
[1092] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotional information. Filtering takes into account price, accessibility, reviews, and emotional information.
[1093] Step 6:
[1094] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them in a way that makes it easy for the user to compare them.
[1095] Step 7:
[1096] Users can compare multiple plans displayed on their device and select or customize the plan that best suits them, for example, by changing specific attractions or accommodations.
[1097] Step 8:
[1098] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates a custom itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, dining locations, and transportation options.
[1099] Step 9:
[1100] The server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it includes friendly explanations for families and information on relaxing places. This tour guide information is sent to the device.
[1101] Step 10:
[1102] The server sends the generated tour guide information to the user's terminal, allowing the user to refer to it while traveling and enjoy sightseeing.
[1103] Step 11:
[1104] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[1105] Step 12:
[1106] The server then sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation to the user.
[1107] This process allows users to easily create the optimal travel plan and enjoy their trip with peace of mind, thanks to the detailed itinerary and personalized guide information. The introduction of the emotion engine makes it possible to propose flexible plans based on the user's current emotions, resulting in a more satisfying travel experience.
[1108] Example 2
[1109] 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."
[1110] Conventional travel planning systems propose plans based on the user's travel conditions, but they are unable to consider the user's emotions or individual needs, and the proposed plans do not necessarily increase user satisfaction. Furthermore, they do not provide sufficient navigation or personal tour guides during the trip, leaving many inconveniences in trip planning and implementation.
[1111] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes: an input means for receiving a user's travel conditions in free words; an analysis means for analyzing the travel conditions received from the input means; a comparison means for collating an optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means; a generation means for generating multiple optimal travel plans for the user from the travel plans collated by the comparison means; a proposal means for proposing the travel plans generated by the generation means to the user; an emotion analysis means for analyzing the user's emotions; an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user; an output means for providing the itinerary generated by the itinerary generation means to the user; a tour guide provision means for providing personalized tour guide information and emotion information according to the user's age and knowledge level; and a navigation means for presenting an optimal route based on the travel plan in cooperation with map software. This makes it possible to propose optimal travel plans according to the user's emotions and individual needs, and to provide personalized tour guide information and navigation.
[1112] "Input means" refers to a device or software that accepts travel conditions from the user as free word input.
[1113] "Analysis means" refers to a device or software that analyzes the travel conditions received from the input means and extracts specific keywords and related information.
[1114] The "collation means" refers to a device or software that collates the optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means.
[1115] The "generation means" refers to a device or software that generates a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[1116] The "suggestion means" refers to a device or software that proposes to the user the travel plan generated by the generation means.
[1117] "Emotion analysis means" refers to a device or software that analyzes a user's emotions by analyzing the user's input data, voice, facial expressions, etc.
[1118] "Itinerary generation means" refers to a device or software that generates an original itinerary based on a travel plan determined by a user.
[1119] "Output Means" means any device or software that provides the generated itinerary or other information to the user.
[1120] "Tour guide providing means" refers to a device or software that provides personalized tour guide information according to the user's age, knowledge level, and emotional information.
[1121] "Navigation means" refers to a device or software that works in conjunction with map software to present the optimal route based on a travel plan.
[1122] "Map Software" means a program that provides road, route, and geographic information to assist users in navigating the area.
[1123] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with data from multiple travel databases, generates and proposes an optimal travel plan, and provides detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with map software.
[1124] First, the user launches a dedicated application on their smartphone and enters travel conditions (area, sightseeing genre, date and time, number of people, etc.). For example, the user might enter free words such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days." The entered data is sent from the device to the server.
[1125] The server uses a natural language processing library (NLTK, spaCy) running on Python to analyze the received travel conditions. As a result of the analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted. Next, the server uses an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics) to analyze the user's emotions. The emotion engine infers emotions from the input text, the user's tone of voice, and facial expressions. This allows it to obtain emotional information such as "the user is excited."
[1126] Based on the analyzed travel conditions and sentiment information, the server accesses multiple travel information provider APIs (e.g., Expedia API, Travelport API) to obtain data on relevant travel plans. Because the amount of plan data obtained is enormous, the server uses a generative AI model (OpenAI GPT, Google BERT) to generate a travel plan that best suits the user's conditions and sentiment. This plan generation takes into account price, accessibility, and review ratings.
[1127] The generated itineraries are sent from the server to the device and presented to the user. The user can compare the itineraries displayed on the device screen and select and customize the most suitable one. For example, they can change specific tourist spots or accommodations. The plan selected and customized by the user is then sent back to the server from the device.
[1128] Based on the confirmed plan, the server generates an original travel itinerary, which includes information on accommodation reservations, details of tourist attractions, places to eat, transportation, etc. This information is sent from the server to the terminal and provided to the user.
[1129] In addition, the server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places where the user can relax if they are tired. This tour guide information is also sent from the server to the terminal and provided to the user.
[1130] Finally, the server connects with map software (Google Maps, Apple Maps) to obtain the optimal route based on the confirmed itinerary. This includes walking routes, public transport routes, car routes, etc. The obtained information is sent to the device and provides real-time navigation.
[1131] For example, a user might enter a prompt into the app: "I want to see the cherry blossoms in Tokyo. I'm planning a three-day trip for two people. What travel plans do you recommend?" Based on this prompt, the server analyzes and generates an optimal travel plan, which is then presented to the device, allowing the user to plan their trip.
[1132] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1133] Step 1:
[1134] The user launches the smartphone application and inputs travel conditions (area, sightseeing genre, date and time, number of people, etc.). At this time, they input in free-word format, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days," and the data is sent to the server. The input data is raw text information.
[1135] Step 2:
[1136] The device sends the input data to the server. The server uses natural language processing libraries (NLTK, spaCy) that run on Python to analyze the input data. It analyzes the text data and extracts keywords such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days." This outputs structured data that has been analyzed from the raw text data.
[1137] Step 3:
[1138] The server runs an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics). The emotion engine estimates emotions from the input text, the user's tone of voice, and facial expressions. This analysis yields emotional information indicating the user's excitement. The input is the analyzed keywords and the user's voice and facial expression data, and the output is emotional information.
[1139] Step 4:
[1140] Based on the analyzed travel conditions and emotional information, the server accesses multiple travel information APIs (Expedia API, Travelport API) to obtain data on the relevant travel plans. The obtained data is stored in JSON format. At this point, the server processes a huge amount of data and extracts a list of relevant travel plans. The input is the analyzed keywords and emotional information, and the output is a list of travel plans.
[1141] Step 5:
[1142] The server generates optimal itineraries based on the acquired itinerary data using generative AI models (OpenAI GPT, Google BERT). This filtering takes into account price, accessibility, review ratings, and sentiment information. The list of generated itineraries is again stored in JSON format. The input is a list of itineraries, and the output is a list of optimal itineraries.
[1143] Step 6:
[1144] The server sends the optimal travel plan to the device and displays it on the device screen. The user reviews it and selects and customizes the plan that best suits them. For example, they can change specific tourist spots or accommodations. The customized plan is then sent from the device to the server. The input is the user's selection and customization information, and the output is the updated travel plan.
[1145] Step 7:
[1146] The server generates an original travel itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation. The generated itinerary information is again stored in JSON format and sent to the terminal. The input is the confirmed travel plan, and the output is the original itinerary.
[1147] Step 8:
[1148] The server generates personalized tour guide information based on the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places and activities where people can relax. This information is sent to the terminal and provided to the user. The input is the user's age, knowledge level, and emotional information, and the output is personalized tour guide information.
[1149] Step 9:
[1150] The server works with map software to obtain the optimal travel route based on the confirmed travel plan. This includes walking routes, public transportation routes, and car routes. The obtained traffic and route information is sent to the device, which provides real-time navigation. The input is the confirmed travel plan, and the output is the optimal travel route.
[1151] Through the above processing flow, users can obtain the optimal travel plan based on their individual needs and feelings, and can enjoy their entire trip efficiently and with a high level of satisfaction.
[1152] (Application example 2)
[1153] 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."
[1154] Current food delivery services lack mechanisms for suggesting optimal menu items based on users' individual emotions and preferences. This makes it difficult for users to select a menu that matches their mood and situation, resulting in low satisfaction. Furthermore, it is difficult to track delivery routes and delivery status in real time, leaving room for improvement in the overall user experience.
[1155] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1156] In this invention, the server includes an input means for receiving free word ordering conditions from a user, an analysis means for analyzing the ordering conditions received from the input means, a comparison means for collating an optimal menu from databases of multiple food delivery systems based on the ordering conditions analyzed by the analysis means, a generation means for generating multiple menus optimal for the user from the menus compared by the comparison means, a proposal means for proposing the menus generated by the generation means to the user, a plan generation means for generating an original delivery plan based on the menu confirmed by the user, an output means for providing the plan generated by the plan generation means to the user, a food information provision means for providing personalized food information according to the age and emotional information of the user, and a navigation means for presenting an optimal route based on the menu in cooperation with a map application. This enables the proposal of an optimal menu based on the user's emotions and situation and real-time management of delivery routes and statuses.
[1157] The "input means" is a means for accepting order conditions from the user in free words.
[1158] The "analysis means" is a means for analyzing the order conditions received from the input means.
[1159] The "checking means" is a means for checking the databases of a plurality of food serving systems to find the most suitable menu based on the order conditions analyzed by the analyzing means.
[1160] The "generation means" is a means for generating a plurality of menus that are optimal for the user from among the menus collated by the collation means.
[1161] The "proposing means" is a means for proposing the menu generated by the generating means to the user.
[1162] The "plan generation means" is a means for generating an original delivery plan based on a menu determined by the user.
[1163] The "output means" is a means for providing the plan generated by the plan generation means to the user.
[1164] The "cooking information providing means" is a means for providing personalized cooking information according to the age and emotional information of the user.
[1165] The "navigation means" is a means for presenting the optimum route based on the menu in cooperation with a map application.
[1166] The present invention will be described using a smartphone-based food delivery system as an example. This system allows users to input information such as meal requirements, budget, and number of people, and analyzes emotional information to suggest the optimal menu. It also has a function that allows users to track delivery routes and status in real time.
[1167] First, the user enters the order conditions using a smartphone application. This input method can accept free words, such as "pizza, spicy, for three people, budget 5,000 yen."
[1168] The entered data is sent from the smartphone to a server. The server analyzes the input data using natural language processing technology (for example, Google Cloud Natural Language API) and identifies the order conditions. The results of this analysis are converted into specific condition information such as "pizza," "spicy," "3 people," and "5,000 yen."
[1169] Next, the server uses an emotion analysis engine (e.g., Affdex SDK) to estimate the user's emotion from their input, tone of voice, facial expression, etc. As a result, emotional information such as "excited" or "relaxed" can be obtained.
[1170] The server accesses multiple food delivery systems (e.g., Zomato API and Yelp API) based on the analyzed order conditions and emotion information to retrieve the corresponding menu data. Because the retrieved menu data is often huge, it is filtered to generate a menu that best suits the user's conditions and emotions.
[1171] The generated menu is displayed on the smartphone in a way that makes it easy for users to compare. Users can compare the multiple suggested menus and select or customize the most suitable menu. For example, they can customize the "Hot Pepper Pizza (4,500 yen, very spicy)" by adding cheese.
[1172] Once the user has determined the optimal menu, the information is sent to the server, which then generates a custom delivery plan based on the determined menu, including information such as delivery route, delivery time, and delivery status.
[1173] The delivery plan is linked to a map app (e.g., Google Maps API) to obtain the optimal route and is displayed in real time on the smartphone, making it easier for users to keep track of the delivery progress.
[1174] Furthermore, the server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone. For example, it suggests "kid-friendly menus" for families with children, and "menus that can be prepared quickly" for busy business people.
[1175] As a concrete example, suppose a user launches the app and enters "Belgian waffles, something sweet, for two people, budget 3000 yen." The following prompt is used:
[1176] Analyze the user's request and extract the conditions: Belgian waffles, sweet food, for two people, budget 3000 yen. Furthermore, suggest the optimal menu based on the user's current emotions.
[1177] The emotion analysis engine analyzes the user's emotions and infers, for example, that they are "relaxed." Based on this result, the system filters data obtained from multiple food delivery systems to generate and suggest the optimal menu.
[1178] In this way, the system can suggest optimal menus based on the user's emotions and situation, and manage delivery routes and status in real time.
[1179] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1180] Step 1:
[1181] The user launches the application on their smartphone and enters the ordering conditions (type of meal, budget, number of people, etc.) using free words.
[1182] Input: User requirements (e.g., "Pizza, spicy, for 3 people, budget 5,000 yen")
[1183] What it does: A smartphone app accepts user input.
[1184] Output: The accepted input data
[1185] Step 2:
[1186] The terminal transmits the input data to the server.
[1187] Input: The input data received
[1188] How it works: The smartphone app sends input data over the network to the server.
[1189] Output: Input data received on the server side
[1190] Step 3:
[1191] The server analyzes the input data using natural language processing technology (e.g., Google Cloud Natural Language API) and identifies the order conditions.
[1192] Input: The input data received by the server (e.g., "Pizza, spicy, 3 people, budget 5,000 yen")
[1193] Operation: The server performs natural language processing, analyzes the text data, and extracts condition information.
[1194] Output: Analyzed condition data (e.g. "pizza", "spicy", "3 people", "5000 yen")
[1195] Step 4:
[1196] The server uses an emotion analysis engine (e.g., Affdex SDK) to estimate emotions from the user's text, tone of voice, facial expressions, etc.
[1197] Input: User-entered text and voice data
[1198] Operation: The server runs the emotion analysis engine and estimates emotion information.
[1199] Output: Estimated emotion information (e.g., "excited")
[1200] Step 5:
[1201] Based on the analyzed order conditions and emotion information, the server accesses the APIs of multiple food delivery systems (e.g., Zomato API, Yelp API) and retrieves the corresponding menu data.
[1202] Input: Parsed order conditions, sentiment information
[1203] Operation: The server sends a request to the API of each food delivery system to obtain menu information.
[1204] Output: Retrieved menu data
[1205] Step 6:
[1206] The server filters the acquired menu information and generates a menu that best suits the user's conditions and emotions.
[1207] Input: Retrieved menu data
[1208] How it works: The server runs an algorithm that filters data based on criteria and selects the best menu.
[1209] Output: Optimal menu (e.g. "Hot Pepper Pizza (4500 yen, very spicy)")
[1210] Step 7:
[1211] The server proposes the generated menu to the user.
[1212] Enter: Optimal Menu
[1213] How it works: The server sends the optimal menu to the smartphone app.
[1214] Output: Optimal menu displayed on smartphone
[1215] Step 8:
[1216] The user compares the proposed menus and selects or customizes the most suitable menu.
[1217] Input: Menu options displayed on your smartphone
[1218] What it does: The user taps on the provided menu to select or customize.
[1219] Output: Selected optimal menu or customized menu
[1220] Step 9:
[1221] The server generates an original delivery plan based on the menu determined by the user.
[1222] Input: Selected or customized menu
[1223] Operation: The server runs an algorithm that generates a delivery plan based on the user's menu selections.
[1224] Output: The generated delivery plan
[1225] Step 10:
[1226] The server works with a map app (e.g., Google Maps API) to obtain the optimal delivery route based on the confirmed menu and displays it on the smartphone in real time.
[1227] Input: Generated delivery plan
[1228] How it works: The server calls the map app's API to obtain route information and sends it to the smartphone.
[1229] Output: Real-time delivery route displayed on a smartphone map app
[1230] Step 11:
[1231] The server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone.
[1232] Input: User's age information, emotional information, confirmed menu
[1233] How it works: The server runs an algorithm that generates appropriate cooking information based on age and emotions, and sends it to the smartphone.
[1234] Output: Personalized recipe information displayed on a smartphone
[1235] 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.
[1236] 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.
[1237] 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.
[1238] [Fourth embodiment]
[1239] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1240] 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.
[1241] 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).
[1242] 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.
[1243] 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.
[1244] 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).
[1245] 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.
[1246] 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.
[1247] 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.
[1248] 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.
[1249] 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.
[1250] 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.
[1251] 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."
[1252] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[1253] Program processing
[1254] 1. User input of travel conditions:
[1255] Users start the application on their smartphone and enter their desired travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words, such as "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[1256] 2. Parse user input:
[1257] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and extract and identify travel conditions. Specifically, the data is broken down into categories such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days."
[1258] 3. Travel Plan Verification:
[1259] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves multiple travel plans. The retrieved plan information is filtered according to the user's conditions.
[1260] 4. Travel plan generation and suggestions:
[1261] The server generates multiple travel plans that are optimal for the user based on the filtered travel plan data. The generated multiple plans are sent to the user's device, which displays them. The user can compare these plans and select or customize the optimal plan.
[1262] 5. Create your original itinerary:
[1263] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates an original travel itinerary based on the determined plan and sends it to the device. This itinerary includes accommodation reservation information, details of tourist attractions, and a schedule.
[1264] 6. Personal tour guide provided:
[1265] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. For example, it provides detailed historical background for history buffs, while providing educational and entertaining information for children. This information is then sent to the device.
[1266] 7. Navigation Support:
[1267] The server works with the map app to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device, which then provides real-time navigation. For example, the device may display the optimal route from the user's current location to a tourist spot and provide instructions on how to use public transportation.
[1268] Specific examples
[1269] 1. The user enters the following conditions: "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[1270] 2. The server analyzes the data sent from the device and organizes the conditions.
[1271] 3. The server accesses the APIs of multiple travel agencies to obtain the best cherry blossom sightseeing plans for spring in Kyoto.
[1272] 4. The server proposes multiple plans for cherry blossom sightseeing in Kyoto to the user. The user selects Plan B and adds specific tourist spots.
[1273] 5. Based on the confirmed plan, the server generates an original itinerary and provides it to the terminal.
[1274] 6. The server takes into account the user's age and interests and provides personalized tour guide information including the history and highlights of cherry blossom viewing spots.
[1275] 7. The server works with the map app to provide the optimal access method based on the travel plan and perform real-time navigation on the device.
[1276] This allows users to easily plan their trips and enjoy an efficient and satisfying trip.
[1277] The processing flow will be explained below.
[1278] Step 1:
[1279] Users launch the application on their smartphone and enter travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days."
[1280] Step 2:
[1281] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology and identifies the travel conditions. As a result of the analysis, information such as "Kyoto," "cherry blossom sightseeing," "spring," "3 people," and "2 nights, 3 days" is extracted.
[1282] Step 3:
[1283] The server accesses the APIs of multiple travel agencies based on the analyzed conditions and retrieves the relevant travel plan data. The retrieved plan data can be enormous in volume, as it is provided by various travel agencies.
[1284] Step 4:
[1285] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's requirements, taking into account factors such as price, accessibility, and reviews.
[1286] Step 5:
[1287] The server sends the generated travel plans to the user's device, which then displays the plans on the screen and presents them to the user in an easy-to-compare format.
[1288] Step 6:
[1289] Users can compare the multiple plans displayed and select the one they prefer. They can also customize the plan by adding or changing tourist attractions and accommodations as needed.
[1290] Step 7:
[1291] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates an original travel itinerary based on the confirmed plan.
[1292] Step 8:
[1293] The server then sends the generated original itinerary to the user's device, which includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation options.
[1294] Step 9:
[1295] The server generates tour guide information tailored to the user's age and level of knowledge, including friendly explanations and child-friendly activity information for families with children, for example.
[1296] Step 10:
[1297] The server then sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[1298] Step 11:
[1299] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[1300] Step 12:
[1301] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[1302] This process allows users to easily create the perfect travel plan for themselves, and enjoy their trip with peace of mind, knowing they have a detailed itinerary and information.
[1303] Example 1
[1304] 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."
[1305] With conventional travel planning systems, users had to manually compare plans across multiple travel agency websites, requiring a great deal of time and effort to find the optimal travel plan. Furthermore, they often only provided partial suggestions that only met some of the travel requirements, and lacked personalized suggestions tailored to individual users' needs. Furthermore, they lacked detailed itineraries based on travel plans or real-time navigation support. Therefore, a new system was needed that would streamline the entire travel planning process and increase user satisfaction.
[1306] 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.
[1307] In this invention, the server includes input means for accepting travel conditions from a user in free words, transmission means for transmitting the travel condition data accepted from the input means to the server, analysis means for analyzing the transmitted travel condition data using natural language processing technology, comparison means for retrieving an optimal travel plan from databases of multiple travel information providing systems based on the travel conditions analyzed by the analysis means, generation means for generating multiple travel plans optimal for the user from the travel plans retrieved by the comparison means, proposal means for proposing the travel plans generated by the generation means to the user, itinerary generation means for generating an original itinerary based on the travel plans selected and customized by the user, output means for providing the itinerary generated by the itinerary generation means to the user, tour guide provision means for providing personalized tour guide information according to the user's age, knowledge level, and areas of interest, and navigation means for presenting an optimal route based on the travel plan in cooperation with a map application. This solves the problems faced by conventional travel planning systems and enables users to plan and implement efficient and personalized travel plans.
[1308] "User" means an individual or organization that intends to use this system to create a travel plan.
[1309] "Travel conditions" are detailed information about a trip specified by a user, and include elements such as area, sightseeing genre, date and time, and number of people.
[1310] "Free words" are phrases or sentences that users can freely enter in text format, and are not limited to a specific form or options.
[1311] "Input means" refers to the interface through which the user inputs travel conditions, such as a smartphone application or web form.
[1312] The "transmission means" is a device or software having a function of transmitting the travel condition data received from the input means to the server.
[1313] "Server" refers to a computer system that analyzes input data, collates information, and generates and proposes travel plans.
[1314] The "analysis means" is software or hardware for analyzing the transmitted travel condition data, and is characterized by the use of natural language processing technology.
[1315] "Natural language processing technology" refers to technology that enables computers to understand and analyze human language, and includes, for example, text analysis and context understanding.
[1316] The "collation means" is a device or software that has the function of obtaining the optimal travel plan from a plurality of travel information providing systems based on the travel conditions analyzed by the analysis means.
[1317] A "travel information system" is an online service or database that provides an API to provide travel plans and tourist information.
[1318] The "generation means" is a device or software that has the function of creating multiple travel plans that are optimal for the user from among the travel plans obtained by the comparison means.
[1319] The "proposal means" is a device or software that has the function of presenting the travel plan created by the creation means to the user.
[1320] "Selecting and customizing" means that the user can choose the most suitable travel plan from the suggested plans and modify the plan as needed.
[1321] "Itinerary Generator" means a device or software capable of generating a detailed travel itinerary based on a user's selected and customized travel plan.
[1322] The "output means" is an interface or display device for providing the itinerary generated by the itinerary generation means to the user.
[1323] A "tour guide providing means" is a device or software that has the function of providing personal guide information that is useful during a trip according to the user's age, knowledge level, and areas of interest.
[1324] A "navigation means" is a device or software that has the function of presenting the optimal route based on a travel plan and linking with a map application.
[1325] A "map application" is an online service or application that provides geographic information and enables users to find the best route to their destination.
[1326] This system allows users to input their travel requirements, and the server analyzes, collates, generates, and proposes the optimal travel plan. The system is primarily composed of user devices, an analysis server, and various API-linked systems.
[1327] First, the user uses a dedicated application on a device such as a smartphone or PC to enter their travel conditions in free-word format. This input method is provided through an interface such as a text box. The travel conditions entered by the user (for example, "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days") are converted into JSON format by the device and sent to the server using the HTTPS protocol.
[1328] The server then receives the data and analyzes it using natural language processing technology (e.g., Google NLP API). As a result of the analysis, the travel conditions are broken down into individual elements (e.g., "Kyoto," "cherry blossom viewing," "spring," "3 people," "2 nights, 3 days").
[1329] Based on the analyzed travel condition data, the server accesses multiple travel information systems (for example, databases provided through the APIs of multiple travel agencies) to obtain travel plans that match the conditions. Next, it filters the obtained plans to find the one that best suits the user's conditions, and uses a generation means to propose the results to the user as multiple optimal travel plans. These proposals are displayed on the screen of the user's device, and the user can compare them to select the best plan and customize it as needed.
[1330] Furthermore, once the user selects and customizes the optimal travel plan, that information is again sent from the device to the server. The server uses this information to generate a detailed travel itinerary. This itinerary includes accommodation reservation confirmations, details of tourist attractions, and a schedule of activities for each day. The generated itinerary information is again sent to the device and provided to the user.
[1331] In addition, the server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest. This information includes, for example, the history and cultural background of the tourist spot, as well as explanations of the attractions, and is sent to the user's device for presentation.
[1332] Finally, the server connects with a map application (e.g., Google Maps) to obtain the optimal route based on the travel plan. This sends real-time navigation information, including directions on how to use public transport and the shortest route to tourist spots, to the user's device, allowing the user to enjoy sightseeing smoothly while traveling.
[1333] Specific examples
[1334] When a user enters the search criteria "Kyoto, sightseeing, spring, cherry blossoms, three people, two nights and three days," the information is sent to the server via the device. The server analyzes this information using the Google NLP API and sends requests to the APIs of multiple travel agencies to obtain the optimal cherry blossom sightseeing plan. It then filters out plans that do not match the search criteria and presents multiple travel plan options that best suit the user. If the user selects "Plan B" and requests an additional visit to "Arashiyama," the server generates a detailed itinerary based on the information. This itinerary includes accommodation reservations, details of tourist attractions, and a schedule for each day, and is sent to the device. Furthermore, if the user is interested in history, the server also provides detailed guide information about the cultural background of Arashiyama and cherry blossoms. Finally, the server works with Google Maps to calculate the optimal access method and sends that information to the device, where real-time navigation is performed.
[1335] Example prompts (for generative AI models)
[1336] "I'm planning a trip. Please suggest the best itinerary for Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights and 3 days. Also, please provide a detailed itinerary based on the itinerary, as well as personalized guide information for each tourist spot."
[1337] This system allows users to plan trips efficiently and with high satisfaction, and also provides comfortable guidance to their destinations during their trip.
[1338] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1339] Step 1:
[1340] Using a dedicated application on the device, the user enters travel conditions in free-word format. This input is done via a text box or voice recognition function. For example, the user might enter "Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days." The device then converts this input data into JSON format and prepares it for transmission.
[1341] Input: Travel conditions entered by the user ("Kyoto, sightseeing, spring, cherry blossoms, 3 people, 2 nights, 3 days")
[1342] Output: JSON formatted travel conditions data
[1343] Step 2:
[1344] The terminal securely sends the converted JSON data to the server using the HTTPS protocol, and then waits for a response from the server.
[1345] Input: JSON format travel condition data
[1346] Output: Status of sending to server
[1347] Step 3:
[1348] The server analyzes the JSON data received from the device and uses natural language processing technology (e.g., Google NLP API) to break down the travel conditions into their individual elements, such as "Kyoto," "sightseeing," "spring," "cherry blossoms," "3 people," and "3 days and 2 nights."
[1349] Input: JSON format travel condition data
[1350] Output: Each element of the analyzed travel conditions ("Kyoto", "sightseeing", "spring", "cherry blossoms", "3 people", "2 nights, 3 days")
[1351] Step 4:
[1352] Based on each element of the analyzed travel conditions, the server accesses the APIs of multiple travel information providers and retrieves relevant travel plans in real time. For example, it queries the databases of multiple travel agencies to retrieve "cherry blossom sightseeing plans suitable for spring in Kyoto."
[1353] Input: Each element of the analyzed travel conditions
[1354] Output: A dataset of the retrieved travel plans
[1355] Step 5:
[1356] The server filters the acquired travel plan data according to the user's criteria, for example, excluding plans that do not match the budget or date and time, and extracts plans that meet the criteria.
[1357] Input: The retrieved travel plan dataset
[1358] Output: A filtered list of itineraries
[1359] Step 6:
[1360] The server generates a plurality of travel plans that are particularly suitable for the user from among the filtered travel plans and transmits the results to the terminal.
[1361] Input: A filtered list of itineraries
[1362] Output: A list of generated optimal itineraries, and the status of sending them to the device
[1363] Step 7:
[1364] The device displays a list of optimal travel plans sent from the server to the user, who can then compare these plans, select the best one, and customize it, for example by adding specific attractions or changing the date and time.
[1365] Input: A list of generated optimal itineraries
[1366] Output: User selected and customized itinerary
[1367] Step 8:
[1368] The device sends the information about the user's selected and customized travel plan to the server, which is also converted into JSON format.
[1369] Input: User-selected and customized travel plans
[1370] Output: Customized itinerary data in JSON format, status of sending to server
[1371] Step 9:
[1372] The server generates a detailed travel itinerary based on the user's selected and customized travel plan information, including, for example, confirmation of accommodation reservations, details of tourist attractions, and planned activities for each day.
[1373] Input: Customized itinerary data in JSON format
[1374] Output: Generated detailed itinerary
[1375] Step 10:
[1376] The server then sends the generated detailed itinerary to the user's device, allowing the user to check the itinerary on the device.
[1377] Input: Generated detailed travel itinerary
[1378] Output: Sending status to user's device, detailed travel itinerary
[1379] Step 11:
[1380] The server generates personalized tour guide information based on the user's age, knowledge level, and areas of interest, including historical and cultural background of the tourist spot, and descriptions of the attractions. This information is then sent to the device and provided to the user.
[1381] Input: User's age, knowledge level, areas of interest
[1382] Output: Generated personal tour guide information, sending status to the device
[1383] Step 12:
[1384] The server works with a map application to obtain the optimal route based on the travel plan. The obtained traffic and route information is sent to the user's device and provided as real-time navigation information on the device.
[1385] Input: Generated detailed travel itinerary, link information with map application
[1386] Output: Acquired travel route, traffic information, transmission status to the terminal
[1387] (Application example 1)
[1388] 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."
[1389] Modern travel planning and sightseeing destination exploration involve a wealth of information, but it is difficult to efficiently utilize this information and provide travel plans and tourist information tailored to user needs. In particular, there are many challenges in providing content tailored to users' interests and conditions, and in generating personalized guide information. There is a need for a system that can integrate this information and provide it in the most optimal form for users.
[1390] 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.
[1391] In this invention, the server includes an input means for accepting a user's travel conditions in free words, an analysis means for analyzing the travel conditions accepted from the input means, a comparison means for collating an optimal travel plan from databases of multiple travel agencies based on the travel conditions analyzed by the analysis means, a generation means for generating multiple travel plans optimal for the user from the travel plans collated by the comparison means, a proposal means for proposing to the user the travel plans generated by the generation means, an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user, an output means for providing to the user the itinerary generated by the itinerary generation means, a tour guide provision means for providing personalized tour guide information according to the user's age and knowledge level, a navigation means for presenting an optimal route based on the travel plan in cooperation with a map application, a video acquisition means for acquiring and recommending related video content based on the user's travel conditions, and a video recommendation means for personalizing the video content acquired by the video acquisition means and suggesting it to the user. This makes it possible to provide travel plans, itineraries, tourist information, and video content appropriate to the user's requests.
[1392] The "input means" is a means for accepting travel conditions from the user in free words.
[1393] The "analysis means" is a means for analyzing the travel conditions received from the input means.
[1394] The "collation means" is a means for collating the optimum travel plan from the databases of a plurality of travel agencies based on the travel conditions analyzed by the analysis means.
[1395] The "generation means" is a means for generating a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[1396] The "proposing means" is a means for proposing the travel plan generated by the generating means to the user.
[1397] The "itinerary generation means" is a means for generating an original itinerary based on a travel plan determined by a user.
[1398] The "output means" is a means for providing the itinerary generated by the itinerary generation means to the user.
[1399] The "tour guide providing means" is a means for providing personalized tour guide information according to the age and knowledge level of the user.
[1400] The "navigation means" is a means for presenting the optimum route based on the travel plan in cooperation with a map application.
[1401] "Video acquisition means" refers to a means of acquiring and recommending relevant video content based on the user's travel conditions.
[1402] The "video recommendation means" is a means for personalizing video content acquired by the video acquisition means and proposing it to the user.
[1403] This system inputs and analyzes the user's travel requirements, compares them with data from multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[1404] System configuration
[1405] This system mainly consists of the following means:
[1406] 1. Input method: Accept travel conditions from users in free words. This is mainly realized by a smartphone application, and users input their desired travel conditions.
[1407] 2. Analysis means: Analyzes the travel conditions received from the input means. For analysis, natural language processing technology (such as TensorFlow or Hugging Face's BERT model) is used to extract the necessary conditions from the user's free words.
[1408] 3. Matching means: Matches the optimal travel plan from the databases of multiple travel agencies based on the travel conditions analyzed by the analysis means. Specifically, it calls the travel agency's API to obtain related travel plans.
[1409] 4. Generation means: Generates a plurality of travel plans optimal for the user from among the travel plans collated by the collation means, using an algorithm that filters optimal plans based on the user's conditions.
[1410] 5. Proposal means: The travel plans generated by the generation means are proposed to the user, who can compare them and select the most suitable plan.
[1411] 6. Itinerary Generation: Generates an original itinerary based on the user's confirmed travel plan, including accommodation reservation information, tourist attraction details, and itinerary.
[1412] 7. Output means: The itinerary generated by the itinerary generation means is provided to the user via the smartphone application screen or email.
[1413] 8. Tour guide provision means: Providing personalized tour guide information according to the user's age and knowledge level, such as information explaining the historical background and highlights of tourist spots.
[1414] 9. Navigation: Based on the travel plan, the optimal route is presented in cooperation with a map app, allowing users to receive real-time navigation.
[1415] 10. Video Acquisition Method: Based on the user's travel conditions, relevant video content is acquired and recommended. This process uses the YouTube API and Vimeo API.
[1416] 11. Video recommendation means: Personalizes the video content acquired by the video acquisition means and suggests it to the user. Based on the user's viewing history and ratings, the accuracy of recommendations will be improved from the next time onwards.
[1417] Example of a system
[1418] For example, consider a prompt that asks a user to search for a video about visiting museums in Paris in the fall.
[1419] User input conditions: Paris, sightseeing, museum, autumn, 2 people, 5 days
[1420] Prompt statement:
[1421] "Look for tourism videos about museums in Paris. Videos that include autumn-related tourist information and museum introductions are especially preferred."
[1422] In this way, users can view the most suitable travel content as a way to prepare for their travel destination, enabling them to have a more fulfilling travel experience.
[1423] Hardware and Software Use
[1424] Hardware: smartphones, servers
[1425] Software: React Native (front-end), Node.js + Express (back-end), TensorFlow (natural language processing), YouTube API (video acquisition), Vimeo API (video acquisition)
[1426] Data processing and calculation
[1427] Free word input analysis: Using natural language processing technology, conditions are extracted from free words.
[1428] Travel plan matching: Call the travel agency's API to obtain travel plan data.
[1429] Video retrieval and recommendation: Retrieve and personalize videos and present them to the user.
[1430] The present invention allows users to easily plan their trips and enjoy efficient and satisfying trips. In addition, the present invention allows users to simultaneously enjoy entertainment content related to their trips, thereby enriching the user's overall travel experience.
[1431] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1432] Step 1:
[1433] The user enters travel conditions. The user launches the smartphone application and enters travel conditions using free words, such as "Paris, sightseeing, museum, autumn, 2 people, 5 days." The entered travel conditions are sent from the device to the server. The input data is sent in text format and parsed into JSON format.
[1434] Step 2:
[1435] The server analyzes the travel conditions. The server uses natural language processing technology (TensorFlow or Hugging Face's BERT model) to analyze the received travel conditions data. The analysis process breaks down the input data and extracts elements such as the destination, sightseeing genre, date and time, and number of people. The analyzed data is converted into a structured format (e.g., a JSON object) for use in the next step.
[1436] Step 3:
[1437] The server matches the itineraries. Based on the conditions analyzed in the previous step, the server calls the APIs of multiple travel agencies to obtain the data of related itineraries. As a result of the API call, multiple itineraries are returned. These itineraries are temporarily stored on the server side.
[1438] Step 4:
[1439] The server generates an optimal itinerary. From the obtained itineraries, a filtering algorithm is used to select multiple itineraries that best meet the user's requirements. The selected itineraries are those that best meet the user's requirements, and each plan is assigned a rating score. These itineraries are prepared to be proposed to the user in the next step.
[1440] Step 5:
[1441] The server proposes travel plans to the user. The selected travel plans are sent to the user's device and displayed on the device's application screen. The user can compare these plans and select the best one. The user's input is sent back to the server.
[1442] Step 6:
[1443] The server generates an original itinerary based on the travel plan confirmed by the user. This itinerary includes accommodation reservation information, tourist attraction details, schedules, etc. The generated itinerary is then sent to the user's device in a structured data format.
[1444] Step 7:
[1445] The server generates personalized tour guide information. Detailed tour guide information is generated based on the user's age, knowledge level, and areas of interest. For example, a user interested in history can be provided with detailed information explaining the historical background of tourist attractions. This information is sent to the user's device.
[1446] Step 8:
[1447] The server provides navigation information. The server connects with the map app to obtain the optimal route based on the travel plan. The obtained route information is updated in real time and sent to the user's device. The user's current location and the optimal route to the destination are displayed on the map.
[1448] Step 9:
[1449] The server retrieves video content. Based on the user's travel conditions, it calls the YouTube API or Vimeo API to retrieve relevant video content. For example, it retrieves tourist videos that match the conditions "Paris, museums, autumn." This video list is temporarily stored on the server.
[1450] Step 10:
[1451] The server recommends video content. An algorithm is used to personalize the retrieved video content and suggest it to the user. Based on the user's viewing history and ratings, the most relevant video is selected and sent to the user's device. This allows the user to prepare for their trip by watching videos.
[1452] Through the above processing steps, the system provides users with optimal travel plans and related entertainment content, supporting a more fulfilling travel experience.
[1453] 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.
[1454] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with that of multiple travel agencies, and then generates and proposes an optimal travel plan, providing detailed itineraries and personalized tour guide information based on the plan. Furthermore, this system has a function to support the user's travel by linking with a map app.
[1455] Program processing
[1456] 1. User input of travel conditions:
[1457] Users start the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people, etc.) in free words. For example, they can enter "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[1458] 2. Parse user input:
[1459] The device sends the input data to the server, which uses natural language processing technology to analyze the input data and identify the travel conditions. As a result of this analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted.
[1460] 3. User sentiment analysis:
[1461] The server uses the analyzed conditions and an emotion engine to analyze the user's emotion at the time of input. The emotion engine infers emotion from the input text, the user's tone of voice, facial expression, etc. As a result, emotional information such as "The user is excited" or "The user is relaxed" can be obtained.
[1462] 4. Travel Plan Verification:
[1463] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and user sentiment information to obtain data on relevant travel plans. The obtained plan data can be enormous in volume, as it is provided by various travel agencies.
[1464] 5. Travel plan generation and suggestions:
[1465] The server filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotions, taking into account price, accessibility, reviews, and emotional information.
[1466] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them to the user in an easy-to-compare format.
[1467] 6. User Plan Selection and Customization:
[1468] Users can compare the different plans displayed and select or customize the plan that best suits them, for example by changing specific attractions or accommodations.
[1469] 7. Create original itinerary:
[1470] Once the user has determined the optimal travel plan, the device sends that information to the server, which then generates a custom itinerary based on the plan. The itinerary includes information such as accommodation reservations, details of tourist attractions, dining options, and transportation options.
[1471] 8. Personal tour guide provided:
[1472] The server generates tour guide information based on the user's age, knowledge level, and emotional information, including family-friendly and elderly-friendly tourist spots, and suggests relaxing places and activities if the user is tired.
[1473] The server sends the generated tour guide information to the user's device, allowing the user to enjoy sightseeing while referring to this information during their trip.
[1474] 9. Navigation Support:
[1475] Based on the confirmed travel plan, the server connects with the map app to obtain the optimal travel route, including walking routes, public transport routes, and car routes.
[1476] The server sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation.
[1477] Specific examples
[1478] 1. The user enters the conditions "Tokyo, sightseeing, cherry blossoms, two people, three days," and the device sends the data to the server.
[1479] 2. The server analyzes the data and extracts the following conditions: "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[1480] 3. The server uses the emotion engine to obtain emotion information that the user is excited.
[1481] 4. The server accesses the APIs of multiple travel agencies and retrieves the relevant travel plans.
[1482] 5. The server filters the analyzed travel conditions and emotion information to generate the optimal plan.
[1483] 6. The user compares the proposed plans and selects and customizes the most suitable plan.
[1484] 7. The server generates an original itinerary based on the confirmed plan and sends it to the terminal.
[1485] 8. The server generates tour guide information based on age and emotional information and sends it to the user's device.
[1486] 9. The server connects with the map app to obtain the optimal route and sends it to the device, which then provides real-time navigation.
[1487] This allows users to easily plan their trips and enjoy their trip with peace of mind, knowing they have the best travel plans and information to suit their emotions.
[1488] The processing flow will be explained below.
[1489] Step 1:
[1490] Users launch the application on their smartphone and enter their travel conditions (area, sightseeing genre, date and time, number of people) in free words, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days."
[1491] Step 2:
[1492] The device sends the entered data to the server. The server analyzes the received data using natural language processing technology to identify the travel conditions. This analysis extracts information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days."
[1493] Step 3:
[1494] The server uses the analyzed conditions and the emotion engine to analyze the emotion of the user's input. The emotion engine infers the emotion from the input text, tone of voice, and facial expression. As a result, the emotion information that "the user is excited" is obtained.
[1495] Step 4:
[1496] The server accesses the APIs of multiple travel agencies based on the analyzed travel conditions and emotion information to obtain travel plan data. The plan data provided by each travel agency includes a wide range of information.
[1497] Step 5:
[1498] The server then filters the acquired travel plan data and generates multiple travel plans that best fit the user's conditions and emotional information. Filtering takes into account price, accessibility, reviews, and emotional information.
[1499] Step 6:
[1500] The server sends the generated travel plans to the user's device, which displays them on the screen and presents them in a way that makes it easy for the user to compare them.
[1501] Step 7:
[1502] Users can compare multiple plans displayed on their device and select or customize the plan that best suits them, for example, by changing specific attractions or accommodations.
[1503] Step 8:
[1504] Once the user confirms the selected or customized travel plan, the device sends the information to the server, which then generates a custom itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, dining locations, and transportation options.
[1505] Step 9:
[1506] The server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it includes friendly explanations for families and information on relaxing places. This tour guide information is sent to the device.
[1507] Step 10:
[1508] The server sends the generated tour guide information to the user's terminal, allowing the user to refer to it while traveling and enjoy sightseeing.
[1509] Step 11:
[1510] The server works with the map app to obtain the optimal route based on the confirmed travel plan, including walking routes, public transport routes, and car routes.
[1511] Step 12:
[1512] The server then sends the acquired traffic and route information to the user's device, which then displays the route information on the screen in real time and provides navigation to the user.
[1513] This process allows users to easily create the optimal travel plan and enjoy their trip with peace of mind, thanks to the detailed itinerary and personalized guide information. The introduction of the emotion engine makes it possible to propose flexible plans based on the user's current emotions, resulting in a more satisfying travel experience.
[1514] Example 2
[1515] 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."
[1516] Conventional travel planning systems propose plans based on the user's travel conditions, but they are unable to consider the user's emotions or individual needs, and the proposed plans do not necessarily increase user satisfaction. Furthermore, they do not provide sufficient navigation or personal tour guides during the trip, leaving many inconveniences in trip planning and implementation.
[1517] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes: an input means for receiving a user's travel conditions in free words; an analysis means for analyzing the travel conditions received from the input means; a comparison means for collating an optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means; a generation means for generating multiple optimal travel plans for the user from the travel plans collated by the comparison means; a proposal means for proposing the travel plans generated by the generation means to the user; an emotion analysis means for analyzing the user's emotions; an itinerary generation means for generating an original itinerary based on the travel plan confirmed by the user; an output means for providing the itinerary generated by the itinerary generation means to the user; a tour guide provision means for providing personalized tour guide information and emotion information according to the user's age and knowledge level; and a navigation means for presenting an optimal route based on the travel plan in cooperation with map software. This makes it possible to propose optimal travel plans according to the user's emotions and individual needs, and to provide personalized tour guide information and navigation.
[1518] "Input means" refers to a device or software that accepts travel conditions from the user as free word input.
[1519] "Analysis means" refers to a device or software that analyzes the travel conditions received from the input means and extracts specific keywords and related information.
[1520] The "collation means" refers to a device or software that collates the optimal travel plan from multiple travel databases based on the travel conditions analyzed by the analysis means.
[1521] The "generation means" refers to a device or software that generates a plurality of travel plans that are optimal for the user from among the travel plans collated by the collation means.
[1522] The "suggestion means" refers to a device or software that proposes to the user the travel plan generated by the generation means.
[1523] "Emotion analysis means" refers to a device or software that analyzes a user's emotions by analyzing the user's input data, voice, facial expressions, etc.
[1524] "Itinerary generation means" refers to a device or software that generates an original itinerary based on a travel plan determined by a user.
[1525] "Output Means" means any device or software that provides the generated itinerary or other information to the user.
[1526] "Tour guide providing means" refers to a device or software that provides personalized tour guide information according to the user's age, knowledge level, and emotional information.
[1527] "Navigation means" refers to a device or software that works in conjunction with map software to present the optimal route based on a travel plan.
[1528] "Map Software" means a program that provides road, route, and geographic information to assist users in navigating the area.
[1529] This system inputs the user's travel requirements, recognizes and analyzes the user's emotions using an emotion engine, compares the data with data from multiple travel databases, generates and proposes an optimal travel plan, and provides detailed itineraries and personalized tour guide information based on the travel plan. Furthermore, this system has a function to support the user's travel by linking with map software.
[1530] First, the user launches a dedicated application on their smartphone and enters travel conditions (area, sightseeing genre, date and time, number of people, etc.). For example, the user might enter free words such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days." The entered data is sent from the device to the server.
[1531] The server uses a natural language processing library (NLTK, spaCy) running on Python to analyze the received travel conditions. As a result of the analysis, information such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days" is extracted. Next, the server uses an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics) to analyze the user's emotions. The emotion engine infers emotions from the input text, the user's tone of voice, and facial expressions. This allows it to obtain emotional information such as "the user is excited."
[1532] Based on the analyzed travel conditions and sentiment information, the server accesses multiple travel information provider APIs (e.g., Expedia API, Travelport API) to obtain data on relevant travel plans. Because the amount of plan data obtained is enormous, the server uses a generative AI model (OpenAI GPT, Google BERT) to generate a travel plan that best suits the user's conditions and sentiment. This plan generation takes into account price, accessibility, and review ratings.
[1533] The generated itineraries are sent from the server to the device and presented to the user. The user can compare the itineraries displayed on the device screen and select and customize the most suitable one. For example, they can change specific tourist spots or accommodations. The plan selected and customized by the user is then sent back to the server from the device.
[1534] Based on the confirmed plan, the server generates an original travel itinerary, which includes information on accommodation reservations, details of tourist attractions, places to eat, transportation, etc. This information is sent from the server to the terminal and provided to the user.
[1535] In addition, the server generates tour guide information according to the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places where the user can relax if they are tired. This tour guide information is also sent from the server to the terminal and provided to the user.
[1536] Finally, the server connects with map software (Google Maps, Apple Maps) to obtain the optimal route based on the confirmed itinerary. This includes walking routes, public transport routes, car routes, etc. The obtained information is sent to the device and provides real-time navigation.
[1537] For example, a user might enter a prompt into the app: "I want to see the cherry blossoms in Tokyo. I'm planning a three-day trip for two people. What travel plans do you recommend?" Based on this prompt, the server analyzes and generates an optimal travel plan, which is then presented to the device, allowing the user to plan their trip.
[1538] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1539] Step 1:
[1540] The user launches the smartphone application and inputs travel conditions (area, sightseeing genre, date and time, number of people, etc.). At this time, they input in free-word format, such as "Tokyo, sightseeing, cherry blossoms, 2 people, 3 days," and the data is sent to the server. The input data is raw text information.
[1541] Step 2:
[1542] The device sends the input data to the server. The server uses natural language processing libraries (NLTK, spaCy) that run on Python to analyze the input data. It analyzes the text data and extracts keywords such as "Tokyo," "cherry blossom sightseeing," "spring," "two people," and "three days." This outputs structured data that has been analyzed from the raw text data.
[1543] Step 3:
[1544] The server runs an emotion engine (IBM Watson Tone Analyzer, Microsoft Azure Text Analytics). The emotion engine estimates emotions from the input text, the user's tone of voice, and facial expressions. This analysis yields emotional information indicating the user's excitement. The input is the analyzed keywords and the user's voice and facial expression data, and the output is emotional information.
[1545] Step 4:
[1546] Based on the analyzed travel conditions and emotional information, the server accesses multiple travel information APIs (Expedia API, Travelport API) to obtain data on the relevant travel plans. The obtained data is stored in JSON format. At this point, the server processes a huge amount of data and extracts a list of relevant travel plans. The input is the analyzed keywords and emotional information, and the output is a list of travel plans.
[1547] Step 5:
[1548] The server generates optimal itineraries based on the acquired itinerary data using generative AI models (OpenAI GPT, Google BERT). This filtering takes into account price, accessibility, review ratings, and sentiment information. The list of generated itineraries is again stored in JSON format. The input is a list of itineraries, and the output is a list of optimal itineraries.
[1549] Step 6:
[1550] The server sends the optimal travel plan to the device and displays it on the device screen. The user reviews it and selects and customizes the plan that best suits them. For example, they can change specific tourist spots or accommodations. The customized plan is then sent from the device to the server. The input is the user's selection and customization information, and the output is the updated travel plan.
[1551] Step 7:
[1552] The server generates an original travel itinerary based on the confirmed plan. The itinerary includes information such as accommodation reservation information, details of tourist attractions, places to eat, and transportation. The generated itinerary information is again stored in JSON format and sent to the terminal. The input is the confirmed travel plan, and the output is the original itinerary.
[1553] Step 8:
[1554] The server generates personalized tour guide information based on the user's age, knowledge level, and emotional information. For example, it suggests family-friendly tourist spots, places that are friendly to the elderly, and places and activities where people can relax. This information is sent to the terminal and provided to the user. The input is the user's age, knowledge level, and emotional information, and the output is personalized tour guide information.
[1555] Step 9:
[1556] The server works with map software to obtain the optimal travel route based on the confirmed travel plan. This includes walking routes, public transportation routes, and car routes. The obtained traffic and route information is sent to the device, which provides real-time navigation. The input is the confirmed travel plan, and the output is the optimal travel route.
[1557] Through the above processing flow, users can obtain the optimal travel plan based on their individual needs and feelings, and can enjoy their entire trip efficiently and with a high level of satisfaction.
[1558] (Application example 2)
[1559] 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."
[1560] Current food delivery services lack mechanisms for suggesting optimal menu items based on users' individual emotions and preferences. This makes it difficult for users to select a menu that matches their mood and situation, resulting in low satisfaction. Furthermore, it is difficult to track delivery routes and delivery status in real time, leaving room for improvement in the overall user experience.
[1561] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1562] In this invention, the server includes an input means for receiving free word ordering conditions from a user, an analysis means for analyzing the ordering conditions received from the input means, a comparison means for collating an optimal menu from databases of multiple food delivery systems based on the ordering conditions analyzed by the analysis means, a generation means for generating multiple menus optimal for the user from the menus compared by the comparison means, a proposal means for proposing the menus generated by the generation means to the user, a plan generation means for generating an original delivery plan based on the menu confirmed by the user, an output means for providing the plan generated by the plan generation means to the user, a food information provision means for providing personalized food information according to the age and emotional information of the user, and a navigation means for presenting an optimal route based on the menu in cooperation with a map application. This enables the proposal of an optimal menu based on the user's emotions and situation and real-time management of delivery routes and statuses.
[1563] The "input means" is a means for accepting order conditions from the user in free words.
[1564] The "analysis means" is a means for analyzing the order conditions received from the input means.
[1565] The "checking means" is a means for checking the databases of a plurality of food serving systems to find the most suitable menu based on the order conditions analyzed by the analyzing means.
[1566] The "generation means" is a means for generating a plurality of menus that are optimal for the user from among the menus collated by the collation means.
[1567] The "proposing means" is a means for proposing the menu generated by the generating means to the user.
[1568] The "plan generation means" is a means for generating an original delivery plan based on a menu determined by the user.
[1569] The "output means" is a means for providing the plan generated by the plan generation means to the user.
[1570] The "cooking information providing means" is a means for providing personalized cooking information according to the age and emotional information of the user.
[1571] The "navigation means" is a means for presenting the optimum route based on the menu in cooperation with a map application.
[1572] The present invention will be described using a smartphone-based food delivery system as an example. This system allows users to input information such as meal requirements, budget, and number of people, and analyzes emotional information to suggest the optimal menu. It also has a function that allows users to track delivery routes and status in real time.
[1573] First, the user enters the order conditions using a smartphone application. This input method can accept free words, such as "pizza, spicy, for three people, budget 5,000 yen."
[1574] The entered data is sent from the smartphone to a server. The server analyzes the input data using natural language processing technology (for example, Google Cloud Natural Language API) and identifies the order conditions. The results of this analysis are converted into specific condition information such as "pizza," "spicy," "3 people," and "5,000 yen."
[1575] Next, the server uses an emotion analysis engine (e.g., Affdex SDK) to estimate the user's emotion from their input, tone of voice, facial expression, etc. As a result, emotional information such as "excited" or "relaxed" can be obtained.
[1576] The server accesses multiple food delivery systems (e.g., Zomato API and Yelp API) based on the analyzed order conditions and emotion information to retrieve the corresponding menu data. Because the retrieved menu data is often huge, it is filtered to generate a menu that best suits the user's conditions and emotions.
[1577] The generated menu is displayed on the smartphone in a way that makes it easy for users to compare. Users can compare the multiple suggested menus and select or customize the most suitable menu. For example, they can customize the "Hot Pepper Pizza (4,500 yen, very spicy)" by adding cheese.
[1578] Once the user has determined the optimal menu, the information is sent to the server, which then generates a custom delivery plan based on the determined menu, including information such as delivery route, delivery time, and delivery status.
[1579] The delivery plan is linked to a map app (e.g., Google Maps API) to obtain the optimal route and is displayed in real time on the smartphone, making it easier for users to keep track of the delivery progress.
[1580] Furthermore, the server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone. For example, it suggests "kid-friendly menus" for families with children, and "menus that can be prepared quickly" for busy business people.
[1581] As a concrete example, suppose a user launches the app and enters "Belgian waffles, something sweet, for two people, budget 3000 yen." The following prompt is used:
[1582] Analyze the user's request and extract the conditions: Belgian waffles, sweet food, for two people, budget 3000 yen. Furthermore, suggest the optimal menu based on the user's current emotions.
[1583] The emotion analysis engine analyzes the user's emotions and infers, for example, that they are "relaxed." Based on this result, the system filters data obtained from multiple food delivery systems to generate and suggest the optimal menu.
[1584] In this way, the system can suggest optimal menus based on the user's emotions and situation, and manage delivery routes and status in real time.
[1585] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1586] Step 1:
[1587] The user launches the application on their smartphone and enters the ordering conditions (type of meal, budget, number of people, etc.) using free words.
[1588] Input: User requirements (e.g., "Pizza, spicy, for 3 people, budget 5,000 yen")
[1589] What it does: A smartphone app accepts user input.
[1590] Output: The accepted input data
[1591] Step 2:
[1592] The terminal transmits the input data to the server.
[1593] Input: The input data received
[1594] How it works: The smartphone app sends input data over the network to the server.
[1595] Output: Input data received on the server side
[1596] Step 3:
[1597] The server analyzes the input data using natural language processing technology (e.g., Google Cloud Natural Language API) and identifies the order conditions.
[1598] Input: The input data received by the server (e.g., "Pizza, spicy, 3 people, budget 5,000 yen")
[1599] Operation: The server performs natural language processing, analyzes the text data, and extracts condition information.
[1600] Output: Analyzed condition data (e.g. "pizza", "spicy", "3 people", "5000 yen")
[1601] Step 4:
[1602] The server uses an emotion analysis engine (e.g., Affdex SDK) to estimate emotions from the user's text, tone of voice, facial expressions, etc.
[1603] Input: User-entered text and voice data
[1604] Operation: The server runs the emotion analysis engine and estimates emotion information.
[1605] Output: Estimated emotion information (e.g., "excited")
[1606] Step 5:
[1607] Based on the analyzed order conditions and emotion information, the server accesses the APIs of multiple food delivery systems (e.g., Zomato API, Yelp API) and retrieves the corresponding menu data.
[1608] Input: Parsed order conditions, sentiment information
[1609] Operation: The server sends a request to the API of each food delivery system to obtain menu information.
[1610] Output: Retrieved menu data
[1611] Step 6:
[1612] The server filters the acquired menu information and generates a menu that best suits the user's conditions and emotions.
[1613] Input: Retrieved menu data
[1614] How it works: The server runs an algorithm that filters data based on criteria and selects the best menu.
[1615] Output: Optimal menu (e.g. "Hot Pepper Pizza (4500 yen, very spicy)")
[1616] Step 7:
[1617] The server proposes the generated menu to the user.
[1618] Enter: Optimal Menu
[1619] How it works: The server sends the optimal menu to the smartphone app.
[1620] Output: Optimal menu displayed on smartphone
[1621] Step 8:
[1622] The user compares the proposed menus and selects or customizes the most suitable menu.
[1623] Input: Menu options displayed on your smartphone
[1624] What it does: The user taps on the provided menu to select or customize.
[1625] Output: Selected optimal menu or customized menu
[1626] Step 9:
[1627] The server generates an original delivery plan based on the menu determined by the user.
[1628] Input: Selected or customized menu
[1629] Operation: The server runs an algorithm that generates a delivery plan based on the user's menu selections.
[1630] Output: The generated delivery plan
[1631] Step 10:
[1632] The server works with a map app (e.g., Google Maps API) to obtain the optimal delivery route based on the confirmed menu and displays it on the smartphone in real time.
[1633] Input: Generated delivery plan
[1634] How it works: The server calls the map app's API to obtain route information and sends it to the smartphone.
[1635] Output: Real-time delivery route displayed on a smartphone map app
[1636] Step 11:
[1637] The server generates personalized cooking information based on the user's age and emotional information and provides it to the smartphone.
[1638] Input: User's age information, emotional information, confirmed menu
[1639] How it works: The server runs an algorithm that generates appropriate cooking information based on age and emotions, and sends it to the smartphone.
[1640] Output: Personalized recipe information displayed on a smartphone
[1641] 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.
[1642] 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...
Claims
1. an input means for accepting free word travel conditions from users; analysis means for analyzing the travel conditions received from the input means; a comparison means for comparing an optimal travel plan from the databases of a plurality of travel agencies based on the travel conditions analyzed by the analysis means; a generation means for generating a plurality of travel plans optimal for a user from among the travel plans collated by the collation means; a proposal means for proposing the travel plan generated by the generation means to a user; an itinerary generation means for generating an original itinerary based on a travel plan confirmed by a user; an output means for providing the itinerary generated by the itinerary generation means to a user; a tour guide providing means for providing personalized tour guide information according to the age and knowledge level of the user; a navigation means for displaying an optimal route based on the travel plan in cooperation with a map application; A system including:
2. 2. The system according to claim 1, wherein the analyzing means analyzes the travel conditions using natural language processing technology.
3. 2. The system according to claim 1, wherein the comparison means calls APIs of a plurality of travel agencies to obtain travel plan data.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A