Information processing device, information processing method, and information processing program

The information processing device optimizes route planning by dividing areas and connecting routes within them to avoid repeated passes through the same points, enhancing user experience by reducing inefficiencies.

JP2026093795APending Publication Date: 2026-06-09PIONEER IP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
PIONEER IP
Filing Date
2024-11-28
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

Conventional route planning technologies often propose inefficient routes that pass through the same intersection multiple times, causing user discomfort during travel or drives.

Method used

An information processing device that divides an area into parts, searches for routes through visit spots within each part, and connects these routes to set a path that minimizes repeated passes through the same points, using a division unit, search unit, and setting unit to optimize the route.

Benefits of technology

The solution reduces user discomfort by minimizing repeated passes through the same points, creating a more efficient and natural-feeling travel or drive route.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026093795000001_ABST
    Figure 2026093795000001_ABST
Patent Text Reader

Abstract

The goal is to set up a route that minimizes user discomfort. [Solution] The server device 20 provides a route that passes through multiple visit spots within the area. The server device 20 has a division unit 23c, a search unit 23e, and a setting unit 23f. The division unit 23c divides the area into at least a first part and a second part. The search unit 23e searches for routes that pass through visit spots within the first part and the second part divided by the division unit 23c. The setting unit 23f connects the routes of the first part and the second part searched by the search unit 23e to set a route that passes through multiple visit spots.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, an information processing method, and an information processing program.

Background Art

[0002] Conventionally, a technique for searching for a route that travels through a plurality of visit spots and reaches a destination has been known. For example, a recommendation device that proposes a travel plan including visit destinations and their tour order according to the desired conditions of a user for travel or a drive has been proposed (for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, in the above conventional technology, there is room for improvement when providing a route passing through a plurality of visit spots in travel or a drive. For example, when visiting a plurality of visit spots in travel or a drive, if a route that passes through the same intersection multiple times is proposed, the user may feel a sense of discomfort, such as thinking that an inefficient route is being proposed.

[0005] However, in the above conventional technology, no consideration is given to suppressing passing through the same point multiple times.

[0006] An object of the present invention is to provide an information processing apparatus, an information processing method, and an information processing program capable of setting a route with low user discomfort.

Means for Solving the Problems

[0007] To solve the above-mentioned problems and achieve the objective, the information processing device according to the present invention provides a route that passes through multiple visit spots within an area. The information processing device according to the present invention comprises a division unit, a search unit, and a setting unit. The division unit divides the area into at least a first part and a second part. The search unit searches for routes that pass through visit spots within the first part and the second part divided by the division unit. The setting unit connects the routes of the first part and the second part searched by the search unit to set a route that passes through multiple visit spots.

[0008] Furthermore, the information processing method according to the present invention is an information processing method executed by an information processing device that provides a route passing through multiple visit spots within an area. The information processing method according to the present invention includes a division step of dividing an area into at least a first part and a second part, a search step of searching for routes passing through visit spots within the first part and the second part divided by the division step, and a setting step of connecting the routes of the first part and the second part found by the search step to set a route passing through multiple visit spots.

[0009] Furthermore, the information processing program according to the present invention is an information processing program to be executed by an information processing device that provides a route passing through multiple visit spots within an area. The information processing program according to the present invention causes the information processing device to execute a division step of dividing an area into at least a first part and a second part, a search step of searching for routes passing through visit spots within the first part and the second part divided by the division step, and a setting step of connecting the routes of the first part and the second part found by the search step to set a route passing through multiple visit spots. [Brief explanation of the drawing]

[0010] [Figure 1] Figure 1 is a block diagram showing an example of the configuration of an information processing system according to an embodiment. [Figure 2] Figure 2 is a block diagram showing an example configuration of a server device according to this embodiment. [Figure 3A]Figure 3A is a diagram illustrating the process of setting a route according to the embodiment. [Figure 3B] Figure 3B is a diagram illustrating the process of setting a route according to the embodiment. [Figure 3C] Figure 3C is a diagram illustrating the process of setting a route according to the embodiment. [Figure 4A] Figure 4A is a diagram illustrating the process of setting a route according to the embodiment. [Figure 4B] Figure 4B is a diagram illustrating the process of setting a route according to the embodiment. [Figure 4C] Figure 4C is a diagram illustrating the process of setting a route according to the embodiment. [Figure 5] Figure 5 is a flowchart showing an example of the information processing flow according to the present invention. [Figure 6] Figure 6 is a hardware configuration diagram showing an example of a computer that implements the functions of the server device of the embodiment. [Modes for carrying out the invention]

[0011] Embodiments of the information processing apparatus, information processing method, and information processing program according to the present invention will be described in detail below with reference to the drawings. However, the present invention is not limited to the embodiments described below.

[0012] (Embodiment) (1. Example of Information Processing System 1 configuration) Figure 1 is a block diagram showing an example of the configuration of the information processing system 1 according to an embodiment. The information processing system 1 is a system that provides travel plans for trips and drives.

[0013] As shown in Figure 1, the information processing system 1 comprises a terminal device 10 and a server device 20. The terminal device 10 and the server device 20 are connected to each other via a network NW. The network NW is, for example, the Internet.

[0014] The server device 20 is a device that provides a service for providing a route passing through a plurality of visit spots as a travel plan during travel or a drive. The server device 20 is a computer such as a server computer, for example. The server device 20 may be implemented as a single computer or may be implemented by a plurality of computers. In this embodiment, the case where the server device 20 is a single computer will be described as an example. In this embodiment, the server device 20 corresponds to the information processing device according to the present invention.

[0015] The terminal device 10 is a device used by a user who uses the service provided by the server device 20. The terminal device 10 is a portable terminal device such as a smartphone, a tablet terminal, a notebook PC, a desktop PC, or a PDA, for example. Note that the terminal device 10 may be an information processing device such as a notebook PC (Personal Computer) or a desktop PC. Further, the terminal device 10 may be an in-vehicle device mounted on a vehicle. For example, the terminal device 10 may be a dedicated navigation device built into a vehicle or a dedicated navigation device attached to a vehicle.

[0016] The user accesses the server device 20 using the terminal device 10 and uses the service. The user specifies search conditions to the server device 20 and requests a search for a travel plan. The server device 20 searches for a plurality of visit spots in response to the request from the user and provides a route passing through the plurality of visit spots as a travel plan.

[0017] (2. Configuration Example and Processing Example of Server Device 20) Next, a configuration example and a processing example of the server device 20 will be described. FIG. 2 is a block diagram showing a configuration example of the server device 20 according to the embodiment.

[0018] The server device 20 includes a communication unit 21, a storage unit 22, and a control unit 23. The server device 20 may further include an input unit (such as a keyboard or a mouse) for receiving various operations from an administrator or the like of the server device 20, and a display unit (such as a liquid crystal display) for displaying various information.

[0019] The communication unit 21 is realized by, for example, a NIC (Network Interface Card) or the like. The communication unit 21 is connected to a predetermined communication network by wire or wirelessly, and transmits and receives information to and from various devices.

[0020] The storage unit 22 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 22 stores an OS (Operating System) and various programs executed by the control unit 23. For example, the storage unit 22 stores an information processing program according to the embodiment. Further, the storage unit 22 stores various data used in the programs executed by the control unit 23. For example, the storage unit 22 stores visit spot information 22a.

[0021] The visit spot information 22a is data that stores information about visit spots that are candidates for visit destinations in tourism or the like. For example, tourist spots around the world are stored as visit spots in the visit spot information 22a. In the visit spot information 22a, various information about each visit spot, such as the location information of the visit spot and the type of the visit spot, is stored for each visit spot. The type of visit spot is information indicating what type of tourist spot the visit spot is, and examples include amusement parks, museums, scenic spots, and gourmet spots. Also, the visit spots are grouped and divided into areas according to their locations. For example, the visit spots are pre-divided into areas in terms of tourist areas. In the visit spot information 22a, the area to which each visit spot belongs is stored for each visit spot.

[0022] The control unit 23 is a controller that controls the server device 20. The control unit 23 is implemented by a processor such as a CPU (Central Processing Unit) or MPU (Micro Processing Unit) executing various programs (corresponding to an example of an information processing program) stored in the memory device inside the control unit 23, using RAM as the working area. Alternatively, the control unit 23 can be implemented by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array).

