The entire disclosure of Japanese patent Application No. 2019-168219, filed on Sep. 17, 2019, is incorporated herein by reference in its entirety.
The present disclosure relates to a system, an information processing apparatus, and a program, and more particularly, to a system, an information processing apparatus, and a program capable of setting information about a movement of a moving body.
As one form of the sharing economy, there has been proposed a system of providing users traveling to the same destination with a moving body such as a vehicle they can ride together.
For example, Japanese Unexamined Patent Publication No. 2019-007761 provides a carpool system in which at least a carpooler that was determined to match a condition at a reservation can ride a reserved vehicle. Furthermore, Japanese Patent Application Laid-Open No. 2003-044702 provides a system that enables users to carpool as desired, only by issuing a desired carpooling condition.
A user sharing a ride may come across a scene where he or she needs to handle confidential information. There has been a demand for protecting the information from security risks such as leakage of the information to other users in the vehicle. Neither of Japanese Patent Laid-Open No. 2019-007761 or Japanese Patent Laid-Open No. 2003-044702 can meet such a need.
An object of the present disclosure is to provide a system, an information processing apparatus, and a program with which information handled by a user in a moving body can be protected from security risks.
To achieve the abovementioned object, according to an aspect of the present invention, a system reflecting one aspect of the present invention comprises: a hardware processor that: determines whether a schedule of a first user related to handling confidential information has occurred, based on a schedule of an action corresponding to each of a plurality of users; and determines whether a second user is on a first moving body carrying the first user based on a boarding/alighting schedule of moving bodies each moving along a route on a map; and a movement information setter that sets movement information related to movement of each of the moving bodies, wherein the movement information setter sets, when the first user is determined to be scheduled to handle the confidential information while being in the first moving body with the second user also being in the first moving body, the movement information to make the first moving body and a second moving body for transfer meet.
The advantages and features provided by one or more embodiments of the invention will become more fully understood from the detailed description given hereinbelow and the appended drawings which are given by way of illustration only, and thus are not intended as a definition of the limits of the present invention:
Hereinafter, one or more embodiments of the present invention will be described with reference to the drawings. However, the scope of the invention is not limited to the disclosed embodiments. It should be noted that the same or corresponding parts in the drawings are designated by the same reference numerals and description thereof will not be repeated.
<A. Overview>
In the present embodiment, a “moving body” may include public, private, or autonomous driving transportation, or a transportation manually operated by an operator 111, capable of moving along a route on the map. The moving body may include, but is not limited to, at least one of a vehicle such as an automobile or a motorcycle, a robot, a personal mobility, and the like. The information processing apparatus 30 is a computer installed in the moving body 100. This computer is implemented using, for example, hardware according to a general-purpose architecture. Hereinafter, the information processing apparatus 30 is also abbreviated as the apparatus 30.
In the present embodiment, the “map” is, for example, a road map that is a two-dimensional plane including all or a part of miniaturized routes (corresponding to roads) on which the moving body 100 can travel. On the map, the routes are symbolized and a geographical target is also symbolized at its location on the map. The geographical target may be provided with a name identifying the target. The geographical targets may include, but are not limited to, intersections, rivers, buildings, and the like.
In the present embodiment, the geographical target may enable identification of a “departure point” of the moving body as well as a “meeting point” where the moving bodies 100 meet, “destination”, and the like.
Referring to
In
The user terminal 600 corresponds to a computer with a communication function of a portable type that can be carried around by the user or a built-in computer. The user terminal 600 communicates with other apparatuses over the network 720.
Referring to
The user schedule DB 950 includes a schedule for each user including: the action of the user; information indicating whether the action is related to communicating confidential information; a timing (date and time) when the action is expected to take place. The user schedule DB 950 is managed by the management server 700, but may be managed by a dedicated schedule management server.
In
The processing in steps T1 to T4 is not limited to a mode in which the processing is executed by the management server 700 and can be applied to a case where the processing is executed by the apparatus 30 of the moving body 100. In that case, the notification of the route set by the moving body 100 is transmitted to another moving body 100 via the network 720 or the management server 700. Furthermore, the communications between the moving body 100 and the management server 700 may enable a part of the processing in steps T1 to T4 to be executed by the management server 700 and the remaining part to be executed by the moving body 100.
Furthermore, in the above application case, the management server 700 (more specifically, a route setting unit 403 described later) sets (determines) the meeting point, and the apparatus 30 of the moving body 100 may set (determine) the route for moving to the meeting point thus set. Alternatively, the apparatus 30 of the moving body 100 may set the meeting point and the management server 700 may set the route for moving to the meeting point thus set. Route information 315, which will be described later, is an example of “movement information” related to movement of the moving bodies to meet at the meeting point. The route setting unit 403 is an example of “route information setter”. In the present embodiment, the “movement information” includes at least one of the meeting point of the moving bodies and a meeting route that is a movement route in which the moving bodies move to meet at the meeting point. In the following description, it is assumed that the route setting unit 403 sets the meeting point and the meeting route.
With this configuration, in the present embodiment, when the schedule related to handling confidential information occurs for the first user who is moving on the moving body 100, the route to the meeting point where the first moving body meets the second moving body for transfer is determined and at least one of the moving bodies is notified of the route, so that the shared state described earlier can be resolved. Thus, the confidential information handled by the first user can be protected from the security risk such as leakage to a fellow passenger (second user).
Examples of a scene expected to involve such a security risk include: a scene where the user sharing a ride handles information related to operation (work) of his or her organization or company; a scene where the user takes a look at a document with the information printed; and a scene where the user joins a conference or a phone call (video conference or phone conference) involving the information, where the user is transmitting or receiving the information over an email, or the like. Such a scene involves an information security risk such as the information handled by the user in the moving body leaking to a fellow passenger. The present embodiment can prevent such a risk.
<B. Hardware Configuration of Information Processing Apparatus 30>
The apparatus 30 further includes a Central Processing Unit (CPU) 300, a storage that stores programs and data, a memory interface 340, a Global Positioning System (GPS) communication device 350, a network interface 360, and a Universal Serial Bus (USB) circuit 370. The storage includes a Hard Disk Drive (HDD) 310, a Read Only Memory (ROM) 320, and a Random Access Memory (RAM) 330.
The CPU 300 loads a program stored in the storage, such as the HDD 310, onto the RAM 330, and controls each unit by executing the program thus loaded.
The memory interface 340 includes a driver circuit to which a storage medium 345 is detachably attached. The driver circuit reads data or programs from the attached storage medium 345, or writes data or programs to the storage medium 345. The storage medium 345 is a medium that electrically, magnetically, optically, mechanically, or chemically accumulates information such as a program stored therein, so that the information such as a program can be read by the CPU 300, the other apparatus, machine, and the like.
The GPS communication device 350 receives a signal from the GPS satellite 710 and executes given calculation using the signal to detect the current position of the moving body 100. Position information 316 indicating the current position detected by the GPS communication device 350 is output to the CPU 300.
The network interface 360 includes a circuit, a Network Interface Card (NIC) for example, in charge of communications performed between an external network such as the network 720 and the apparatus 30 via the base station 800.
The USB circuit 370 has a connector to which various devices including the user terminal 600 can be connected, and controls communications between the device connected in a wired or wireless manner to the connector and the CPU 31. The standard for communication with the device connected to the apparatus 30 including the user terminal 600 is not limited to USB and may be another standard such as Local Area Network (LAN). In the present embodiment, a mode of connection of the user terminal 600 to the network 720 may include modes such as connecting to the network 720 via the apparatus 30 as illustrated in
The navigation apparatus 51 includes a CPU 511, a memory 512 such as a ROM and a RAM, an HDD 513 that stores various types of data including a map DB 514, and a display control unit 515 that controls a display 516 for the driver's seat. The CPU 511 of the navigation apparatus 51 executes the program to execute navigation processing for the moving body 100 using the position information 316 about the moving body 100 output from the apparatus 30.
The map DB 514 includes map data including a geographical target and position information (for example, GPS position) of each road (route), image data representing a map, and the like. The map data includes position information about stop points on the route. The stop point is a concept including a departure point, a meeting point, and a destination of the moving body 100.
In the navigation processing, the CPU 511 further generates image data indicating the route of the moving body 100 indicated by the route information 315 on the map, based on the route information 315 described later received from the management server 700 and the map DB 514. The display control unit 515 controls the display 516 based on the generated image data. The display 516 for the driver's seat displays an image of a map in which the current position and route of the moving body 100 are indicated. As a result, the operator 111 can drive the moving body 100 along the route, on the map displayed on the display 516, to the meeting point or the destination.
The route information 315 further includes information about speed between points on the route. This point is designated as a GPS position. In the case of autonomous driving, the traveling control system 50 controls the drive mechanism according to the route information 315 so that the moving body 100 travels between points at the speed between the points indicated by the route information 315. In the case of manual driving, the navigation processing results in the display 516 displaying information about designated speed between points. The operator 111 drives the moving body 100 between the points at the designated speed displayed.
The HDD 310 includes a system program 311 including an Operating System (OS), an application program executed by the CPU 300 under the system program 311, the route information 315, the position information 316, and speed information 317. The CPU 300 stores the latest GPS position measured by the GPS communication device 350 in the HDD 310 as the position information 316. Furthermore, the CPU 300 stores the latest speed of the moving body 100, measured (detected) by the traveling control system 50, in the HDD 310 as the speed information 317. As a result, the current (latest) GPS position and speed of the moving body 100 are indicated by the position information 316 and speed information 317, respectively.
The application program of the HDD 310 includes a communication program 314 for implementing communications between the moving body 100 and an external apparatus. The application program may further include a moving body management program 312. The moving body management program 312 includes a schedule determination program 321, a boarding/alighting determination program 322, a route setting program 323, and a route notification program 324. The moving body management program 312, the schedule determination program 321, the boarding/alighting determination program 322, the route setting program 323, and the route notification program 324 are executed to provide functions that are the same as those respectively provided by a moving body management unit 400, a schedule determination unit 401, a boarding/alighting determination unit 402, the route setting unit 403, and a route notification unit 404 of the management server 700 described later and thus the details of these will not be redundantly described.
Thus, in the present embodiment, when the moving body management program 312 is executed in the moving body 100, the function of the moving body management unit 400 can be provided by the moving body 100. In a case described below, the function of the moving body management unit 400 is provided by the management server 700 in response to the execution of the program in the management server 700.
<C. Hardware Configuration of Management Server 700>
The HDD 706 stores the destination DB 740, the boarding/alighting schedule management DB 750, the moving body status DB 770, the user schedule DB 950, and the map DB 514 illustrated in
<D. Module Configuration of Management Server 700>
The route setting unit 403 searches the map data of the map DB 514 for a guide route from the position of the moving body 100 to the destination or the meeting point. Thus, the route is determined. Furthermore, based on the map data, the route setting unit 403 calculates a distance on the determined route, and a distance between points on the route (for example, between the position of the moving body 100 and the meeting point, between the meeting points, or between the meeting point and the destination), based on the map data.
The communication control unit 414 controls the network controller 703. Although not limited to this, the DB management unit 413 operates according to a database operating language such as a SQL for example, to access the destination DB 740, the boarding/alighting schedule management DB 750, the meeting point DB 760, the moving body status management DB 770, the user schedule DB 950, and the map DB 514 in response to a request (write request or read request) received from the moving body management unit 400 or the communication control unit 414. The write request includes information to be written to the DB, and the read request includes data designating information to be read from the DB. Thus, the DB management unit 413 can update information in a DB and can also read requested information from a DB and output the information to the source of the request, by accessing the DB in response to the received request.
The plurality of DBs stored in the HDD 706 may further include a timetable DB 410 that stores timetable data that is an example of an operation schedule of public transportation described later. When the timetable DB 410 is stored in the HDD 706, the DB management unit 413 can access the timetable DB 410 in response to the request described above.
In the present embodiment, the plurality of DBs described above are managed by the management server 700, but may alternatively be managed by a dedicated DB server instead of the management server 700. In that case, the DB server is in charge of the function of the DB management unit 413.
While an example of the configuration where the required functions are provided with a processor circuit such as the CPU 701 executing the program is illustrated in
<E. Information in DB>
An example of information in the destination DB 740, the boarding/alighting schedule management DB 750, the meeting point DB 760, the moving body status DB 770, and the user schedule DB 950 according to the present embodiment will be described.
(e1. Destination DB 740)
The destination DB 740 includes, for each moving body 100: a moving body ID 60 for identifying the moving body 100; a facility ID 61 for identifying the facility as the destination of the moving body 100; a name 62 of the facility; an address 63 of the facility; a GPS position 64 which is the position of the facility identified by GPS; and point information 650. The point information 650 includes an identifier 651 identifying one or more points that can be set on the route to the destination, including a ride sharing station where the user gets on or off the moving body. The point information 650 includes point identifiers 651 in ascending order of distance from the departure point of the moving body 100 (one closer to the departure point is higher). The identifier 651 includes the name and the GPS position of the point. This point may include a meeting point.
(e2. Meeting point DB 760)
The meeting point DB 760 includes, for each of the plurality of meeting point candidates: a meeting point ID 71 identifying the geographical target as the candidate; and a GPS position 72 that is a position of the meeting point identified by the GPS.
(e3. Moving Body Status DB 770)
The apparatus 30 of the moving body 100 periodically transmits the position information 316 and the speed information 317 in the HDD 310 to the management server 700. The DB management unit 413 of the management server 700 stores the position information 316 and the speed information 317 received from the moving body 100 in the moving body status DB 770, as the GPS position 772 and the speed 773 in association with the ID 771 of the moving body. As a result, the current position and speed of each moving body 100 is indicated by the information in the moving body status DB 770.
(e4. Boarding/Alighting Schedule Management DB 750 and User Schedule DB 950)
Referring to
The user schedule DB 950 includes a schedule corresponding to each user. The schedule corresponding to the user includes user ID 951, time 952 and subject 953. The subject 953 indicates a user's action scheduled at the corresponding time 952, and specifically includes an action 954 (e.g., boarding/alighting and an identifier 651 of the boarding/alighting point).
When the user operates the user terminal 600 and requests the management server 700 for schedule registration, the DB management unit 413 transmits the destination DB 740 of the HDD 510 to the user terminal 600. The information in the destination DB 740 is displayed on a display (not illustrated) of the user terminal 600. Based on the displayed information (such as the name 62 and the address 63 of the facility as well as the point identifier 651), the user selects the moving body ID 60 of the moving body 100 going to the destination that matches the user's schedule, the boarding time 952 and the identifier 651 of the boarding point, and the alighting time 952 and the identifier 651 of the alighting point.
The user operates the user terminal 600 to transmit the schedule information, which is the information thus selected, to the management server 700. The DB management unit 413 updates (by adding and changing) the user schedule DB 950 using the schedule information received from the user terminal 600. The DB management unit 413 uses the schedule of each user in the user schedule DB 950 (moving body ID 60, time 952, and subject 953) to update boarding/alighting schedule 754 corresponding to the ID 753 matching the moving body ID 60 in the boarding/alighting schedule management DB 750. Thus, the DB management unit 413 can hold (store) the information in the boarding/alighting schedule management DB 750 in association with the user schedule DB 950, and update the information in the boarding/alighting schedule management DB 750 in synchronization with the user schedule DB 950.
In the present embodiment, the DB management unit 413 determines whether each moving body 100 is empty based on the boarding/alighting schedule 754 of each moving body in the boarding/alighting schedule management DB 750. When the moving body 100 is determined to be empty, the DB management unit 413 sets “1” to the empty flag 774 corresponding to the ID 771 in the moving body status DB 770 matching the ID 753 of the moving body 100. When the moving body 100 is determined not to be empty, the DB management unit 413 sets “0” to the empty flag 774.
It can be seen in
In the present embodiment, the time zone in which the action 954 for handling confidential information is scheduled to take place is defined as a risk time zone 960 involving a high risk of leakage of the confidential information to another sharing user (user Y in
In the present embodiment, when the user registers a schedule in the user schedule DB 950, a flag indicating whether his or her action involves handling the confidential information, is included in the action 954. Thus, the management server 700 can determine whether or not the action 954 is an action involving handling confidential information based on the flag in the action 954. Furthermore, determination on whether the action 954 involves handling confidential information is not limited to the determination method based on the flag. For example, the determination method may be a method based on whether the type of the action 954 matches a predetermined action type. Furthermore, the determination method may be, for example, a method based on whether participants of the phone conference which is the action 954 include a predetermined member. Alternatively, for example, when the action 954 is a video conference or a web conference, the determination method may be a method based on a result of determining whether the information about the communication address for the video conference or the web conference includes information corresponding to a predetermined website.
<F. Meet and Transfer>
How the moving bodies 100 meet and how transfer takes place according to the present embodiment will be described in association with the boarding/alighting schedule management DB 750 illustrated in
Then, when the scheduled action of “start phone conference at 11:00” is added to the schedule of the user X in the user schedule DB 950 at 10:15 for example, the management server 700 starts cooperative processing to make the second moving body 100 (referred to as a moving body (2)) meet the moving body (1) before the phone conference start time.
In the present embodiment, the first moving body 100 and the second moving body 100 to meet operate in cooperation. The moving bodies that thus operate in cooperation with are also referred to as “cooperating moving bodies”.
In
<G. Cooperative Operation of Moving Bodies>
The lower part of
The scheduled arrival time of the moving body (1) at the meeting point 11 includes time T1(1), time T1(2), and time T1(3) respectively corresponding to the first speed 21, the second speed 22, and the third speed 23 (where, T1(1)>T1(2)>T1(3)) as the constant speed 773. Similarly, the scheduled arrival time of the moving body (1) at the meeting point 12 includes time T2(1), time T2(2), and time T2(3) respectively corresponding to the first speed 21, the second speed 22, and the third speed 23 (where, T2(1)>T2(2)>T2(3)) as the constant speed 773. Similarly, the scheduled arrival time of the moving body (1) at the meeting point 13 includes time T3(1), time T3(2), and time T3(3) respectively corresponding to the first speed 21, the second speed 22, and the third speed 23 (where, T3(1)>T3(2)>T3(3)) as the constant speed 773. Note that T1(3)<T2(3)<T3(3).
As described above, the arrival time of the moving body (1) at the meeting point varies depending on the speed 773 of the moving body (1) even if the meeting point is the same. Thus, the management server 700 executes the route setting processing in which the route or the speed and the route of the cooperating moving bodies are changed so that the cooperating moving bodies can arrive at the meeting point at the scheduled arrival time.
<H. Route Setting Processing>
As illustrated in the lower part of
First of all, the route setting unit 403 determines the closest meeting point 40 at which the first moving body 100 can arrive before the start time (11:00) of the phone conference, that is, before the risk time zone 960 starts (step R2).
Specifically, the route setting unit 403 reads the GPS position 772 corresponding to the ID 771 that matches the moving body ID 60 of the first moving body 100, from the moving body status DB 770. Based on the difference (distance) between the corresponding GPS position 72 and GPS position 772 and on the speed of the first moving body 100, the route setting unit 403 calculates a time required for reaching each meeting point in the meeting point DB 760. The route setting unit 403 determines one or more meeting point candidates that can be reached before the start of the phone conference, based on the required time calculated for each meeting point. In the present embodiment, the meeting point 40 closest to the current position of the first moving body 100 (that is, the GPS position 772) is extracted (determined) from the one or more meeting point candidates.
The route setting unit 403 identifies the moving body closest to the meeting point 40 (this is referred to as the second moving body 100), and determines the route to the destination of the user via the meeting point 40 based on the position of the second moving body 100 and the speed (steps R3 and R4). Here, the user X stays in the first moving body 100, and the user Y transfers to the second moving body 100 at the meeting point 40.
Specifically, the route setting unit 403 searches the moving body status DB 770. Based on the result of the search, the ID 771 of one moving body 100 corresponding to the GPS position 772 indicating position closest to the GPS position 72 of the meeting point 40, among one or more moving bodies 100 with the empty flag 774 set to “0” is read from the moving body status DB 770. Thus, the second moving body is determined.
The route setting unit 403 calculates (determines) a route and distance from the GPS position 772 of the second moving body 100 to the destination of the user Y via the meeting point 40, based on the map DB 514. Based on the determined distance to the meeting point 40, the route setting unit 403 calculates the speed resulting in expected arrival time of the second moving body 100 at the meeting point 40 being earlier than the phone conference start time (11:00). Furthermore, based on the determined distance from the meeting point 40 to the destination, the route setting unit 403 calculates the speed resulting in the expected arrival time of the second moving body 100 at the destination being no later than the scheduled time (13:00) of the user Y.
The route notification unit 404 transmits the route information 315 indicating the route and speed determined for the second moving body 100 by the route setting unit 403, using the communication address indicated by the ID 771 of the second moving body 100.
The route setting unit 403 also calculates (determines) a route and distance from the GPS position 772 of the first moving body 100 to the destination of the user X via the meeting point 40, based on the map DB 514. Based on the determined distance to the meeting point 40, the route setting unit 403 calculates the speed resulting in expected arrival time of the first moving body 100 at the meeting point 40 being earlier than the phone conference start time (11:00). Furthermore, based on the determined distance from the meeting point 40 to the destination of the user X, the route setting unit 403 calculates the speed resulting in the expected arrival time of the first moving body 100 at the destination being no later than the scheduled time (12:00) of the user X (step R5).
The route notification unit 404 transmits the route information 315 indicating the route and speed determined for the first moving body 100 by the route setting unit 403 using the communication address indicated by the ID 771 of the first moving body 100.
In this manner, when the meeting point 40 is off the original route of the first moving body 100, the route setting unit 403 resets the route and the speed of the first moving body 100. When the meeting point 40 is on the original route, the route setting unit 403 may reset the route to change the final destination to the destination of the user X.
Furthermore, in
<I. Flowchart>
First of all, the schedule determination unit 401 searches (acquires) the user schedule DB 950 for the schedule of the user X registered as described above (step S1), and determines whether the user X is scheduled to handle confidential information based on the action 954 in the schedule of the user X found (step S3). When it is determined that the schedule does not include handling of the confidential information (NO in step S3), the processing returns to step S1.
The schedule determination unit 401 determines that the schedule includes handling of confidential information (YES in step S3), based on associating information associating the user schedule DB 950 in
On the other hand, when the schedule determination unit 401 determines that there is no user getting on the first moving body 100 in the risk time zone 960 (NO in step S5), the boarding/alighting determination unit 402 determines whether there is a user sharing the first moving body 100 with the user X based on the associating information described above (step S9). When the boarding/alighting determination unit 402 determines that there is no other user sharing the ride (NO in step S9), the processing returns to step S1.
Upon determining that there is another user sharing the ride (YES in step S9), the boarding/alighting determination unit 402 determines whether the other user is on board during the risk time zone 960 based on the associating information (step S11). When the boarding/alighting determination unit 402 determines that the other user is not on board during the risk time zone 960 (NO in step S11), the processing returns to step S1.
On the other hand, when the other user is determined to be on board during the risk time zone 960 (NO in step S11), the route setting unit 403 executes the route setting processing as illustrated in the lower part of
Specifically, the route setting unit 403 searches the moving body status DB 770 based on the GPS position of the meeting point 40 closest to the first moving body 100, to extract candidates of the other moving body 100 in ascending order of the distance to the meeting point 40 (step S13). The route setting unit 403 executes the following processing for each candidate moving body thus extracted.
First of all, the route setting unit 403 determines whether the first moving body 100 can meet the candidate moving body at the meeting point 40 before the scheduled confidential information handling start time, for example, before the scheduled start time of the phone conference (step S15). When the route setting unit 403 determines that the candidate moving body cannot meet (NO in step S15), the processing returns to step S13.
Upon determining that the candidate moving body can meet at the meeting point 40 (YES in step S15), the route setting unit 403 determines whether any of the users X and Y can stay in the first moving body 100. According to the lower part of
First of all, the route setting unit 403 determines whether the first moving body 100 arrives at the destination of the user X by the designated time (step S17). Specifically, the route setting unit 403 calculates the route from the position of the first moving body 100 to the destination of the user X via the point 40 and the distance on the route, and calculates the time required for the user X to move to the destination, based on the calculated distance and the speed 773 of the first moving body 100. Based on the calculated required time and the current time, the route setting unit 403 determines whether the first moving body 100 arrives at the destination of the user X by the designated time.
When the route setting unit 403 determines that the first moving body 100 cannot arrive at the destination of the user X by the designated time (NO in step S17), the processing proceeds to step S31 described below.
Upon determining that the first moving body 100 can arrive at the destination of the user X by the designated time (YES in step S17), the route setting unit 403 determines whether the candidate moving body can arrive at the destination of the user X by the designated time (step S19). This determination is made by using the distance on the route from the position of the candidate moving body to the destination of the user X via the point 40 and the speed 773 of the candidate moving body, as in the processing for the first moving body 100 in step S17. Therefore, detailed description will not be repeated for step S17.
When the route setting unit 403 determines that the candidate moving body cannot arrive at the destination of the user X by the designated time (NO in step S19), the processing proceeds to step S31 described below. On the other hand, when the candidate moving body is determined to be capable of arriving at the destination of the user X by the designated time (YES in step S19), the route setting unit 403 searches the boarding/alighting schedule 754 of the candidate moving body in the boarding/alighting schedule management DB 750, and based on the search result, determines whether another user is scheduled to get on the candidate moving body while the user X is on the candidate moving body (that is, during the time of the movement from the meeting point 40 to the destination of the user X) (step S21).
When the route setting unit 403 determines that another user is scheduled to get on the candidate moving body (YES in step S21), the processing proceeds to step S31 described later. On the other hand, when it is determined that no other user is scheduled to get on the candidate moving body (NO in step S21), the route setting unit 403 determines the candidate moving body to be the second moving body 100, and determines the meeting point of the first and the second moving bodies 100 to be the meeting point 40 (step S23).
The route notification unit 404 transmits the route information 315 indicating the route set by the route setting unit 403 to each of the first moving body 100 and the second moving body 100 (step S25). The moving body management unit 400 transmits an instruction to transfer to the second moving body 100, to the user terminal 600 of the user X (step S27). The user terminal 600 outputs the transfer instruction to the user X.
In steps S31 to S41, the route setting unit 403 executes the processing as in steps S17 to S27, for a case where the user Y transfers to the second moving body.
First of all, the route setting unit 403 determines whether the first moving body 100 reaches the destination by the designated time by moving on the route from the position of the first moving body 100 to the destination of the user X via the meeting point 40 (step S31). This determination is made by using the distance on the route from the position of the first moving body 100 to the destination of the user X via the point 40 and the speed 773 of the first moving body 100, as in the processing in step S17. Therefore, detailed description will not be repeated for step S17.
When the route setting unit 403 determines that the first moving body 100 cannot arrive at the destination of the user X via the meeting point 40 by the designated time (NO in step S31), the processing returns to step S13. When the route setting unit 403 determines that the first moving body 100 can reach the destination of the user X via the meeting point 40 by the designated time (YES in step S31), the route setting unit 403 determines whether the candidate moving body can reach the destination of the user Y by the designated time by moving on the route from the meeting point 40 to the destination of the user Y (step S33). This determination is made by using the time calculated by using the distance on the route from the meeting point 40 to the destination of the user X and the speed 773 of the candidate moving body, that is the time required for moving from the meeting point 40 to the destination. This determination is similar to the processing in step S17, and therefore detailed description will not be repeated.
When the route setting unit 403 determines that the candidate moving body cannot arrive at the destination of the user Y by the designated time (NO in step S33), the processing returns to step S13. When the candidate moving body is determined to be capable of arriving at the destination of the user Y by the designated time (YES in step S33), the route setting unit 403 searches the boarding/alighting schedule 754 of the candidate moving body in the boarding/alighting schedule management DB 750, and based on the search result, determines whether another user is scheduled to get on the candidate moving body while the user Y is on the candidate moving body (that is, during the time of the movement from the meeting point 40 to the destination of the user Y) (step S35).
When the route setting unit 403 determines that another user is scheduled to get on the candidate moving body (YES in step S35), the processing proceeds to step S13. When it is determined that no other user is scheduled to get on the candidate moving body (NO in step S35), the route setting unit 403 determines the candidate moving body to be the second moving body 100, and determines the meeting point of the first and the second moving bodies 100 to be the meeting point 40 (step S37).
The route notification unit 404 transmits the route information 315 indicating the route set by the route setting unit 403 to each of the first moving body 100 and the second moving body 100 (step S39). The moving body management unit 400 transmits an instruction to transfer to the second moving body 100, to the user terminal 600 of the user Y (step S41). The user terminal 600 outputs the transfer instruction to the user X.
In
<J. Transfer to Public Transportation>
In the present embodiment, the second moving body may include public transportation.
As in the upper part of
As illustrated in the lower part of
First of all, the route setting unit 403 determines the closest meeting point 40 at which the first moving body 100 can arrive before the scheduled start time (11:00) of the phone conference, that is, before the risk time zone 960 starts, by using the meeting point DB 760 and the timetable DB 410. Specifically, the route setting unit 403 compares the GPS position 772 of the first moving body 100 with the GPS position 72 of each meeting point of the meeting point DB 760 and with the GPS position indicated by the ID 411 of each station of the timetable DB 410. Then, based on the comparison result, the route setting unit 403 determines the closest point or the closest station in the timetable DB 410 from the first moving body 100, among the meeting points in the meeting point DB 760, to be a candidate of the meeting point where the user Y makes a transfer.
Here, the destination of user Y is a “B station”. The route setting unit 403 searches the timetable DB 410, and based on the result of the search, extracts one or more time points 412 with the time of departure from the “B station” being earlier than the arrival time at the destination designated by the user Y, among a plurality of time points 412 corresponding to a closest “A station” that is a candidate of the meeting point. In the case of the timetable DB 410 of
First of all, the route setting unit 403 calculates the route from the position of the moving body 100 to the “B station” via the “A station” which is the meeting point, and the distance between the points. The route setting unit 403 determines whether the first moving body 100 can reach the destination of the user X by the designated time, based on the distance from the position 772 of the first moving body 100 to the destination via the “A station” and the speed 773 of the first moving body 100. When it is determined that the destination of the user X can be reached by the designated time, the route setting unit 403 determines whether the first moving body 100 can arrive before “11:10” or within “11:10” to “11:40”, based on the time required for moving to the “A station” calculated based on the distance to the “A station” as the meeting point from the position of the first moving body 100 and the speed 773. When it is determined that thus arriving is possible, the route setting unit 403 determines the “A station” to be the meeting point 40, and the user Y transfers to the railway at the meeting point A. For example, the first moving body 100 arrives at the “A station” at 10:50.
As a result, the shared state of the first moving body 100 will be resolved at 10:50, whereby the confidential information handled by the user X during the phone conference scheduled to start from 11:00 can be protected from a security risk such as information leakage to a fellow passenger. Furthermore, the user Y who has transferred to the railway at the meeting point 40 (“A station”) in order to resolve the shared state, can arrive at the destination “B station” by the designated time.
<K. Modification>
In the above-described embodiment, any fellow passenger is determined to be transferred. Alternatively, the route setting unit 403 may set the route for transfer when the user sharing a ride (the user Y for example) satisfies a predetermined condition.
For example, the route setting unit 403 determines whether the user X and the user Y who share a ride are in the same group regarding the schedule (for example, a phone conference) involving handling confidential information, and sets the route upon determining that a condition for them to be in the same group is satisfied.
Specifically, when each user's schedule (such as the subject 953) includes information about a communication counterpart (such as communication address and email address, for example), the route setting unit 403 determines that the user X and the user Y are in the same group if the corresponding information about the communication counterpart is the same between the user X and the user Y.
Furthermore, the schedule (subject 953) of the action 954 corresponding to each of a plurality of users may include participation information indicating whether the user is a member involved in the schedule for handling confidential information. In such a case, the route setting unit 403 determines that the same group is composed of members who are involved in the schedule for handling the same confidential information.
Furthermore, the schedule for handling confidential information (action 954) includes a conference (such as phone conference or video conference) handling the confidential information. The route setting unit 403 may determine that the user X and the second user Y belong to the same group when the first moving body 100 is equipped with the equipment for such a conference.
In addition, when the route passing through the meeting point 40 is calculated, the route setting unit 403 sets the route for at least one of the first moving body 100 and the second moving body 100. For example, when the meeting point 40 is on the original route of the first moving body 100, the route of the first moving body 100 does not need to be changed, and therefore the route setting unit 403 sets a route passing through the meeting point 40 for the second moving body 100.
Therefore, the route notification unit 404 also transmits the route notification set by the route setting unit 403 to the at least one moving body 100.
<L. Program>
In the present embodiment, a program for causing the CPU 701 of the management server 700 to execute the above-described processing is provided. Such a program includes at least the moving body management program 730 for executing the processing according to the flowchart of
In the present embodiment, a program for causing the information processing apparatus 30 to execute the above-described processing is provided. Such a program includes at least the moving body management program 312 for executing the processing according to the flowchart of
The program may be one for calling a required modules among program modules provided as a part of the OS of the computer in a predetermined sequence at a predetermined timing, and causing the processor to execute the module. In such a case, the program itself does not include the above module, and the process is executed in cooperation with the OS. A program that does not include such a module may also be included in the program of each embodiment.
Furthermore, the program according to the present embodiment may be provided while being incorporated in a part of another program. Also in such a case, the program itself does not include the module included in the other program, and causes the processor to execute the processing in cooperation with the other program. The program according to the present embodiment may include a program incorporated in such another program.
<M. Effect of Embodiment>
According to the present embodiment, when a service that allows a plurality of users to share the moving body 100 (pooling) is provided, if a user is scheduled to take the action 954 for handling confidential information, the shared state is resolved before the action 954 starts. Thus, the confidential information can be protected from a security risk such as leakage to a fellow passenger, even when the user takes the scheduled action 954 inside the moving body.
Furthermore, the meeting point closest to the moving body 100 is determined to be the meeting point 40 where the user transfers to another moving body for resolving the shared state. Alternatively, as illustrated in step S13 in
Furthermore, despite the movement to the destination via the meeting point 40 as described above, each user is guaranteed to reach his or her destination by the designated time.
Although embodiments of the present invention have been described and illustrated in detail, the disclosed embodiments are made for purposes of illustration and example only and not limitation. The scope of the present invention should not be interpreted by terms of the above description but by terms of the appended claims, and is intended to include any modification within the meaning and scope equivalent to the claims
Number | Date | Country | Kind |
---|---|---|---|
2019-168219 | Sep 2019 | JP | national |