[0023] The control unit 23 includes a reception unit 23a, a selection unit 23b, a classification unit 23c, a specific unit 23d, a search unit 23e, a setting unit 23f, and a proposal unit 23g, and realizes or executes the information processing functions and operations described below. Note that the internal configuration of the control unit 23 is not limited to the configuration shown in Figure 2, and other configurations are also acceptable as long as they perform the information processing described later.

[0024] The reception unit 23a receives a request to search for a travel plan from the terminal device 10 by specifying the search conditions. For example, the reception unit 23a generates data for a search screen for searching for a travel plan and sends it to the terminal device 10 to display the search screen on the terminal device 10. The search screen allows the user to specify the search conditions for the travel plan. For example, the search screen allows the user to specify the departure point, destination, return point, and date as search conditions. The search screen may also allow the user to specify the area and the type of place to visit as search conditions. The reception unit 23a receives a request to search for a travel plan from the search screen displayed on the terminal device 10 by allowing the user to specify the search conditions.

[0025] The selection unit 23b selects a visit spot from the visit spot information 22a based on the search conditions received by the reception unit 23a. For example, the selection unit 23b selects a visit spot from the visit spot information 22a that satisfies the search conditions.

[0026] Figures 3A to 3C illustrate the process of setting a route according to this embodiment. Figures 3A to 3C show the selected visiting spots 50 in general terms, with the departure point and return point being the home 55, the destination being the accommodation 56, and the itinerary being 1 night and 2 days. In Figures 3A to 3C, multiple visiting spots 50 in area 60A, which includes the destination accommodation 56, and area 60B are selected.

[0027] Returning to Figure 2, the division unit 23c divides the area containing the visit spots selected by the selection unit 23b into at least a first part and a second part. For example, the division unit 23c extracts branching points from main roads that are used to access each area. Main roads are roads that connect major points nationwide or within a region or city and form the backbone of the road network. Examples of main roads include expressways and national highways. For example, the division unit 23c extracts the nearest interchange of the expressway that is used to access each area for each area. The division unit 23c may also extract facilities where rest stops are possible, such as convenience stores or roadside rest areas, near the branching points of main roads as branching points.

[0028] The division unit 23c identifies, for each area, the centroid of the area or a first visit spot located within a predetermined distance from the centroid. For example, the division unit 23c identifies, for each area, the first visit spot closest to the centroid of the area. The centroid of the area referred to here may be the centroid of the area's area, the centroid of the distribution of visit spots within the area, or a position pre-set as the approximate centroid of each area. In other words, the centroid of the area may be a reference position located approximately in the center of the area. The division unit 23c divides each area into a first and second part based on a straight line connecting the extracted branching point and the centroid of the area or the first visit spot. Furthermore, if there is an accommodation destination within the area, the division unit 23c prioritizes the accommodation destination over the centroid of the area and divides the area into a first and second part based on a straight line connecting the branching point and the accommodation destination. The division unit 23c divides the visit spots selected by the selection unit 23b into groups of visit spots in the first part and groups of visit spots in the second part, for each area.

[0029] Figure 3B shows the process of dividing areas 60A and 60B into a first and second part. In the example in Figure 3B, the division unit 23c extracts the nearest interchanges (ICs) 62A and 62B of the expressway 61 in areas 60A and 60B, respectively. For area 60A, the division unit 23c identifies the visit spot 50 closest to the centroid of area 60A as the first visit spot 51. The division unit 23c divides area 60A into a first and second part based on the straight line LA connecting interchange 62A and the first visit spot 51. On the other hand, area 60B includes accommodation 56. For area 60B, since accommodation 56 is included within area 60B, the division unit 23c divides area 60B into a first and second part based on the straight line LB connecting interchange 62B and accommodation 56.

[0030] The division unit 23c divides the visiting spots 50 into two groups for each area: a group of visiting spots 50 within the first part and a group of visiting spots 50 within the second part. For example, the division unit 23c finds the angle ω with respect to the line connecting the branching point and the centroid of the area or the first visiting spot 51 for each area, and divides the visiting spots 50 into two groups based on the relationship between angle ω and angle π. Also, if there is an accommodation destination within the area, the division unit 23c finds the angle ω with respect to the line connecting the branching point and the accommodation destination, and divides the visiting spots 50 into two groups based on the relationship between angle ω and angle π. For example, the division unit 23c divides the visiting spots 50 into a group where the angle ω with respect to the line is 0 ≤ ω < π, and a group where the angle ω is π ≤ ω < 2π.

[0031] In the example shown in Figure 3B, the division unit 23c identifies a straight line LA connecting interchange 62A and the first visit spot 51 in area 60A, and calculates the angle ω of the visit spot 50 relative to the straight line LA, with the first visit spot 51 as the center of rotation. Based on the relationship between angle ω and angle π, the division unit 23c divides the visit spots 50 into group 1 and group 2. Similarly, for area 60B, the division unit 23c identifies a straight line LB connecting interchange 62B and accommodation 56, and calculates the angle ω of the visit spot 50 relative to the straight line LB, with accommodation 56 as the center of rotation. Based on the relationship between angle ω and angle π, the division unit 23c divides the visit spots 50 into group 3 and group 4.

[0032] Returning to Figure 2, the identification unit 23d identifies a specific visit spot from among the multiple visit spots selected by the selection unit 23b, based on the ease of returning to the destination. The identification unit 23d identifies the visit spot closest to the destination as the specific visit spot. The identification unit 23d identifies the visit spot that minimizes the travel distance or travel time to the destination as the specific visit spot.

[0033] If the multiple visit spots selected by the selection unit 23b are located in multiple areas, the identification unit 23d sets a local return point in each of the multiple areas, which will be a local return point for that area. For example, the identification unit 23d sets the branching point from the main road that is used to access each area as the local return point for each area. Then, for each area, the identification unit 23d identifies specific visit spots from among the visit spots within that area based on the ease of returning to the local return point. For each area, the identification unit 23d identifies specific visit spots from the first part and the second part based on the ease of returning to the branching point designated as the local return point. For example, for each area, the identification unit 23d identifies the closest visit spot that minimizes the travel distance from the first part and the second part to the branching point designated as the local return point as the specific visit spot.

[0034] In the example shown in Figure 3B, the identification unit 23d sets interchange 62A as the local destination for area 60A. The identification unit 23d identifies the closest visiting spots 50 that minimize the travel distance from the first and second parts of area 60A to interchange 62A, respectively, as designated visiting spots 52Aa and 52Ab. Similarly, the identification unit 23d sets interchange 62B as the local destination for area 60B. The identification unit 23d identifies the closest visiting spots 50 that minimize the travel distance from the first and second parts of area 60B to interchange 62B, respectively, as designated visiting spots 52Ba and 52Bb.

[0035] Returning to Figure 2, the search unit 23e searches for routes that pass through the visited spots within the first and second parts for each of the multiple areas. For each area, the search unit 23e searches for routes from the branching point designated as the local destination for the first and second parts, passing through the visited spots within the part to reach the first visited spot. For example, for each of the multiple areas, the search unit 23e identifies the return route and the outbound route for each area, designating the part of the first and second parts that contains the visited spot closest to the branching point designated as the local destination as the return route, and the other part as the outbound route. For example, the search unit 23e compares which of the specific visited spots in the first part and the specific visited spot in the second part is closer to the branching point designated as the local destination for each area. The search unit 23e identifies the return route and the outbound route for each of the first and second parts, designating the part in which the specific visited spot is closer to the branching point as the return route, and the other part as the outbound route. The search unit 23e identifies groups of visiting spots for the return journey as return journey groups for each area.

[0036] The search unit 23e searches for a route for each of the multiple areas, starting from a branching point designated as a local destination for the outward journey, passing through visited spots within the outward journey, to the first visited spot. The search unit 23e also searches for a route for each area, starting from the first visited spot, passing through visited spots within the return journey, to the branching point. The search unit 23e searches for a route where the first visited spot in the outward journey is the branching point closest to the local destination within the outward journey, and searches for a route where the last visited spot in the return journey is the branching point closest to the branching point within the return journey. In other words, the search unit 23e searches for a route for each area where a specific visited spot in the outward journey is the first visited spot within the outward journey, and searches for a route where a specific visited spot in the return journey is the last visited spot within the return journey. Furthermore, if there is an accommodation within the area, the search unit 23e searches for a route from the branching point designated as the local return destination to the accommodation via the visited spots in the outbound portion, and for the return portion, it searches for a route from the accommodation to the branching point via the visited spots in the return portion. Any known search method may be used to search for the route. For example, the search unit 23e searches for a route that passes through the visited spots in a way that minimizes the travel distance or travel time between the visited spots.

[0037] Figure 3C shows the process of searching for routes in areas 60A and 60B. In the example in Figure 3C, the search unit 23e compares which of the specific visit spots 52Aa and 52Ab is closer to interchange 62A in area 60A, and identifies the second part, which includes the specific visit spot 52Ab that is closer to interchange 62A, as the return route, and the first part as the outbound route. The search unit 23e identifies group 2 of the visit spots 50 in the second part, which is the return route, as the return route group, and identifies group 1 of the visit spots 50 in the first part, which is the outbound route group. The identification unit 23d also compares which of the specific visit spots 52Ba and 52Bb is closer to interchange 62B in area 60B, and identifies the second part, which includes the specific visit spot 52Bb that is closer to interchange 62B, as the return route, and the first part as the outbound route. The search unit 23e identifies group 4 of the visit spots 50 in the second part, which is designated as the return journey, as the return journey group, and identifies group 3 of the visit spots 50 in the first part, which is designated as the outward journey group.

[0038] The search unit 23e searches for a route from Interchange 62A to the first visit spot 51, via visit spots 50 within the first part, with the first visit spot 52Aa as the first destination. For example, the search unit 23e searches for a route from Interchange 62A to the first visit spot 51, via visit spots 50 in group 1 (outbound group) of the first part, with the first visit spot 52Aa as the first destination. The search unit 23e also searches for a route from Interchange 62A to Interchange 62A, with the second part, which is the return route of Area 60A, with the first visit spot 51 as the last destination, via visit spots 50 within the second part. For example, the search unit 23e searches for a route from the first visit spot 51 to the first visit spot 51, via visit spots 50 in group 2 (return group) of the second part, with the first visit spot 52Ab as the last destination. Furthermore, the search unit 23e searches for a route from Interchange 62B to the accommodation 56 via the visitor spots 50 within the first part, starting with the specific visitor spot 52Ba as the first destination. For example, the search unit 23e searches for a route from Interchange 62B to the accommodation 56 via the visitor spots 50 in group 3 (outbound group) of the first part, starting with the specific visitor spot 52Ba as the first destination. Furthermore, the search unit 23e searches for a route from Interchange 62B to Interchange 62B via the visitor spots 50 within the second part, starting with the specific visitor spot 52Bb as the last destination, starting with the specific visitor spot 52Bb as the last destination. For example, the search unit 23e searches for a route from Interchange 62B to Interchange 62B via the visitor spots 50 in group 4 (return group) of the second part, starting with the specific visitor spot 52Bb as the last destination.

[0039] Returning to Figure 2, the setting unit 23f sets a route for each area based on the search results from the search unit 23e. For each area, the setting unit 23f connects the first and second parts of the route searched by the search unit 23e to set a route that passes through the visiting spots within the area. For each area, the setting unit 23f connects the outbound route and the return route to set a route that passes through multiple visiting spots. In the return route, the nearest visiting spot that minimizes the travel distance to the branching point designated as the local destination within the area is designated as the specific visiting spot, and the route is searched with the specific visiting spot as the final destination. Therefore, for each area, the setting unit 23f can set a route that passes through multiple visiting spots, with the nearest specific visiting spot that minimizes the travel distance to the branching point as the final destination, by connecting the outbound route and the return route.

[0040] In the example shown in Figure 3C, the setting unit 23f sets a route for area 60A by connecting the first part of the route designated as the outbound journey and the second part of the route designated as the return journey, passing through the visit spot 50 within area 60A. The search unit 23e also sets a route for area 60B by connecting the first part of the route designated as the outbound journey and the second part of the route designated as the return journey, passing through the visit spot 50 within area 60B. As a result, in area 60A, a route is set that passes through the visit spot 50 within area 60A, with the nearest specific visit spot 52Ab, which has the shortest travel distance to interchange 62A, as the final destination. Similarly, in area 60B, a route is set that passes through the visit spot 50 within area 60A, with the nearest specific visit spot 52Bb, which has the shortest travel distance to interchange 62B, as the final destination.

[0041] The setting unit 23f connects the routes of each area in order of distance from the designated destination, and sets a route that goes through the visited spots in each area to reach the destination. For example, the setting unit 23f connects the branching points designated as local destinations of the routes in each area in order of distance from the destination, connects the branching point designated as a local destination of the route in the area furthest from the destination to the starting point, and connects the branching point designated as a local destination of the route in the area closest to the destination to the destination, thereby setting a route that connects the routes of each area to reach the destination.

[0042] In the example in Figure 3C, Area 60A is further from the destination, home 55, than Area 60B. The setting unit 23f sets a route that goes from the starting point, through Areas 60A and 60B in order, to the destination. For example, the setting unit 23f connects Interchange 62A on the Area 60A route to the starting point, home 55. Also, the setting unit 23f connects Interchange 62A on the Area 60A route to Interchange 62B on the Area 60B route. Also, the setting unit 23f connects Interchange 62B on the Area 60B route to the destination, home 55, setting a route that goes from the starting point, through Areas 60A and 60B in order, to the destination.

[0043] Returning to Figure 2, the suggestion unit 23g proposes a travel plan to the user, which is a route to the destination set by the setting unit 23f. For example, the suggestion unit 23g generates data for a travel plan screen that displays the route to the destination as a travel plan and transmits it to the terminal device 10, causing the terminal device 10 to display the travel plan screen. For example, the travel plan screen displays a route from the departure point shown in Figure 3C, which goes through areas 60A and 60B in order to reach the destination.

[0044] During travel or driving, fatigue accumulates in the user as the journey progresses. The proposed route is set so that as the journey progresses, the user gets closer to their home 55, the final destination, with the specific visiting spot 52Bb, which is closest to interchange 62B in area 60B, being the last destination. As a result, when a user uses the travel plan route, the fatigue the user experiences when moving from the last visiting spot to their home 55 is reduced. In this way, the server device 20 can set a route that reduces the user's load.

[0045] Furthermore, in the proposed routes, the routes within each area are set by connecting the routes of the first and second parts. For example, in area 60A, the route within area 60A is set by connecting the route that passes through the visiting spots 50 of group 1 (outbound group) of the first part and the route that passes through the visiting spots 50 of group 2 (return group) of the second part. In area 60B, the route within area 60B is set by connecting the route that passes through the visiting spots 50 of group 3 (outbound group) of the first part and the route that passes through the visiting spots 50 of group 4 (return group) of the second part. In this way, for areas 60A and 60B, by setting the routes to pass through the visiting spots 50 of the first part and then through the visiting spots 50 of the second part, routes that pass through the first and second parts multiple times are suppressed. As a result, when a user uses the proposed route as a travel plan, it is possible to suppress the user from feeling that the route is inefficient and therefore unnatural. In this way, the server device 20 can configure a route that minimizes user discomfort.

[0046] The above-described embodiment is merely an example and is not limited thereto. For example, the reception unit 23a may accept the departure time and the desired arrival time at the destination as search conditions for the travel plan. The setting unit 23f may calculate the allowable travel time from the departure time and the desired arrival time at the destination, and set the route by adding or removing visiting spots along the way according to the difference between the required time on the route and the allowable travel time. The allowable travel time is an estimated amount of time that is allowed to be used for travel, including the time the user spends at visiting spots. For example, if the difference between the required time on the route and the allowable travel time is greater than or equal to a predetermined time, the setting unit 23f may set the route by adding or removing visiting spots along the way. The predetermined time can be set to, for example, 1 to 1.5 hours. Alternatively, for example, the setting unit 23f may calculate the allowable travel time from the departure time and the desired arrival time at the destination, and set the route by adding or removing visiting spots along the way so as to minimize the difference between the required time on the route and the allowable travel time.

[0047] Figures 4A to 4C illustrate the process of setting a route according to the embodiment. In Figures 4A to 4C, the route shown in Figure 3C is set as a 2-day, 1-night trip, with a departure time from home 55 on day 1 set to 9:00 and a desired arrival time (check-in) at accommodation 56 set to 18:00. Similarly, the departure time from accommodation 56 on day 2 is set to 10:00 and a desired arrival time (check-in) at home 55 set to 18:00.

[0048] The setting unit 23f identifies the time required for the route to the set destination. For example, the setting unit 23f identifies the time required X for the route, which includes the travel time to the junction of the main road and rest time along the way. The setting unit 23f also identifies the time required Y for the outbound and return routes of each area, which includes the travel time and stay time at each visited spot. The stay time at each visited spot may be a standard stay time set for each visited spot, or it may be a fixed time. The setting unit 23f calculates the total time required for the route by adding the time required X to the junction and the time required Y for each area along the route. If the difference between the time required for the route and the allowable travel time is greater than or equal to a predetermined time, the setting unit 23f sets the route by adding or removing visited spots so that the difference between the time required for the route and the allowable travel time is minimized.

[0049] In the example shown in Figures 4A to 4C, the travel time X1 from home 55 to interchange 62A is 2 hours (h), and the travel time X2 between interchange 62A and interchange 62B is 0.5 hours. Also, the travel time Y21 for the outbound portion of area 60A is 0.5 hours, the travel time Y22 for the return portion of area 60A is 1 hour, the travel time Y11 for the outbound portion of area 60B is 4 hours, and the travel time Y12 for the return portion of area 60B is 6 hours.

[0050] The setting unit 23f calculates the allowable travel time for each day of the schedule based on the departure time and desired arrival time. Then, for each day of the schedule, if the difference between the required time on the route and the allowable travel time is greater than or equal to a predetermined time (for example, 1 hour), the setting unit 23f sets the route by adding or removing stops along the way so as to minimize the difference between the required time on the route and the allowable travel time.

[0051] Figure 4A shows an example of the process for setting the route for the first day. The setting unit 23f calculates an allowable travel time of 9 hours from the departure time of 9:00 from home 55 and the desired arrival time of 18:00 at the accommodation 56. The setting unit 23f also calculates the required time along the route for the first day. For example, the setting unit 23f calculates the required time from home 55 to accommodation 56 from X1+X2+Y21+Y2+X2+Y11 to be 8.5 hours. The current route from home 55 to accommodation 56 has a difference of 0.5 hours between the required time and the allowable travel time. The setting unit 23f sets the current route from home 55 to accommodation 56 as the route for the first day.

[0052] Figure 4B shows an example of the process for setting the route for the second day. The setting unit 23f calculates the allowable travel time to be 8 hours from the departure time from the accommodation 56 at 10:00 and the desired arrival time at home 55 at 18:00. The setting unit 23f also calculates the required time along the route for the second day. For example, the setting unit 23f calculates the required time from accommodation 56 to home 55 from Y12 + X1 to be 8 hours. The current route from accommodation 56 to home 55 has a difference of 0 hours between the required time and the allowable travel time. The setting unit 23f sets the current route from accommodation 56 to home 55 as the route for the second day.

[0053] Figure 4C shows another example of the process for setting the route for the second day. Figure 4C shows the case where the departure time from accommodation 56 is 9:00. The setting unit 23f calculates the allowable travel time as 9 hours from the departure time from accommodation 56 at 9:00 and the desired arrival time at home 55 at 18:00. The setting unit 23f also calculates the required time along the route for the second day. For example, the setting unit 23f calculates the required time from accommodation 56 to home 55 as 8 hours from Y12 + X1. The current route from accommodation 56 to home 55 has a difference of 1 hour between the required time and the allowable travel time. Therefore, the setting unit 23f adds a visiting spot 50 in area 60C in such a way that the difference between the required time and the allowable travel time along the route is minimized. In this case, the route for area 60C is set in the same way as for areas 60A and 60B. For example, the division unit 23c divides area 60C into a first part and a second part, and divides the visit spots 50 within area 60C into group 5 of the first part and group 6 of the second part. The identification unit 23d sets the nearest interchange 62C as the local return destination when accessing area 60C. The identification unit 23d identifies the closest visit spots 50 from the first part and the second part of area 60C that result in the shortest travel distance to interchange 62C as specific visit spots 52Ca and 52Cb, respectively. For area 60C, the identification unit 23d identifies the second part, which includes specific visit spot 52Cb that is closer to interchange 62C, as the return trip part, and the first part as the outbound trip part. The search unit 23e searches for a route for the first part of area 60C, designated as the outbound portion, starting from interchange 62C and passing through visitor spots 50 within the first part, with specific visitor spot 52Ca as the first destination. The search unit 23e also searches for a route for the second part of area 60C, designated as the return portion, starting from specific visitor spot 52Cb as the last destination, passing through visitor spots 50 within the second part to reach interchange 62C. The setting unit 23f sets a route for area 60C by connecting the route of the first part (outbound portion) and the route of the second part (return portion), passing through visitor spots 50 within area 60C.The setting unit 23f sets a route that connects areas 60A to 60C in order of distance from the designated destination, passing through the visiting spots in each area to reach the destination. In the example in Figure 4C, the travel time X3 from home 55 to interchange 62C is 1 hour (h), and the travel time X4 from interchange 62C to interchange 62B is 1 hour (h). Also, the travel time Y31 for the outbound portion of area C is 0.5 hours, and the travel time Y32 for the return portion of area C is 0.5 hours. After adding the visiting spot 50 in area 60C, the travel time for the route from accommodation 56 to home 55 is calculated as Y12 + X4 + Y31 + Y32 + X3, which is 9 hours. The difference between the travel time and the allowable travel time for the route from accommodation 56 to home 55 via the visiting spot 50 in area 60C is 0 hours. The setting unit 23f sets the route for the second day as the route from the accommodation 56, through the visiting spot 50 in area 60C, to the home 55.

[0054] (3. Processing flow of server device 20) An example of a processing procedure by the server device 20 according to the embodiment will be explained using Figure 5. Figure 5 is a flowchart showing an example of the information processing flow according to the embodiment.

[0055] The reception unit 23a receives a search request for a travel plan with specified search conditions from the terminal device 10 (S10). The selection unit 23b selects a visit spot from the visit spot information 22a based on the search conditions received by the reception unit 23a (S11).

[0056] The classification unit 23c extracts branching points from main roads used to access an area for each area containing the selected visit spot (S12). The classification unit 23c identifies a first visit spot located at the centroid of the area or within a predetermined distance from the centroid (S13). For example, the classification unit 23c identifies the first visit spot closest to the centroid of the area for each area. In the case of an area containing an accommodation, the accommodation may be identified as the first visit spot with priority over the centroid of the area.

[0057] The division unit 23c divides each area into a first part and a second part based on a straight line connecting the extracted branching point to the centroid of the area or the first visited spot (S14).

[0058] The division unit 23c divides the visiting spots selected by the selection unit 23b into two groups for each area: a group of visiting spots in the first part and a group of visiting spots in the second part (S15). For example, the division unit 23c finds the angle ω with respect to the line connecting the branching point and the centroid of the area or the first visiting spot for each area, and divides the visiting spots into two groups based on the relationship between angle ω and angle π. Also, if there is a lodging place that is both the destination and the first visiting spot within the area, the division unit 23c finds the angle ω with respect to the line connecting the branching point and the lodging place, and divides the visiting spots into two groups based on the relationship between angle ω and angle π.

[0059] The identification unit 23d sets a branching point as a local return destination for each area and identifies specific visiting spots from among the visiting spots within the area based on the ease of returning to the local return destination (S16).

[0060] The search unit 23e searches for routes for each area, from the branching point designated as the local destination to the first visited spot via the visited spots within the first and second parts (S17). For example, for each area, the search unit 23e identifies the return route and the outbound route for each area, designating the part of the first and second parts that includes the specific visited spot closest to the branching point designated as the local destination as the return route, and the other part as the outbound route. For the outbound route, the search unit 23e searches for a route from the branching point designated as the local destination to the first visited spot via the visited spots within the outbound route, and for the return route, it searches for a route from the first visited spot to the branching point via the visited spots within the return route. Furthermore, if there is an accommodation within the area, the search unit 23e searches for a route from the branching point designated as the local destination to the accommodation via the visited spots within the outbound route, and for the return route, it searches for a route from the accommodation to the branching point via the visited spots within the return route.

[0061] The setting unit 23f sets a route for each area based on the search results from the search unit 23e (S18). For example, the setting unit 23f sets a route for each area by connecting the routes of the first part and the second part and passing through the visit spots within the area. The setting unit 23f sets a route for each area by connecting the outbound route and the return route and passing through multiple visit spots.

[0062] The configuration unit 23f connects the routes of each area in order of distance from the designated destination and sets a route that goes through the visited spots in each area to reach the destination (S19).

[0063] The setting unit 23f calculates the allowable travel time from the departure time and the desired arrival time at the destination (S20). If the route spans multiple days, the setting unit 23f calculates the allowable travel time for each day of the schedule from the departure time and the desired arrival time.

[0064] The setting unit 23f identifies the time required for the route to the set destination (S21). If the route spans multiple days, the setting unit 23f calculates the time required for each day of the schedule.

[0065] The setting unit 23f sets the route by adding or removing visiting spots along the route according to the difference between the required time and the allowable travel time (S22). For example, if the difference between the required time and the allowable travel time along the route is greater than or equal to a predetermined time, the setting unit 23f sets the route by adding or removing visiting spots along the route. If the route spans multiple days, the setting unit 23f sets the route for each day of the schedule by adding or removing visiting spots along the route according to the difference between the required time and the allowable travel time.

[0066] The suggestion unit 23g proposes a route to the destination set by the setting unit 23f as a travel plan to the user (S23), and then terminates the process. For example, the suggestion unit 23g generates data for a travel plan screen that displays the route to the destination as a travel plan, and sends it to the terminal device 10 to display the travel plan screen on the terminal device 10.

[0067] In the above embodiment, the case described as one in which the server device 20 proposes a route to a set destination as a travel plan to the user of the terminal device 10. However, it is not limited to this. If the terminal device 10 is a navigation device installed in a vehicle, the server device 20 may set the route to the destination as a travel route to be navigated by the navigation device. Alternatively, the terminal device 10 may generate the travel plan instead of the server device 20 generating it. In this case, the terminal device 10 corresponds to the information processing device according to the present invention.

[0068] (4. Effects of the Embodiment) As described above, the server device 20 (information processing device) according to the embodiment provides a route that passes through multiple visit spots within an area. The server device 20 has a division unit 23c, a search unit 23e, and a setting unit 23f. The division unit 23c divides the area into at least a first part and a second part. The search unit 23e searches for a route that passes through visit spots within the first part and the second part divided by the division unit 23c. The setting unit 23f connects the routes of the first part and the second part found by the search unit 23e to set a route that passes through multiple visit spots. In this way, the server device 20 sets a route by connecting the routes of the first part and the second part, thereby suppressing the creation of a route that passes through the first part and the second part multiple times. This suppresses the user from feeling uncomfortable with an inefficient route when using a route proposed by the user as a travel plan. In this way, the server device 20 can set a route that is less uncomfortable for the user.

[0069] Furthermore, the division unit 23c divides the area into a first and second part based on a straight line connecting the branching point from the main road used to access the area and the centroid (approximately the center) of the area, or the first visit spot located within a predetermined distance from the centroid (approximately the center). In this way, the server device 20 can divide the area into a first and second part symmetrically with respect to the branching point by dividing the area into a first and second part based on a straight line connecting the branching point and the centroid (approximately the center) of the area or the first visit spot. In addition, it can prevent the size of the first and second parts from being significantly skewed to one side.

[0070] Furthermore, the search unit 23e searches for routes from the branching point to the first visit spot, passing through the visit spots within each section, for both the first and second sections. In this way, the server device 20 searches for routes from the branching point to the first visit spot, passing through the visit spots within each section, for both the first and second sections, making it easy to connect the routes of the first and second sections at the first visit spot.

[0071] Furthermore, the search unit 23e divides the first and second parts into two parts: the part containing the visit spot closest to the branching point is the return route, and the other part is the outbound route. For the outbound route, it searches for a route from the branching point to the first visit spot via the visit spots within the outbound route, and for the return route, it searches for a route from the first visit spot to the branching point via the visit spots within the return route. The setting unit 23f connects the outbound route and the return route to set a route that passes through multiple visit spots. In this way, the server device 20 searches for a route from the branching point to the first visit spot for the outbound route, and searches for a route from the first visit spot to the branching point for the return route. This allows the server device 20 to search for a route that complies with the constraints, even if there are restrictions on the direction of travel, such as one-way streets, for both the outbound and return routes. The server device 20 can then set a route that complies with the constraints for both the outbound and return routes by connecting the outbound route and the return route.

[0072] Furthermore, the search unit 23e searches for a route in the outbound journey where the visit spot closest to the branching point is the first destination in the outbound journey, and searches for a route in the return journey where the visit spot closest to the branching point is the last destination in the return journey. In this way, the server device 20 can reduce the user's travel burden when moving between branching points and areas by searching for a route in the outbound journey where the visit spot closest to the branching point is the first destination and in the return journey where the visit spot closest to the branching point is the last destination.

[0073] Furthermore, if multiple visit spots are located in multiple areas, the division unit 23c divides each area into a first part and a second part. The search unit 23e searches for routes that pass through the visit spots within the first part and second part divided by the division unit 23c for each area. The setting unit 23f connects the routes of the first part and the second part for each area to set a route that passes through the visit spots within the area, and connects the routes of each area in order of distance from the destination to set a route that goes through the visit spots in each area to reach the destination. In this way, the server device 20 can reduce the burden on the user's movement to the destination by setting a route that passes through areas in order of distance from the destination.

[0074] Furthermore, if there is an accommodation destination within the area, the division unit 23c divides the area into a first part and a second part based on a straight line connecting the branching point and the accommodation destination. In this way, the server device 20 can divide the area into a first part and a second part symmetrically with respect to the accommodation destination by a straight line connecting the branching point and the accommodation destination, and can efficiently set a route when visiting the first part and the second part on separate days.

[0075] Furthermore, the setting unit 23f calculates the allowable travel time from the departure time and the desired arrival time at the destination, and sets the route by adding or removing visiting spots so that the difference between the required time on the route and the allowable travel time is minimized. As a result, the server device 20 can set a route that allows visiting spots to be done in the shortest possible time with the smallest difference from the allowable travel time.

[0076] (5. Hardware Configuration) Furthermore, the server device 20 according to the embodiment described above can be realized by a computer 1000 having the configuration shown in Figure 6, for example. The following explanation will use the server device 20 as an example. Figure 6 is a hardware configuration diagram showing an example of a computer that realizes the functions of the server device of the embodiment. The computer 1000 has a CPU 1100, RAM 1200, ROM 1300, HDD 1400, communication interface (I / F) 1500, input / output interface (I / F) 1600, and media interface (I / F) 1700.

[0077] The CPU 1100 operates based on programs stored in the ROM 1300 or HDD 1400, controlling various components. The ROM 1300 stores boot programs executed by the CPU 1100 when the computer 1000 starts up, as well as programs that depend on the computer 1000's hardware.

[0078] The HDD1400 stores programs executed by the CPU1100, as well as data used by such programs. The communication interface1500 receives data from other devices via a predetermined communication network and sends it to the CPU1100, and transmits data generated by the CPU1100 to other devices via the predetermined communication network.

[0079] The CPU 1100 controls output devices such as displays and printers, and input devices such as keyboards and mice, via the input / output interface 1600. The CPU 1100 acquires data from input devices via the input / output interface 1600. The CPU 1100 also outputs the generated data to output devices via the input / output interface 1600.

[0080] The media interface 1700 reads a program or data stored in the recording medium 1800 and provides it to the CPU 1100 via the RAM 1200. The CPU 1100 loads the program from the recording medium 1800 onto the RAM 1200 via the media interface 1700 and executes the loaded program. The recording medium 1800 is, for example, an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase Change Rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.

[0081] For example, when the computer 1000 functions as a server device 20 according to the embodiment, the CPU 1100 of the computer 1000 realizes the functions of the control unit 23 by executing programs loaded on the RAM 1200. The CPU 1100 of the computer 1000 reads and executes these programs from the recording medium 1800, but as another example, these programs may be obtained from other devices via a predetermined communication network.

[0082] 〔others〕 Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by known methods. In addition, the processing procedures, specific names, and various data and parameters shown in the above document and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each figure is not limited to the information shown.

[0083] Furthermore, the components of each illustrated device are functionally conceptual and do not necessarily need to be physically configured as shown. In other words, the specific forms of distribution and integration of each device are not limited to those shown, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads and usage conditions.

[0084] Furthermore, the above embodiments can be combined as appropriate, provided that the processing content is not contradictory.

[0085] Although some embodiments of the present invention have been described in detail above with reference to the drawings, these are illustrative examples, and the present invention can be implemented in various other forms with modifications and improvements based on the knowledge of those skilled in the art, starting with the embodiments described in the disclosure section of the invention.

[0086] Furthermore, the terms "section," "module," and "unit" mentioned above can be replaced with terms like "means" or "circuit." For example, a communication unit can be replaced with communication means or a communication circuit. [Explanation of symbols]

[0087] 1. Information Processing System 10 Terminal devices 20 Server Devices 21 Communications Department 22 Memory section 22a Information on places to visit 23 Control Unit 23a Reception Department 23b Selection Section 23c Division 23d Specific part 23e Search Section 23f Settings Section 23g proposal department

Claims

1. An information processing device that provides a route that passes through multiple visitor spots within an area, A division section that divides the area into at least a first part and a second part, A search unit searches for routes that pass through the visited spots within the first and second parts, respectively, which are divided by the division unit, A setting unit connects the routes of the first and second parts found by the search unit to set a route that passes through the multiple visit spots, An information processing device having

2. The division section divides the area into a first part and a second part based on a straight line connecting a branching point from a main road used to access the area and the approximate center of the area, or a first visit spot located within a predetermined distance from the approximate center. The information processing apparatus according to claim 1.

3. The search unit searches for a route from the branching point to the first visit spot via the visit spots within the first and second parts, respectively. The information processing apparatus according to claim 2.

4. The aforementioned search unit, Of the first and second parts, the part containing the visiting spot closest to the branching point is designated as the return trip, and the other part as the outward trip. Regarding the outbound portion, a route is searched from the branching point, through the visit spots within the outbound portion, to the first visit spot. Regarding the return portion, a route is searched from the first visit spot, via the visit spots within the return portion, to the branching point. The aforementioned setting unit is, Connecting the outbound route and the return route, a route is set that passes through the multiple visitor spots. The information processing apparatus according to claim 2.

5. The search unit searches for a route in the outbound portion where the destination closest to the branching point is the first destination in the outbound portion, and searches for a route in the return portion where the destination closest to the branching point is the last destination in the return portion. The information processing apparatus according to claim 4.

6. The division section, when the multiple visiting spots are arranged in multiple areas, divides each area into the first part and the second part. The search unit searches for routes that pass through the visit spots within the first and second parts, respectively, which are divided by the division unit, for each area. The setting unit sets a route for each area by connecting the routes of the first part and the second part and passing through the visiting spots within the area, and sets a route that connects the routes of each area in order of distance from the destination and passes through the visiting spots in each area to reach the destination. The information processing apparatus according to claim 1.

7. If there is an accommodation destination within the area, the division section divides the area into a first part and a second part based on a straight line connecting the branching point and the accommodation destination. The information processing apparatus according to claim 2.

8. The setting unit calculates the allowable travel time from the departure time and the desired arrival time at the destination, and sets the route by adding or removing visiting spots along the route so as to minimize the difference between the required time along the route and the allowable travel time. The information processing apparatus according to claim 6.

9. An information processing method performed by an information processing device that provides a route passing through multiple visit spots within an area, A division step of dividing the area into at least a first part and a second part, A search step to search for routes that pass through the visited spots within the first and second parts separated by the aforementioned division step, A setting step involves connecting the routes of the first and second parts found in the search step to set a route that passes through the multiple visit spots, Information processing methods including

10. An information processing program to be executed by an information processing device that provides a route passing through multiple visitor spots within an area, A division step of dividing the area into at least a first part and a second part, A search step to search for routes that pass through the visited spots within the first and second parts separated by the division step, A setting step to set a route that passes through the multiple visit spots by connecting the routes of the first and second parts found in the search step, An information processing program that causes an information processing device to execute.