WO2012132950A1 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
WO2012132950A1
WO2012132950A1 PCT/JP2012/056811 JP2012056811W WO2012132950A1 WO 2012132950 A1 WO2012132950 A1 WO 2012132950A1 JP 2012056811 W JP2012056811 W JP 2012056811W WO 2012132950 A1 WO2012132950 A1 WO 2012132950A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
movement history
data
past
search
Prior art date
Application number
PCT/JP2012/056811
Other languages
English (en)
French (fr)
Inventor
井手 直紀
由幸 小林
伊藤 真人
佐部 浩太郎
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2011067136A external-priority patent/JP5845604B2/ja
Priority claimed from JP2011067137A external-priority patent/JP5664398B2/ja
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to EP12764157.9A priority Critical patent/EP2690401B1/en
Priority to CN2012800142069A priority patent/CN103443584A/zh
Priority to US14/005,648 priority patent/US9285235B2/en
Publication of WO2012132950A1 publication Critical patent/WO2012132950A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3605Destination input or retrieval
    • G01C21/3617Destination input or retrieval using user history, behaviour, conditions or preferences, e.g. predicted or inferred from previous use or current movement
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3484Personalized, e.g. from learned user behaviour or user-defined profiles

Definitions

  • the present technology relates to an information processing device, an information processing method, and a program, and more particularly, to an information processing device, an information processing method, and a program that can accumulate necessary and sufficient movement history data with low power consumption.
  • One method for accumulating highly accurate movement history is to set the acquisition interval of the position sensor for acquiring the current position short.
  • the present technology has been made in view of such a situation, and makes it possible to accumulate necessary and sufficient movement history data with low power consumption.
  • An information processing apparatus includes: a position sensor unit that acquires the latest movement history including time-series position data; a past history DB that stores search data; and the search data, A similarity search unit that searches for a past route that is similar to the latest movement history, and whether the past route searched by the similarity search unit and the degree of fitness of the latest movement history are equal to or greater than a predetermined threshold.
  • a conformity determination unit for determining, and a sensor control unit for controlling an acquisition interval of the position data of the position sensor unit according to a determination result of the conformity determination unit.
  • an information processing apparatus including a past history DB that stores search data acquires a latest movement history including time-series position data, and the search data includes: A past route similar to the most recent movement history is searched, a determination is made as to whether a degree of fit between the searched past route and the most recent movement history is equal to or greater than a predetermined threshold, and according to the determination result And a step of controlling an acquisition interval of the position data of the position sensor unit.
  • a program allows a computer to store past data similar to the latest movement history including time-series position data acquired by the position sensor unit from the search data stored in the past history DB.
  • a similarity search unit that searches for a route of the above, a suitability determination unit that determines whether the past route searched by the similarity search unit, and the degree of fitness of the most recent movement history is greater than or equal to a predetermined threshold, This is for functioning as a sensor control unit that controls an acquisition interval of the position data of the position sensor unit according to a determination result of the suitability determination unit.
  • a past route similar to the latest movement history including time-series position data acquired by the position sensor unit is searched from the search data stored in the past history DB. Then, it is determined whether the degree of matching between the searched past route and the latest movement history is equal to or greater than a predetermined threshold, and the position data acquisition interval of the position sensor unit is controlled according to the determination result. .
  • the program can be provided by being transmitted through a transmission medium or by being recorded on a recording medium.
  • the information processing apparatus may be an independent apparatus or an internal block constituting one apparatus.
  • necessary and sufficient movement history data can be accumulated with less power consumption.
  • FIG. 18 is a block diagram illustrating a configuration example of an embodiment of a computer to which the present technology is applied.
  • FIG. 1 is a block diagram illustrating a configuration example of a prediction device to which the present technology is applied.
  • the prediction device 1 in FIG. 1 predicts a user's movement route based on position information acquired from a position sensor such as a GPS (Global Positioning System) sensor, and a destination and a route to reach the destination. It is a device that predicts prediction time and the like.
  • the prediction device 1 is configured as a single portable device, or as a part of a mobile terminal such as a mobile phone or a tablet terminal.
  • the prediction device 1 includes a position sensor unit 11, a buffer 12, a past history DB 13, a similarity search unit 14, a suitability determination unit 15, a predicted route extraction unit 16, a departure time prediction unit 17, a predicted value calculation unit 18, a sensor control unit 19, And the DB correction unit 20.
  • the position sensor unit 11 sequentially acquires latitude and longitude data indicating its current position at regular time intervals determined by the control of the sensor control unit 19.
  • the position sensor unit 11 supplies the acquisition time (current time) and the latitude and longitude (data) at that time to the buffer 12.
  • the buffer 12 temporarily stores the time, latitude, and longitude data supplied from the position sensor unit 11 for a predetermined time. Then, if the position sensor unit 11 calls one operation of acquiring time, latitude, and longitude data as one step, the buffer 12 stores the time, latitude, and longitude from the current time to a predetermined number of steps.
  • the time series data (hereinafter referred to as the latest movement history) is supplied to the similarity search unit 14.
  • the past history DB 13 stores search data necessary for the prediction device 1 to predict a movement route and a destination.
  • the search data is a past movement history itself, a data obtained by correcting it as necessary, or a learning model corresponding to a past movement history.
  • the search data stored in the past history DB 13 is preferably generated by the user who uses the prediction result, but may be generated by another user.
  • the past history DB 13 also stores a destination list that is a list of destinations in the past movement history.
  • the destination list is created, for example, by inputting in advance by the user, or detecting a place staying within a predetermined range (100 m) for a predetermined time (for example, 1 hour) or more.
  • the similarity search unit 14 searches the past data similar to the latest movement history supplied from the buffer 12 from the search data stored in the past history DB 13 and supplies the search result to the conformity determination unit 15. .
  • the conformity determination unit 15 determines whether or not the similar route of the search data searched by the similarity search unit 14 matches the acquired latest movement history. In other words, the matching determination unit 15 determines whether or not the acquired latest movement history is a known route acquired as search data, and is similar to the search data obtained by searching. And whether the degree of conformity with the latest movement history is equal to or greater than a predetermined threshold. If the degree of matching between the similar path of the search data obtained by the search and the latest movement history is equal to or greater than a predetermined threshold, the matching determination unit 15 determines that the latest movement path is a known path. On the other hand, when the degree of matching between the similar path of the searched search data and the latest movement history is less than a predetermined threshold, the matching determination unit 15 determines the latest moving path as an unknown path.
  • the conformity determination unit 15 supplies a known or unknown determination result to the sensor control unit 19. In addition, when determining that the route is a known route, the suitability determination unit 15 supplies the most recent movement route to the predicted route extraction unit 16 and the DB correction unit 20.
  • the predicted route extraction unit 16 extracts a predicted route from the search data in the past history DB 13 based on the known latest travel history supplied from the matching determination unit 15 (predicts the user's travel route).
  • the predicted route extraction unit 16 lists destinations reachable from the extracted predicted route based on the destination list. Then, the predicted route extraction unit 16 supplies the extracted destination and the predicted route for reaching the destination to the predicted value calculation unit 18 and supplies the predicted route to the departure time prediction unit 17.
  • the departure time prediction unit 17 predicts the departure time, which is the time of leaving the current position, by either an absolute value or a relative value regardless of whether the user is currently moving or stopped. That is, the departure time prediction unit 17 predicts the departure time away from the current position as an absolute time. Alternatively, the departure time prediction unit 17 predicts the time (departure time) until the departure from the current position as a relative time. Whether to use the absolute time or the relative time may be determined by receiving a user's selection, for example. The departure time prediction unit 17 supplies the predicted departure time as a prediction result to the sensor control unit 19.
  • the predicted value calculation unit 18 uses the destination and the predicted route obtained from the known latest movement history supplied from the predicted route extraction unit 16 as the predicted value, the arrival time to the destination, the route And the arrival probability is calculated and output.
  • the prediction result output from the predicted value calculation unit 18 is displayed on, for example, a display (not shown). Further, in the subsequent stage of the predicted value calculation unit 18, control of the mobile terminal using the prediction result is performed.
  • the sensor control unit 19 is supplied with a known or unknown determination result from the conformity determination unit 15.
  • the sensor control unit 19 is supplied with a predicted departure time represented by either an absolute time or a relative time from the departure time prediction unit 17.
  • the sensor control unit 19 controls a data acquisition interval at which the position sensor unit 11 acquires position data according to a known or unknown determination result. Specifically, the sensor control unit 19 controls the data acquisition interval to be shortened when a known determination result is supplied, and increases the data acquisition interval when an unknown determination result is supplied. Control.
  • the sensor control unit 19 can also control the data acquisition interval of the position sensor unit 11 according to the predicted departure time supplied from the departure time prediction unit 17. Specifically, the sensor control unit 19 controls the data acquisition interval to be shortened when there is a margin until the departure time, and controls to increase the data acquisition interval when the departure time is short. .
  • the case where the departure time is immediate includes the case where the user is moving.
  • the DB correction unit 20 is supplied with the latest known movement history from the conformity determination unit 15. Based on the search data stored in the past history DB 13, the DB correction unit 20 corrects the known latest movement history supplied from the conformity determination unit 15 and supplies it to the past history DB 13.
  • the predicted path extraction unit 16 the predicted value calculation unit 18, the DB correction unit 20, etc. acquire and process search data in the past history DB 13 as necessary. .
  • the prediction device 1 configured as described above is based on the latest known movement history acquired by the position sensor unit 11 and the time required for the user to go to the travel route from the current location, the destination, and the destination. A prediction process for predicting the above is performed.
  • the prediction device 1 performs a sensor control process for controlling (changing) the data acquisition interval of the position sensor unit 11 based on whether the latest movement history acquired by the position sensor unit 11 is known or unknown.
  • the prediction device 1 performs data correction processing for correcting the latest movement history (data) based on the known latest movement history acquired by the position sensor unit 11.
  • FIG. 2 is a flowchart of the prediction process performed by the prediction device 1 of FIG. 2 to 5, it is assumed that data acquisition by the position sensor unit 11 and buffering of the buffer 12 are always performed.
  • step S1 the similarity search unit 14 acquires search data from the past history DB 13.
  • step S2 the similarity search unit 14 acquires the latest movement history from the buffer 12.
  • step S3 the similarity search unit 14 searches the acquired search data for a route similar to the most recent movement history and supplies the search result to the conformity determination unit 15.
  • the search for which route of the search data is similar to the most recent movement history is performed by calculating the degree of matching (similarity) between the latest movement history and the route of the search data for all the search data. Is called.
  • step S4 the conformity determination unit 15 determines whether the conformity between the latest movement history and the search data path is equal to or greater than a predetermined threshold.
  • step S4 If it is determined in step S4 that the degree of matching between the latest movement history and the search data path is less than the predetermined threshold, the prediction process ends. That is, when the latest movement history is an unknown route, the process is terminated because it cannot be predicted.
  • step S4 determines whether the degree of matching between the latest movement history and the search data path is equal to or greater than a predetermined threshold. If it is determined in step S4 that the degree of matching between the latest movement history and the search data path is equal to or greater than a predetermined threshold, the process proceeds to step S5, and the predicted path extraction unit 16 stores the past history DB 13 Destination and predicted route are extracted from the search data.
  • step S6 the predicted value calculation unit 18 calculates and outputs the arrival time, the route, and the arrival probability to the destination based on the extracted predicted route, and ends the process.
  • FIG. 3 is a flowchart of a first sensor control process for controlling the data acquisition interval of the position sensor unit 11 based only on the known or unknown determination result from the conformity determination unit 15.
  • step S ⁇ b> 11 the similarity search unit 14 acquires search data from the past history DB 13.
  • step S12 the similarity search unit 14 acquires the latest movement history from the buffer 12.
  • step S13 the similarity search unit 14 searches for a route similar to the most recent movement history from the acquired search data, and supplies the search result to the conformity determination unit 15.
  • the search for which route of the search data is similar to the most recent movement history is performed by calculating the degree of matching (similarity) between the latest movement history and the route of the search data for all the search data. Is called.
  • step S14 the conformity determination unit 15 determines whether the adaptability between the latest movement history and the search data path is equal to or greater than a predetermined threshold.
  • steps S11 to S14 are the same as the processes in steps S1 to S4 in FIG. 1, and one process is commonly used for the prediction process and the sensor control process.
  • step S14 If it is determined in step S14 that the degree of matching between the latest movement history and the search data path is less than a predetermined threshold, that is, if the latest movement history is an unknown path, the process proceeds to step S15.
  • the sensor control unit 19 performs control so that the data acquisition interval is shortened, and ends the process.
  • step S14 determines whether the degree of matching between the most recent movement history and the search data path is equal to or greater than a predetermined threshold value, that is, if the most recent movement history is a known path. If it is determined in step S14 that the degree of matching between the most recent movement history and the search data path is equal to or greater than a predetermined threshold value, that is, if the most recent movement history is a known path, the process proceeds to step S14. In step S16, the sensor control unit 19 performs control to increase the data acquisition interval, and ends the process.
  • the data acquisition interval is set to be long.
  • the latest movement history is unknown, it is necessary to store the data as search data. Therefore, in order to acquire precise data, the data acquisition interval is set short. Thereby, when it is unnecessary, the data acquisition interval can be lengthened, so that necessary and sufficient movement history data can be accumulated with less power consumption.
  • FIG. 4 is a flowchart of a second sensor control process for controlling the data acquisition interval of the position sensor unit 11 based on a known or unknown determination result and a predicted departure time.
  • step S24 If it is determined in step S24 that the degree of matching between the most recent movement history and the search data path is equal to or greater than a predetermined threshold, the process proceeds to step S26, and the departure time predicting unit 17 leaves the current position.
  • the departure time which is the time, is predicted by either absolute time or relative time.
  • the predicted departure time that is the prediction result of the departure time prediction unit 17 is supplied to the sensor control unit 19.
  • step S27 the sensor control unit 19 determines whether the predicted departure time supplied from the departure time prediction unit 17 is after a predetermined time.
  • step S27 If it is determined in step S27 that the predicted departure time is not later than the predetermined time, that is, if the departure time is immediate, such as when moving, the process proceeds to step S28, and the sensor control unit 19 The data acquisition interval is controlled to be short.
  • step S27 if it is determined in step S27 that the estimated departure time is after the predetermined time, that is, if there is a margin until the departure time, the process proceeds to step S29, and the sensor control unit 19 has a long data acquisition interval. Control to be.
  • the data acquisition interval is set short, staying at the destination, If the train does not move for a while, such as waiting for a train, the data acquisition interval is set longer.
  • the data acquisition interval is set to two stages of a short set time (for example, 1 minute) and a long set time (for example, 5 minutes), but may be divided into three or more stages.
  • FIG. 5 is a flowchart of data correction processing performed by the prediction device 1 of FIG.
  • steps S41 to S44 share one process for the prediction process, the sensor control process, and the data correction process.
  • step S44 If it is determined in step S44 that the degree of conformity between the most recent movement history and the search data path is less than the predetermined threshold, the data correction process ends. In other words, if the most recent movement history is an unknown route, there is no accumulation as search data, and the processing is terminated because it cannot be corrected.
  • step S44 determines whether the degree of matching between the most recent movement history and the search data path is equal to or greater than a predetermined threshold. If it is determined in step S44 that the degree of matching between the most recent movement history and the search data path is equal to or greater than a predetermined threshold, the process proceeds to step S45, and the DB correction unit 20 stores the search data. Use to correct the most recent movement history. Then, the DB correction unit 20 supplies the latest movement history after the correction to the past history DB 13 and ends the process.
  • the most recent movement history can be corrected and supplied to the past history DB 13 based on the search data, and therefore data stored as past movement history (search data) Accuracy can be improved.
  • the 1 can execute the prediction process, the sensor control process, and the data correction process in different ways depending on how the search history data is provided in the past history DB 13.
  • One is a method of storing a route log, which is time series data of acquired time, latitude, and longitude, as search data in the past history DB 13 and using the route log.
  • the other is a method in which a learning model obtained by learning time-series data of acquired time, latitude, and longitude is stored in the past history DB 13 as search data, and the learning model is used. For example, a probability transition model is employed as the learning model.
  • the case where the route log is used is described as the first embodiment of the prediction device 1, and the case where the learning model is used is described as the second embodiment of the prediction device 1.
  • FIG. 6 is a block diagram illustrating a configuration example of the prediction device 1 according to the first embodiment.
  • the route log DB 13A stores a past movement history and a destination list.
  • FIG. 7 shows an example of past movement history data stored in the route log DB 13A.
  • the acquired time and position (longitude, latitude) are stored in the order of the acquired time.
  • the acquisition interval is a predetermined time interval controlled by the sensor control unit 19.
  • the position sensor unit 11 may not be able to acquire position data at regular intervals. For example, when in a tunnel or underground, an artificial satellite cannot be captured, and the acquisition interval may be long. In such a case, for example, it is stored after being interpolated at equal intervals by linear interpolation. In the past movement history, for example, serial numbers are added and stored in order of oldest acquisition time.
  • FIG. 8 shows an example of the destination list stored in the route log DB 13A.
  • the destination list is composed of an index sequentially assigned to the destination and the position (longitude, latitude) of the destination.
  • FIG. 9 is a diagram showing the past movement history stored in the route log DB 13A and the destinations described in the destination list on a map.
  • the similar route search unit 14A scans the past movement history in the route log DB 13A, and resembles the latest movement history supplied from the buffer 12 and each location (position) of the past movement history. Calculate the degree.
  • the similarity D (i) between the i-th portion of the past movement history and the latest movement history is calculated by the following equation (1).
  • x past represents a past movement history
  • x current represents the most recent movement history.
  • the subscript at the lower right represents the serial number of the past movement history or the latest movement history.
  • Distance (x, y) in Equation (1) is a function for obtaining the distance between two locations x and y, and is a Euclidean distance or a city distance (sum of orthogonal vector difference vectors), or , Their squares and so on.
  • represents the sum for K steps.
  • the similarity D (i) in the expression (1) is the position data of the most recent movement history supplied from the buffer 12 for K steps, and the latest movement history for K steps and the past movement history. This corresponds to the distance (sum) between corresponding steps from the i-th to the movement history for the past K steps.
  • the similarity D (i) in equation (1) may be an average of distances by further dividing the sum of K steps by the number of steps K.
  • the method of calculating the similarity D (i) is not limited to this. For example, it is more convenient to select the most recent location from the most recent movement history and another location before a predetermined time, close to the two most recent locations selected from the past movement history, It is also possible to detect two locations at intervals of about the time and use the distance between the two detected locations and the corresponding locations of the two nearest locations.
  • the similar route search unit 14A obtains the similarity D (i) of the formula (1) as the fitness and supplies it to the fitness determination unit 15A.
  • the conformity determination unit 15A determines whether the degree of conformity between each location in the past travel history and the latest travel history obtained by the similar route search unit 14A is equal to or greater than a predetermined threshold, and the acquired latest travel It is determined whether there is a past movement history that matches the history.
  • the predicted route log extraction unit 16A extracts, as a predicted route, a movement history up to one of the destination lists in the route log DB 13A with respect to a portion of the past movement history detected as being above a predetermined threshold. To do. A plurality of past movement history points detected as being equal to or greater than a predetermined threshold may be detected.
  • the predicted route log extraction unit 16A lists destinations reachable from the extracted predicted route for each destination based on the destination list in the route log DB 13A.
  • the predicted value calculation unit 18A calculates a route list to the destination, a representative route, an arrival probability, and a required time for each listed destination.
  • the representative route to the destination for example, the one with the shortest required time is adopted from the extracted route list to the destination.
  • the predicted route closest to the average required time of the plurality of extracted predicted routes may be used as the representative route.
  • the arrival probability of the destination can be calculated using the total number of predicted routes extracted as the denominator and the number of predicted routes that can reach the destination as the numerator.
  • the required time of the destination can be an average value of the required time for each predicted route to the destination. In calculating the required time of the destination, an average value excluding the predicted path with an obvious abnormal value may be used.
  • FIG. 10 is an example in which each destination obtained by the predicted value calculation unit 18A, the probability of arrival at each destination, and the required time are shown on a map.
  • the departure time prediction unit 17A calculates an absolute or relative departure time from one or more prediction routes starting from a place where the degree of conformity is a predetermined threshold or more extracted by the prediction route log extraction unit 16A. Calculate and supply to the sensor control unit 19.
  • the departure time prediction unit 17A sets a predetermined range (for example, a radius of 100 m) centered on the starting point as a setting range, and averages the past times when the vehicle departs from the setting range for the first time. Calculate the value to be the absolute departure time.
  • a predetermined range for example, a radius of 100 m
  • the departure time prediction unit 17A stays within the set range by the number of steps (time) within a set range with a predetermined range (for example, a radius of 100 m) centered on the starting point.
  • the average value is calculated as the relative departure time (predicted stay time).
  • the absolute time is suitable for prediction when, for example, there is a custom such as going to office or leaving office, and there is regularity in the time zone of action.
  • the relative time is suitable for prediction when there is no regularity in the time zone of action, such as going out on a holiday (shopping, haircut, etc.).
  • the search log correcting unit 20A corrects the latest movement history using the past movement history detected as being equal to or greater than the predetermined threshold, and supplies the corrected latest movement history to the route log DB 13A.
  • the search log correction unit 20A uses the past movement history having the same number of steps (K steps) as the most recent movement history, starting from the location of the past movement history detected as being equal to or greater than the predetermined threshold, as the route log DB 13A. Search within and extract as search data.
  • the search log correction unit 20A calculates an average value for each step with respect to the extracted one or more search data, and generates an ideal series. Further, the search log correction unit 20A calculates the average of the ideal series and the latest movement history, and generates the latest movement history after correction.
  • the black circle ( ⁇ ) of the latest movement history is the latest position data (location)
  • the black triangle ( ⁇ ) of the search data is the location (starting point) of the past movement history corresponding to the latest position data. It is.
  • the white triangle ( ⁇ ) of the ideal series and the white circle ( ⁇ ) of the corrected movement history are locations corresponding to the latest position data of the latest movement history.
  • the number of steps from the starting point is the same as the number of steps for obtaining the similarity, but may be different from the number of steps for obtaining the similarity.
  • the most recent movement history after correction is obtained by a simple average, but it may be obtained by a weighted average in which the weights for the ideal series are set heavy for the ideal series and the most recent movement history.
  • the past movement history may be obtained by a weighted average that sets a smaller weight.
  • This correction process allows the most recent movement history to be automatically corrected to a statistically processed position and accumulated in the route log DB 13A.
  • step S61 the similar route search unit 14A acquires a past movement history and a destination list from the route log DB 13A.
  • step S62 the similar route search unit 14A acquires the latest movement history from the buffer 12.
  • step S63 the similar route search unit 14A scans the past movement history, and calculates the degree of matching with the latest movement history for each location (position) of the past movement history.
  • the similarity D (i) of the formula (1) is adopted as the fitness.
  • step S64 the conformity determination unit 15A determines whether there is one or more locations having a conformity greater than a predetermined threshold based on the conformity obtained by the similar route search unit 14A.
  • step S64 If it is determined in step S64 that there is no place having a degree of fitness equal to or greater than the predetermined threshold, the prediction process ends. On the other hand, if it is determined in step S64 that there is one or more locations having a fitness equal to or greater than the predetermined threshold, the process proceeds to step S65.
  • step S65 the predicted route log extraction unit 16A selects a portion having a degree of fitness that is equal to or greater than a predetermined threshold.
  • step S66 the predicted route log extraction unit 16A extracts, as a predicted route, a past movement history from the selected location to any destination for each selected location (selected location).
  • step S67 the predicted route log extraction unit 16A lists destinations reachable from the extracted predicted route for each destination based on the destination list in the route log DB 13A.
  • step S68 the predicted value calculation unit 18A calculates a route list to the destination and a representative route for each listed destination.
  • the representative route for example, a route having the shortest required time among a plurality of predicted routes to the destination is adopted.
  • step S69 the predicted value calculation unit 18A calculates the arrival probability to each destination, calculates and outputs the required time to each destination in step S70, and ends the process.
  • steps S81 to S84 in FIG. 13 are the same as steps S61 to S64 in FIG.
  • step S84 If it is determined in step S84 that there is no place having a degree of fitness equal to or greater than the predetermined threshold, the process proceeds to step S85, and the sensor control unit 19 causes the position sensor unit 11 to shorten the data acquisition interval. To finish the process.
  • step S84 determines whether there is one or more locations having a fitness level equal to or higher than the predetermined threshold. If it is determined in step S84 that there is one or more locations having a fitness level equal to or higher than the predetermined threshold, the process proceeds to step S86, and the predicted path log extraction unit 16A has a fitness level equal to or higher than the predetermined threshold value. Select a location.
  • step S87 the departure time predicting unit 17A calculates an average value of past times when it first goes out of the set range from a selected portion where the fitness is equal to or greater than a predetermined threshold, and sets it as the absolute departure time.
  • the calculated absolute departure time is supplied to the sensor control unit 19.
  • step S88 the sensor control unit 19 calculates a difference between the absolute departure time supplied from the departure time prediction unit 17A and the current time.
  • step S89 the sensor control unit 19 determines whether the calculated difference is greater than a predetermined threshold (hereinafter referred to as a departure time threshold).
  • step S89 If it is determined in step S89 that the calculated difference is equal to or less than the departure time threshold, the process proceeds to step S90, and the sensor control unit 19 performs control so that the data acquisition interval is shortened, and ends the process. .
  • step S89 determines whether the calculated difference is larger than the departure time threshold. If it is determined in step S89 that the calculated difference is larger than the departure time threshold, the process proceeds to step S91, and the sensor control unit 19 performs control so that the data acquisition interval is increased. Exit.
  • the first sensor control process in the first embodiment is a process in which steps S86 to S90 described above are omitted.
  • the second sensor control process using the relative predicted departure time in FIG. 14 corresponds to steps S87 to S89 in FIG. 13 as compared with the second sensor control process using the absolute predicted departure time in FIG. Only steps S107 and S108 are different. Therefore, in FIG. 14, only the processing of steps S107 and S108 will be described, and the other description will be omitted.
  • step S107 the departure time predicting unit 17A calculates the average value of the time (number of steps) until it leaves the set range centering on the selected location as the predicted staying time.
  • step S108 the departure time prediction unit 17A determines whether the calculated predicted stay time is longer than a predetermined threshold (hereinafter referred to as a stay time threshold).
  • step S108 If it is determined in step S108 that the calculated predicted stay time is equal to or less than the stay time threshold, the process proceeds to step S109.
  • step S108 determines whether the calculated predicted stay time is greater than the stay time threshold. If it is determined in step S108 that the calculated predicted stay time is greater than the stay time threshold, the process proceeds to step S110.
  • step S109 or S110 a predetermined data acquisition interval is set in the sensor control unit 19, and the process ends.
  • the second sensor control process using the absolute predicted departure time or the second sensor control process using the relative predicted departure time is performed. Based on this, the data acquisition interval may be finally determined.
  • Steps S121 to S125 in FIG. 15 are the same as steps S61 to S65 in FIG.
  • step S126 the search log correction unit 20A searches the route log DB 13A for past movement histories of several steps (K steps) starting from the selected location, and cuts it out as search data. Thereby, one or more search data are cut out.
  • step S127 the search log correction unit 20A calculates an average value for each step with respect to the cut out one or more search data, and generates an ideal series.
  • step S128 the search log correction unit 20A calculates the average of the ideal series and the latest movement history, generates the latest movement history after correction, and ends the process.
  • the prediction process, the sensor control process, and the data correction process can be performed using the path log stored in the past history DB 13.
  • FIG. 16 is a block diagram illustrating a configuration example of the prediction device 1 according to the second embodiment.
  • the probability transition model DB 13B stores a result of learning a past movement history using a probability transition model as a learning model.
  • a parameter obtained by learning a past movement history with a probability transition model as a learning model is stored as search data in the probability transition model DB 13B.
  • the probability transition model DB 13B is newly updated at a predetermined timing (for example, every other day, every other week, etc.). Update the parameters of the stochastic transition model using a simple movement history and store it.
  • the probability transition model DB 13B also stores a destination list in the same manner as the route log DB 13A in the first embodiment.
  • FIG. 17 is a conceptual diagram of a stochastic transition model for learning a past movement history.
  • HMM hidden Markov model
  • N 3 states
  • HMM is composed of a plurality of discrete state node s i. More particularly, HMM is, for a plurality of discrete state node s i, a parameter which determines the state represented by such random variable with normal distribution is expressed by a parameter determining the state transition.
  • HMM parameter both the parameter for determining the state and the parameter for determining the state transition are collectively referred to as an HMM parameter, and the state node is also simply referred to as a state.
  • Parameter determines the state is a observation model state node s i, constituted the center value of the state node s i (average value) mu i at variance sigma i 2.
  • Parameter determines the state transition is an internal model of the state node s i, consists of a state transition probability a ij from state node s i to the state node s j.
  • FIG. 18 shows an example of an observation model and an internal model of each state node of the HMM when the HMM as a learning model learns a past movement history.
  • the state transition probability a ij as the internal model, there is also a self-transition probability of transitioning to its own state node s i .
  • the center value ⁇ i and the variance value ⁇ i 2 of the state node s i as the observation model are obtained for each of time, longitude, and latitude. Note that each state node s i of the learning initial, initial values representing the initial state is set appropriately.
  • FIG. 19 is a diagram showing a learning result when the HMM as a probability transition model learns the past movement history and the destination shown in FIG. 9 on a map.
  • a substantially ellipse shown so as to be connected on the route indicates each learned state node.
  • the Baum-Welch re-likelihood estimation method is widely used as a method for estimating HMM parameters.
  • the Baum-Welch re-likelihood estimation method is a parameter estimation method based on the EM algorithm (EM (Expectation-Maximization) algorithm).
  • the parameters of the HMM are estimated so as to maximize the likelihood obtained from
  • x t represents a signal (sample value) observed at time t
  • T represents the length (number of samples) of time-series data.
  • the Baum-Welch re-likelihood estimation method is described in, for example, “Pattern Recognition and Learning Algorithm”, Yoshinori Uesaka and Kazuhiko Ozeki, Bunichi General Publishing, p.
  • the similar node search unit 14B searches for a state node of the probability transition model corresponding to the latest movement history supplied from the buffer 12. In other words, the similar node search unit 14B searches (selects) a state node having the maximum state probability of the state node corresponding to the current location (latest location) of the latest movement history.
  • the conformity determination unit 15B determines whether the adaptability of the state node corresponding to the current location of the latest movement history is equal to or greater than a predetermined threshold. A method of calculating the fitness when the probability transition model is used will be described later.
  • a known determination result is supplied to the sensor control unit 19, the prediction node search unit 16B, and the model data correction unit 20B.
  • the state node obtained by the search is supplied to the prediction node search unit 16B and the model data correction unit 20B.
  • an unknown determination result is supplied to the sensor control unit 19.
  • the prediction node search unit 16B performs a tree search for the state node (destination node) of the destination that can be transitioned from the state nodes corresponding to the current location obtained by the search supplied to the matching determination unit 15B. Explore the ground. And the prediction node search part 16B lists up the searched destination for every destination.
  • the predicted value calculation unit 18B calculates a route list to the destination, a representative route, an arrival probability, and a required time for each destination listed.
  • the departure time prediction unit 17B calculates an absolute or relative departure time based on the state node corresponding to the current location obtained by the search, and supplies it to the sensor control unit 19.
  • the absolute departure time can be obtained by averaging the center values of one or more transition destination times other than the self-transition of the state node corresponding to the current location obtained by searching.
  • the transition time other than the self-transition of the state node corresponding to the current location obtained by searching is selected as the absolute departure time with the future time closest to the current time as the central value. You may do it.
  • the relative departure time (predicted stay time) is obtained by a value obtained by multiplying the following equation (2) using the self-transition probability of the state node corresponding to the current location obtained by the search by the unit step time. Can do.
  • Equation (2) t stay represents the predicted stay time, and a ss represents the state node obtained by searching.
  • Formula (2) diverges when the self-transition probability is 1, it is better to set an upper limit value for the predicted staying time.
  • the model data correction unit 20B corrects the latest movement history using the state node series of the state node corresponding to the latest movement history, and supplies the corrected latest movement history to the probability transition model DB 13B.
  • the model data correction unit 20B generates a state node series (corresponding node series) of state nodes corresponding to the latest movement history, and generates a central value series of the generated corresponding node series as an ideal series. Then, the model data correction unit 20B calculates the average of the ideal series and the latest movement history, and generates the latest movement history after correction.
  • FIG. 21 shows another correction method by the model data correction unit 20B.
  • the correction method shown in FIG. 21 is different from the correction method shown in FIG. 20 in that the probability of each state node constituting the probability transition model is used for each step of the latest movement history. That is, in FIG. 21, the probability ⁇ j (t) of each state node for each step of the most recent movement history is shown as a probability table.
  • the calculation method of the probability ⁇ j (t) of each state node for each step of the most recent movement history can be obtained by equation (5) described later.
  • the model data correction unit 20B calculates an ideal sequence corresponding to the latest movement history by the following equation (3) using a probability table.
  • Equation (3) is the latest movement, for each step of the most recent movement history, obtained by adding the weight and the center value ⁇ j of the latitude and longitude of each state node with the probability ⁇ j (t) of the state node.
  • This represents the ideal sequence position ⁇ x t > corresponding to each step of the history.
  • t is the number of steps (serial number) corresponding to the acquisition time of each step of the most recent movement history.
  • FIG. 22 shows a configuration example of the learning device 60 for obtaining the parameters of the probability transition model stored in the probability transition model DB 13B.
  • the learning device 60 includes a log acquisition unit 61, a preprocessing unit 62, a state node allocation unit 63, a model reconstruction unit 64, a destination list modification unit 65, and a model storage unit 66.
  • the log acquisition unit 61 acquires past movement history as learning data and supplies it to the preprocessing unit 62.
  • the pre-processing unit 62 interpolates the temporarily missing data portion of the learning data by performing interpolation processing such as linear interpolation, and supplies the past movement history after processing to the state node allocation unit 63.
  • the state node assignment unit 63 assigns a state node of the probability transition model to the past movement history supplied from the preprocessing unit 62. More specifically, the state node allocating unit 63 calculates the degree of matching with the existing probability transition model for each position data of the past movement history that is learning data, and the degree of matching is equal to or greater than a predetermined threshold. It is determined whether or not. When the fitness level is equal to or greater than a predetermined threshold, the state node assignment unit 63 assigns an existing state node to the position data. On the other hand, when the fitness is less than the predetermined threshold, the state node assigning unit 63 assigns a new state node to the position data. Then, the series data of the node numbers of the state nodes (corresponding node series) assigned corresponding to the past movement history is supplied to the model reconfiguration unit 64.
  • the model reconfiguration unit 64 performs a model reconfiguration process for reconfiguring the probability transition model based on the corresponding node series from the state node allocation unit 63. That is, the model reconfiguration unit 64 corrects the state node parameter of the current probability transition model and adds a new state node parameter.
  • the destination list correction unit 65 corrects the destination list stored in the model storage unit 66 when a new destination is added to the past movement history.
  • the model storage unit 66 stores parameters of the probability transition model as a learning model.
  • the model storage unit 66 also stores a destination list.
  • FIG. 23 shows a detailed configuration example of the state node allocation unit 63 of FIG.
  • the state node allocation unit 63 includes a model acquisition unit 71, a corresponding node sequence estimation unit 72, a fitness threshold determination unit 73, an existing node allocation unit 74, and a new node allocation unit 75.
  • the model acquisition unit 71 acquires the parameters of the probability transition model from the model storage unit 66 and supplies them to the corresponding node sequence estimation unit 72.
  • Corresponding node sequence estimation unit 72 generates (estimates) a corresponding node sequence that is a corresponding state node sequence by using an existing probability transition model for the past movement history that is learning data.
  • the goodness-of-fit threshold value determination unit 73 determines whether or not the goodness-of-fit value is greater than or equal to a predetermined threshold value for each state node constituting the corresponding node sequence estimated by the corresponding node sequence estimation unit 72. In other words, the fitness threshold determination unit 73 determines whether the past movement history supplied as learning data is a known route or an unknown route. Then, the adaptability threshold determination unit 73 supplies the learning data (past movement history) determined that the adaptability is equal to or higher than the predetermined threshold (a known route) to the existing node allocation unit 74, and conformity The learning data determined that the degree is less than the predetermined threshold (is an unknown route) is supplied to the new node allocation unit 75.
  • the existing node assigning unit 74 performs an existing node assigning process for assigning a state node of an existing probability transition model to the learning data of the known route supplied from the fitness threshold determining unit 73.
  • the new node assignment unit 75 performs a new node assignment process for assigning a state node of a new probability transition model to the unknown route learning data supplied from the fitness threshold determination unit 73.
  • the node series of the state nodes assigned by the existing node assignment process and the new node assignment process is supplied to the model reconstruction unit 64 in FIG.
  • FIG. 24 shows a flowchart of learning processing by the learning device 60.
  • step S ⁇ b> 161 the log acquisition unit 61 acquires a past movement history as learning data and supplies it to the preprocessing unit 62.
  • step S162 the preprocessing unit 62 interpolates the missing data portion of the learning data by performing interpolation processing such as linear interpolation, and the past movement history after processing is state node allocation unit 63. To supply.
  • step S163 the model acquisition unit 71 of the state node allocation unit 63 acquires the parameters of the probability transition model from the model storage unit 66 and supplies the parameters to the corresponding node sequence estimation unit 72.
  • step S164 the corresponding node sequence estimation unit 72 of the state node allocation unit 63 performs a fitness calculation process for calculating the fitness with the existing probability transition model for each position data of the past movement history that is the learning data. Do.
  • step S165 the fitness threshold determination unit 73 of the state node allocation unit 63 sets 1 to the step number i for identifying each position data constituting the learning data, proceeds to step S166, and the fitness of the i-th step. Is greater than or equal to a predetermined threshold.
  • step S166 If it is determined in step S166 that the fitness level of the i-th step is greater than or equal to a predetermined threshold value, the process proceeds to step S167, and the fitness level threshold value determination unit 73 determines that the position data of step number i in the learning data is the existing node. It is determined that it corresponds to.
  • step S166 determines that the fitness level of the i-th step is less than the predetermined threshold value. If it is determined in step S166 that the fitness level of the i-th step is less than the predetermined threshold value, the process proceeds to step S168, and the fitness level threshold value determination unit 73 determines that the position data of step number i in the learning data is It is determined that it corresponds to the new node.
  • step S169 the goodness-of-fit threshold value determination unit 73 determines whether an existing node or a new node has been determined for all learning data.
  • step S169 If it is determined in step S169 that not all learning data has been determined, the process proceeds to step S170, and the fitness threshold determination unit 73 increments the step number by 1, and the process returns to step S166.
  • step S169 determines that determination has been made for all the learning data. If it is determined in step S169 that determination has been made for all the learning data, the process proceeds to step S171, and the existing node allocation unit 74 of the state node allocation unit 63 determines that the existing path learning data is already existing. An existing node assignment process for assigning a state node of the stochastic transition model is performed.
  • step S172 the new node allocating unit 75 of the state node allocating unit 63 performs a new node allocating process for allocating a new probabilistic transition model state node to the unknown route learning data.
  • steps S171 and S172 can be executed in parallel.
  • step S173 the model reconfiguration unit 64 performs model reconfiguration processing for reconfiguring the probability transition model based on the corresponding node series from the state node allocation unit 63.
  • step S174 when a new destination is added to the past movement history, the destination list correction unit 65 adds the added destination to the destination list stored in the model storage unit 66, and The process ends. If there is no additional destination, the process of step S174 is omitted.
  • FIG. 25 is a flowchart of the fitness calculation process executed in step S164 of FIG.
  • step S181 the state node assigning unit 63 sets 1 to the step number i for identifying each position data constituting the learning data.
  • the state node assignment unit 63 calculates the observation likelihood of each state in step i by the following equation (4).
  • the observation likelihood of Expression (4) represents the likelihood that the data x i is observed from the state node s i having a normal distribution with the center value ⁇ i and the variance value ⁇ i 2 .
  • step S183 the state node allocation unit 63 calculates the state probability of each state in step i by the following equation (5).
  • ⁇ i (1) represents the probability of being in the state s i at the first step.
  • ⁇ i (t) represents the probability of being in state s j at step t.
  • Max [a ij ⁇ i (t ⁇ 1)] in equation (5) is the maximum of the product of the state probability at step t ⁇ 1 and the transition probability from that location among the state transitions to state s j. It means to choose what will be.
  • Z t is a normalization parameter and is the sum of ⁇ i (t) in all states s i .
  • Equation (5) it is possible to estimate the state history reflecting the topology composed of transitions between state nodes.
  • step S184 the state node assigning unit 63 calculates the expected value of the observation likelihood in step i by the following equation (6) and sets it as the fitness.
  • Equation (6) is an expected value calculated using state probability ⁇ j (t) for likelihood P (x t
  • step S185 the state node allocation unit 63 determines whether step i is the final step.
  • step S185 If it is determined in step S185 that step i is not the final step, the process proceeds to step S186, the state node allocation unit 63 increments the step number i by 1, and the process returns to step S182.
  • step S185 if it is determined in step S185 that step i is the final step, the process returns to FIG.
  • steps S201 to S203 in FIG. 26 are the same as steps S181 to S183 in FIG. 25 described above, description thereof will be omitted.
  • the step number in the existing node assignment process is the step number for the learning data determined as the existing node.
  • step S204 the state node allocation unit 63 stores the parent node that reaches each state in step i. More specifically, the state node assigning unit 63 obtains and stores the state node number calculated by the following equation (7).
  • ⁇ j (t) in equation (7) is the node number of the state node that maximizes the product of the state probability at step t ⁇ 1 and the transition probability from that location.
  • argmax i [x] represents the subscript i that maximizes x obtained by changing the subscript i to an integer in the range of 1 to N.
  • step S205 the state node allocation unit 63 determines whether step i is the final step.
  • step S205 If it is determined in step S205 that step i is not the final step, the process proceeds to step S206, the state node allocation unit 63 increments the step number i by 1, and the process returns to step S202.
  • step S205 determines whether step i is the final step. If it is determined in step S205 that step i is the final step, the process proceeds to step S207, and the state node allocation unit 63 selects a state node that maximizes the state probability in the final step.
  • This is a process of making the high state node correspond to the last step of the learning data of the known route.
  • step S208 the state node allocation unit 63 searches the parent node stored in step S204 in the reverse direction from the state node selected in step S207.
  • step S209 the state node assigning unit 63 stores the state node series obtained in step S208 in association with the known movement history that is the learning data, and returns to FIG.
  • step S221 the state node allocation unit 63 learns an unknown movement history that is learning data using an HMM (probability transition model).
  • HMM performance transition model
  • step S222 the state node assignment unit 63 assigns a new node number as a state node to be added to the existing HMM (probability transition model) to the state node obtained by learning.
  • step S223 the state node allocation unit 63 stores therein the unknown movement history that is the learning data and the state node series of the corresponding new node number, and returns to FIG.
  • step S241 the model reconstruction unit 64 creates a transition frequency table.
  • FIG. 29 shows an example of the transition frequency table created in step S241.
  • the state transition probability a ij of the HMM shown in FIG. 18 is set as the transition frequency.
  • step S242 the model reconfiguration unit 64 generates a state frequency table from the transition frequency of the transition frequency table according to the following equation (8).
  • Equation (8) represents that the state frequency f i of the state s i is obtained by the sum of the transition frequency f ij of the state s i.
  • step S243 the model reconstruction unit 64 uses the state frequency table to generate a statistic table composed of the state frequency center value M i and the variance ⁇ i 2 according to the following equation (9).
  • M i ⁇ i ⁇ f i
  • ⁇ i 2 ( ⁇ i 2 + ⁇ i ) ⁇ f i (9)
  • step S244 the model reconfiguring unit 64 uses the state node sequence corresponding to the learning data generated and stored by the existing node assignment process of FIG. 26 and the new node assignment process of FIG. Update the frequency table.
  • the updated transition frequency f ij is represented by a transition frequency f ij ′
  • the updated state frequency table is represented by f i ′.
  • step S245 the model reconstructing unit 64 uses the position data corresponding to the state node appearing in the existing node assignment process of FIG. 26 and the new node assignment process of FIG. By adding to M i and variance ⁇ i 2 , the statistics table of equation (9) is updated.
  • the state frequency center value M i and variance ⁇ i 2 of the updated statistics table are represented by M i ′ and ⁇ i 2 ′.
  • the existing learning model can be corrected (updated) and extended based on the newly input movement history by the learning process described with reference to FIGS.
  • the first learning process in which no existing model exists is a process in which all the input movement histories are determined to be unknown paths and the probability transition model is learned, and can be handled by the above-described process.
  • step S301 the similar node search unit 14B acquires a probability transition model (parameters) and a destination list obtained by prior learning from the probability transition model DB 13B.
  • step S302 the similar node search unit 14B acquires the latest movement history from the buffer 12.
  • step S303 the similar node search unit 14B searches for and selects a state node corresponding to the latest movement history. Specifically, the similar node search unit 14B performs the fitness calculation process (step S164 in FIG. 24, FIG. 25) described in the learning process described above, and the existing node assignment process (step S171 in FIG. 24, FIG. 26). By searching, a state node corresponding to the latest movement history is searched and selected.
  • step S304 the matching determination unit 15B determines whether the matching level of the state node selected by the similar node search unit 14B is greater than or equal to a predetermined threshold.
  • step S304 If it is determined in step S304 that the fitness level of the selected state node is less than the predetermined threshold value, the prediction process ends.
  • step S304 determines whether the degree of conformity of the selected state node is greater than or equal to a predetermined threshold. If it is determined in step S304 that the degree of conformity of the selected state node is greater than or equal to a predetermined threshold, the process proceeds to step S305.
  • step S305 the prediction node search unit 16B searches for a destination by performing a tree search for destination nodes that can transition from the selected state node.
  • step S306 the prediction node search unit 16B lists the searched destinations for each destination.
  • step S307 the predicted value calculation unit 18B calculates a route list and a representative route to the destination for each destination listed.
  • Representative route r i to a destination i can be obtained by the following equation (11)
  • T j represents the length (number of steps) of the j-th path list
  • a (s k , s k + 1 ) is the state node s k to the state node s k + 1 .
  • s j k represents the k th state node of the j th route list
  • s j 1 represents the current location node
  • s j Tj represents the destination node of the j th route list.
  • the r-th route r i having the highest occurrence probability is set as the representative route, and the representative route r i is represented by ⁇ s 1 , s 2 , s 3 ,. Tr ⁇ means having a state node sequence. Other methods may be used as the representative route selection method.
  • step S308 the predicted value calculation unit 18B calculates the arrival probability to each destination.
  • Arrival probability p i to the destination i can be obtained by the following equation (12)
  • N i is the current location node, representing the number of route list to reach the destination i.
  • step S309 the required time to each destination is calculated and output, and the process ends.
  • Duration t i of the representative route r i to a destination i can be obtained by the following equation (13)
  • s k is the kth state node of the state node series of the representative route r
  • T is the length (number of steps) of the route list of the representative route
  • T T is the destination node.
  • p s1 (1) represents the probability of being in the state node s 1 in step 1.
  • p sk (t) represents the probability of being in state node s k in step t, and the probability of self-transitions are in the state node s k in the previous step, the state node in the previous step s k-1 It is the sum of the probabilities of transition.
  • steps S321 to S324 in FIG. 31 are the same as steps S301 to S304 in FIG. 30, description thereof is omitted.
  • step S324 If it is determined in step S324 that the fitness level of the selected state node is less than the predetermined threshold, the process proceeds to step S325, and the sensor control unit 19 causes the position sensor unit 11 to shorten the data acquisition interval. Thus, the process is terminated.
  • step S324 determines whether the degree of conformity of the selected state node is greater than or equal to a predetermined threshold. If it is determined in step S324 that the degree of conformity of the selected state node is greater than or equal to a predetermined threshold, the process proceeds to step S326.
  • step S326 the departure time predicting unit 17B calculates the average (average time) of the center values of the time of one or more transition destination state nodes other than the self transition of the selected state node as the absolute departure time.
  • the calculated absolute departure time is supplied to the sensor control unit 19.
  • step S327 the sensor control unit 19 calculates a difference between the absolute departure time supplied from the departure time prediction unit 17B and the current time.
  • step S328 the sensor control unit 19 determines whether the calculated difference is larger than a predetermined threshold (departure time threshold).
  • step S328 If it is determined in step S328 that the calculated difference is equal to or less than the departure time threshold, the process proceeds to step S329, and the sensor control unit 19 performs control so that the data acquisition interval is shortened, and ends the process. .
  • step S328 determines whether the calculated difference is greater than the departure time threshold. If it is determined in step S328 that the calculated difference is greater than the departure time threshold, the process proceeds to step S330, and the sensor control unit 19 performs control so that the data acquisition interval is increased. Exit.
  • the first sensor control process in the second embodiment is a process in which steps S326 to S329 described above are omitted.
  • the second sensor control process using the predicted predicted departure time in FIG. 32 corresponds to steps S326 to S328 in FIG. 31 as compared with the second sensor control process using the absolute predicted departure time in FIG. Only steps S346 and S347 are different. Therefore, in FIG. 32, only the processing of steps S346 and S347 will be described, and the other description will be omitted.
  • step S346 the departure time prediction unit 17B calculates a relative departure time (predicted stay time) from the self-transition probability of the selected state node. That is, the estimated stay time is obtained by multiplying the equation (2) using the self-transition probability of the selected state node by the time of the unit step, and is supplied to the sensor control unit 19.
  • step S347 the departure time prediction unit 17B determines whether the calculated predicted stay time is longer than a predetermined threshold (stay time threshold).
  • step S347 If it is determined in step S347 that the calculated predicted stay time is equal to or less than the stay time threshold, the process proceeds to step S348.
  • step S347 when it is determined in step S347 that the calculated predicted stay time is longer than the stay time threshold, the process proceeds to step S349.
  • step S348 or S349 a predetermined data acquisition interval is set in the sensor control unit 19, and the process ends.
  • the second sensor control process using the absolute predicted departure time or the second sensor control process using the relative predicted departure time is performed. Based on this, the data acquisition interval may be finally determined.
  • step S365 the model data correction unit 20B acquires the probability ⁇ j (t) of each state node corresponding to each step of the latest movement history.
  • step S366 the model data correction unit 20B generates an ideal sequence corresponding to the most recent movement history according to equation (3). That is, the model data correction unit 20B generates an ideal sequence by weighting and adding the state node probability ⁇ j (t) to the center value of each state node corresponding to each step of the most recent movement history.
  • step S367 the model data correction unit 20B calculates the average of the ideal series and the latest movement history, generates the corrected latest movement history, and ends the process.
  • prediction processing, sensor control processing, and data correction processing can be performed using the probability transition model stored in the probability transition model DB 13B.
  • the prediction device 1 performs a prediction process, a sensor control process, and a data correction process using either a path log or a probability transition model as search data in the past history DB 13. explained.
  • the prediction apparatus 1 may have both a path log and a probability transition model as search data in the past history DB 13 and selectively execute them.
  • FIG. 34 is a block diagram illustrating a configuration example of such a prediction apparatus 1. That is, FIG. 34 shows a configuration example of the prediction apparatus 1 according to the third embodiment that has both a path log and a probability transition model and selectively executes them.
  • the past history DB 13 has the path log DB 13A of the first embodiment and the probability transition model DB 13B of the second embodiment.
  • the similarity search unit 14 includes a similar route search unit 14A according to the first embodiment and a similar node search unit 14B according to the second embodiment.
  • the conformity determination unit 15 includes the conformity determination unit 15A according to the first embodiment and the conformity determination unit 15B according to the second embodiment.
  • the predicted route extraction unit 16 includes a predicted route log extraction unit 16A according to the first embodiment and a predicted node search unit 16B according to the second embodiment.
  • Departure time prediction unit 17 departure time prediction unit 17A of the first embodiment, and departure time prediction unit 17B of the second embodiment.
  • the DB correction unit 20 includes the search log correction unit 20 according to the first embodiment and the model data correction unit 20B according to the second embodiment.
  • the processing described as the first embodiment is executed.
  • the processing described as the second embodiment is executed.
  • the prediction device 1 has both a sensor control function for controlling the data acquisition interval of the position sensor unit 11 and a data correction function for correcting the latest movement history based on the search data. It was.
  • the prediction device 1 may have only one of the sensor control function and the data correction function.
  • FIG. 35 is a block diagram illustrating a configuration example of the prediction device 1 having only the sensor control function as the fourth embodiment of the prediction device 1.
  • FIG. 36 is a block diagram illustrating a configuration example of the prediction device 1 having only a data correction function as the fourth embodiment of the prediction device 1.
  • the processing (operation) of the prediction device 1 according to the fourth embodiment is omitted because it overlaps with the above description.
  • the series of processes described above can be executed by hardware or can be executed by software.
  • a program constituting the software is installed in the computer.
  • the computer includes, for example, a general-purpose personal computer capable of executing various functions by installing various programs by installing a computer incorporated in dedicated hardware.
  • FIG. 37 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input / output interface 105 is further connected to the bus 104.
  • An input unit 106, an output unit 107, a storage unit 108, a communication unit 109, and a drive 110 are connected to the input / output interface 105.
  • the input unit 106 includes a keyboard, a mouse, a microphone, and the like.
  • the output unit 107 includes a display, a speaker, and the like.
  • the storage unit 108 includes a hard disk, a nonvolatile memory, and the like.
  • the communication unit 109 includes a network interface or the like.
  • the drive 110 drives a removable recording medium 111 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 101 loads, for example, the program stored in the storage unit 108 to the RAM 103 via the input / output interface 105 and the bus 104 and executes the program. Is performed.
  • the program can be installed in the storage unit 108 via the input / output interface 105 by attaching the removable recording medium 111 to the drive 110. Further, the program can be received by the communication unit 109 and installed in the storage unit 108 via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting. In addition, the program can be installed in the ROM 102 or the storage unit 108 in advance.
  • appropriate values can be appropriately set as thresholds for determining various conditions.
  • Embodiments of the present technology are not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present technology.
  • this technique can also take the following structures.
  • a position sensor unit for acquiring the latest movement history consisting of time-series position data; Past history DB that stores search data, A similar search unit for searching a past route similar to the most recent movement history from the search data; A conformity determination unit that determines whether the degree of conformity between the past route searched by the similarity search unit and the most recent movement history is equal to or greater than a predetermined threshold;
  • An information processing apparatus comprising: a sensor control unit that controls an acquisition interval of the position data of the position sensor unit according to a determination result of the conformity determination unit.
  • the sensor control unit controls the position data acquisition interval so as to be longer when the fitness is equal to or greater than the predetermined threshold than when the position data is less than the predetermined threshold.
  • a departure time prediction unit for predicting a departure time that is a time of leaving the current position is configured such that when the fitness is equal to or greater than the predetermined threshold and the predicted departure time predicted by the departure time prediction unit is after a predetermined time, the acquisition interval of the position data is:
  • the departure time prediction unit predicts the departure time based on either absolute time or relative time.
  • the past history DB stores past movement history as the search data
  • the similarity search unit uses the distance between the past movement history and the most recent movement history as the fitness, and searches for similar ones to the latest movement history.
  • the past history DB stores, as the search data, parameters when learning a past movement history with a probability transition model
  • the similarity search unit uses the likelihood of the probability transition model calculated with respect to the latest movement history as the fitness, and searches for a thing similar to the latest movement history.
  • the information processing apparatus according to any one of (5).
  • An information processing apparatus having a past history DB that stores search data is Get the latest movement history consisting of time-series position data, Search the past data similar to the latest travel history from the search data, Determining whether the degree of matching between the retrieved past route and the most recent movement history is equal to or greater than a predetermined threshold;
  • An information processing method including a step of controlling an acquisition interval of the position data of the position sensor unit according to a determination result.
  • a similar search unit for searching for a past route similar to the latest movement history made of time-series position data acquired by the position sensor unit from the search data stored in the past history DB;
  • a conformity determination unit that determines whether the degree of conformity between the past route searched by the similarity search unit and the most recent movement history is equal to or greater than a predetermined threshold;
  • the program for functioning as a sensor control part which controls the acquisition interval of the position data of the position sensor part according to the judgment result of the conformity judgment part.

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)

Abstract

本技術は、少ない消費電力で、必要十分な移動履歴データを蓄積することができるようにする情報処理装置、情報処理方法、およびプログラムに関する。類似検索部は、過去履歴DBに記憶されている検索用データのなかから、位置センサ部で取得された、時系列の位置データでなる直近の移動履歴と類似する過去の経路を検索する。適合判定部は、類似検索部で検索された過去の経路と、直近の移動履歴との適合度が所定の閾値以上であるかを判定する。センサ制御部は、適合判定部の判定結果に応じて、位置センサ部の位置データの取得間隔を制御する。この開示の技術は、例えば、位置データを取得して予測経路を予測する予測装置に適用できる。

Description

情報処理装置、情報処理方法、およびプログラム
 本技術は、情報処理装置、情報処理方法、およびプログラムに関し、特に、少ない消費電力で、必要十分な移動履歴データを蓄積することができるようにする情報処理装置、情報処理方法、およびプログラムに関する。
 現在地を起点として、これからの移動経路を予測する方法として、現在の移動履歴と類似する経路を過去の移動履歴のデータベースから検索し、その結果得られた経路を予測経路として出力するものがある(例えば、特許文献1参照)。
 このような予測方法では、データベースである過去の移動履歴を十分に蓄積することが必要である。また、蓄積された過去の移動履歴のデータの精度がよいことも重要である。
特開2000-155167号公報
 精度のよい移動履歴を蓄積するための一つの方法として、現在位置を取得する位置センサの取得間隔を短く設定することが挙げられる。
 しかしながら、例えば、位置センサを搭載した携帯端末などでは、単純に取得間隔を短く設定すると電力消費が大きくなってしまうため、バッテリの持ち時間が短くなってしまう。
 本技術は、このような状況に鑑みてなされたものであり、少ない消費電力で、必要十分な移動履歴データを蓄積することができるようにするものである。
 本技術の一側面の情報処理装置は、時系列の位置データでなる直近の移動履歴を取得する位置センサ部と、検索用データを記憶する過去履歴DBと、前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索する類似検索部と、前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部とを備える。
 本技術の一側面の情報処理方法は、検索用データを記憶する過去履歴DBを備える情報処理装置が、時系列の位置データでなる直近の移動履歴を取得し、前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索し、検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定し、判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するステップを含む。
 本技術の一側面のプログラムは、コンピュータを、過去履歴DBに記憶されている検索用データのなかから、位置センサ部で取得された、時系列の位置データでなる直近の移動履歴と類似する過去の経路を検索する類似検索部と、前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部として機能させるためのものである。
 本技術の一側面においては、過去履歴DBに記憶されている検索用データのなかから、位置センサ部で取得された、時系列の位置データでなる直近の移動履歴と類似する過去の経路が検索され、検索された過去の経路と、直近の移動履歴との適合度が所定の閾値以上であるかが判定され、その判定結果に応じて、位置センサ部の位置データの取得間隔が制御される。
 プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
 情報処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
 本技術の一側面によれば、少ない消費電力で、必要十分な移動履歴データを蓄積することができる。
本技術を適用した予測装置の構成例を示すブロック図である。 予測処理を説明するフローチャートである。 第1のセンサ制御処理を説明するフローチャートである。 第2のセンサ制御処理を説明するフローチャートである。 データ修正処理を説明するフローチャートである。 予測装置の第1の実施の形態の構成例を示すブロック図である。 経路ログDBに記憶される過去の移動履歴のデータ例を示す図である。 目的地リストの例を示す図である。 過去の移動履歴と目的地を地図上に示した図である。 予測値算出部による予測結果を示した図である。 直近の移動履歴の修正について説明する図である。 第1の実施の形態における予測処理を説明するフローチャートである。 第1の実施の形態の絶対の出発予測時刻を用いた第2のセンサ制御処理を説明するフローチャートである。 第1の実施の形態の相対の出発予測時刻を用いた第2のセンサ制御処理を説明するフローチャートである。 第1の実施の形態のデータ修正処理を説明するフローチャートである。 予測装置の第2の実施の形態の構成例を示すブロック図である。 確率遷移モデルの概念図である。 HMMの各状態ノードの観測モデルと内部モデルの例を示す図である。 HMMに学習させたときの学習結果を地図上に示した図である。 直近の移動履歴の修正について説明する図である。 その他の直近の移動履歴の修正について説明する図である。 学習装置の構成例を示すブロック図である。 図22の状態ノード割り当て部の詳細構成例を示すブロック図である。 学習処理を説明するフローチャートである。 適合度算出処理を説明するフローチャートである。 既存ノード割り当て処理を説明するフローチャートである。 新規ノード割り当て処理を説明するフローチャートである。 モデル再構成処理を説明するフローチャートである。 遷移頻度テーブルの例を示す図である。 第2の実施の形態における予測処理を説明するフローチャートである。 第2の実施の形態の絶対の出発予測時刻を用いた第2のセンサ制御処理を説明するフローチャートである。 第2の実施の形態の相対の出発予測時刻を用いた第2のセンサ制御処理を説明するフローチャートである。 第2の実施の形態のデータ修正処理を説明するフローチャートである。 予測装置の第3の実施の形態の構成例を示すブロック図である。 予測装置の第4の実施の形態の構成例を示すブロック図である。 予測装置の第4の実施の形態の構成例を示すブロック図である。 本技術が適用されたコンピュータの一実施の形態の構成例を示すブロック図である。
 以下、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.予測装置の処理の概要
2.第1の実施の形態(経路ログのデータベースに基づく制御を行う構成例)
3.第2の実施の形態(確率遷移モデルのデータベースに基づく制御を行う構成例)
4.第3の実施の形態(第1の実施の形態と第2の実施の形態を選択的に実行可能な構成例)
5.第4の実施の形態(センサ制御機能とデータ修正機能のいずれか一方のみを備える構成例)
<1.予測装置の処理の概要>
[予測装置の構成例]
 図1は、本技術が適用された予測装置の構成例を示すブロック図である。
 図1の予測装置1は、GPS (Global Positioning System )センサ等の位置センサから取得した位置情報を基に、ユーザの移動経路を予測し、目的地と、その目的地に到達するまでの経路や予測時間などを予測する装置である。この予測装置1は、それ単独の携帯型の装置として構成されたり、あるいは、携帯電話機、タブレット端末、等の携帯端末の一部の装置として構成される。
 予測装置1は、位置センサ部11、バッファ12、過去履歴DB13、類似検索部14、適合判定部15、予測経路抽出部16、出発時刻予測部17、予測値算出部18、センサ制御部19、およびDB修正部20により構成される。
 位置センサ部11は、自身の現在の位置を示す緯度経度のデータを、センサ制御部19の制御により決定された一定の時間間隔で順次取得する。位置センサ部11は、取得時刻(現在時刻)と、そのときの緯度、経度(のデータ)を、バッファ12に供給する。
 バッファ12は、位置センサ部11から供給される、時刻、緯度、及び経度のデータを、所定時間分だけ、一時的に保持する。そして、位置センサ部11が時刻、緯度、及び経度のデータを取得する1回の動作を1ステップと呼ぶことにすると、バッファ12は、現在時刻から所定ステップ数前までの時刻、緯度、及び経度の時系列データ(以下、直近の移動履歴と称する。)を類似検索部14に供給する。
 過去履歴DB13は、予測装置1が移動経路や目的地を予測するのに必要な検索用データを記憶する。検索用データは、過去の移動履歴そのもの、あるいはそれを必要に応じて修正したもの、または、過去の移動履歴に対応する学習モデルである。なお、過去履歴DB13に記憶される検索用データは、予測結果を利用するユーザ本人により生成されたものが望ましいが、他のユーザにより生成されたものでもよい。
 また、過去履歴DB13は、過去の移動履歴において目的地とされたリストである目的地リストも記憶する。目的地リストは、例えば、ユーザにより事前に入力されたり、所定時間(例えば、1時間)以上所定範囲(100m)以内に滞在している場所等を検出することで作成される。
 類似検索部14は、過去履歴DB13に記憶された検索用データのなかから、バッファ12から供給される直近の移動履歴と類似する過去の経路を検索し、検索結果を適合判定部15に供給する。
 適合判定部15は、類似検索部14で検索された検索用データの類似の経路が、取得された直近の移動履歴と適合するか否かを判定する。換言すれば、適合判定部15は、取得された直近の移動履歴が、検索用データとして取得されている既知の経路であるか否かを、検索して得られた検索用データの類似の経路と、直近の移動履歴との適合度が所定の閾値以上であるか否かにより判定する。検索して得られた検索用データの類似の経路と、直近の移動履歴との適合度が所定の閾値以上である場合、適合判定部15は、直近の移動経路を既知の経路と判定する。一方、検索された検索用データの類似の経路と、直近の移動履歴との適合度が所定の閾値未満である場合、適合判定部15は、直近の移動経路を未知の経路と判定する。
 適合判定部15は、既知または未知の判定結果を、センサ制御部19に供給する。また、適合判定部15は、既知の経路と判定した場合、直近の移動経路を、予測経路抽出部16およびDB修正部20に供給する。
 予測経路抽出部16は、適合判定部15から供給される既知の直近の移動履歴に基づいて、過去履歴DB13の検索用データから予測経路を抽出する(ユーザの移動経路を予測する)。
 また、予測経路抽出部16は、抽出した予測経路から到達可能な目的地を、目的地リストに基づいてリストアップする。そして、予測経路抽出部16は、抽出された目的地とそこに到達するための予測経路を予測値算出部18に供給し、予測経路を出発時刻予測部17に供給する。
 出発時刻予測部17は、ユーザが現在移動中か、または、止まっているかに関わらず、現在の位置を離れる時刻である出発時刻を、絶対値または相対値のいずれかで予測する。即ち、出発時刻予測部17は、現在の位置から離れる出発時刻を絶対時刻として予測する。あるいは、出発時刻予測部17は、現在の位置から離れるまでの時間(出発時間)を相対時刻として予測する。絶対時刻または相対時刻のいずれを使用するかは、例えば、ユーザの選択を受け付けて決定するようにしてもよい。出発時刻予測部17は、予測結果である出発予測時刻をセンサ制御部19に供給する。
 予測値算出部18は、予測経路抽出部16から供給される、既知の直近の移動履歴に基づいて得られた目的地と予測経路に基づいて、予測値として、目的地までの到達時間、経路、および到達確率を算出して出力する。予測値算出部18から出力された予測結果が、例えば、図示せぬディスプレイ等に表示される。また、予測値算出部18の後段において、予測結果を用いた携帯端末の制御などが行われる。
 センサ制御部19には、適合判定部15から、既知または未知の判定結果が供給される。また、センサ制御部19には、出発時刻予測部17から、絶対時刻または相対時刻のいずれかで表された出発予測時刻が供給される。
 センサ制御部19は、既知または未知の判定結果に応じて、位置センサ部11が位置データを取得するデータ取得間隔を制御する。具体的には、センサ制御部19は、既知の判定結果が供給された場合、データ取得間隔が短くなるように制御し、未知の判定結果が供給された場合、データ取得間隔が長くなるように制御する。
 また、センサ制御部19は、出発時刻予測部17から供給される出発予測時刻に応じて、位置センサ部11のデータ取得間隔を制御することもできる。具体的には、センサ制御部19は、出発時刻まで余裕がある場合には、データ取得間隔が短くなるように制御し、出発時刻がすぐである場合、データ取得間隔が長くなるように制御する。出発時刻がすぐである場合には、ユーザが移動中である場合も含まれる。
 DB修正部20には、既知の直近の移動履歴が適合判定部15から供給される。DB修正部20は、過去履歴DB13に記憶されている検索用データに基づいて、適合判定部15から供給された既知の直近の移動履歴を修正し、過去履歴DB13に供給する。
 従って、図1では図示を省略しているが、予測経路抽出部16、予測値算出部18、DB修正部20などは、必要に応じて過去履歴DB13の検索用データを取得して処理を行う。
 以上のように構成される予測装置1は、位置センサ部11で取得される直近の既知の移動履歴に基づいて、ユーザの、現在地からの移動経路、目的地、目的地に行くまでにかかる時間等を予測する予測処理を行う。
 また、予測装置1は、位置センサ部11で取得される直近の移動履歴が既知かまたは未知かに基づいて、位置センサ部11のデータ取得間隔を制御(変更)するセンサ制御処理を行う。
 さらに、予測装置1は、位置センサ部11で取得される既知の直近の移動履歴に基づいて、直近の移動履歴(のデータ)を修正するデータ修正処理を行う。
 以下、予測処理、センサ制御処理、およびデータ修正処理のそれぞれについて、図2乃至図5のフローチャートを参照して説明する。
[予測処理のフローチャート]
 図2は、図1の予測装置1が行う予測処理のフローチャートである。なお図2乃至図5においては、位置センサ部11のデータ取得およびバッファ12のバッファリングは常時行われているものとする。
 初めに、ステップS1では、類似検索部14は、過去履歴DB13から、検索用データを取得する。
 ステップS2において、類似検索部14は、バッファ12から、直近の移動履歴を取得する。
 ステップS3において、類似検索部14は、取得した検索用データのなかから、直近の移動履歴と類似する経路を検索し、検索結果を適合判定部15に供給する。直近の移動履歴が検索用データのどの経路と類似するかの検索は、直近の移動履歴と検索用データの経路との適合度(類似度)を、全ての検索用データについて算出することにより行われる。
 ステップS4において、適合判定部15は、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であるかを判定する。
 ステップS4で、直近の移動履歴と検索用データの経路との適合度が所定の閾値未満であると判定された場合、予測処理は終了する。即ち、直近の移動履歴が未知の経路である場合には、予測ができないとして処理を終了する。
 一方、ステップS4で、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であると判定された場合、処理はステップS5に進み、予測経路抽出部16は、過去履歴DB13の検索用データから、目的地と予測経路を抽出する。
 そして、ステップS6において、予測値算出部18は、抽出された予測経路に基づいて、目的地までの到達時間、経路、及び到達確率を、予測値として算出して出力し、処理を終了する。
[第1のセンサ制御処理のフローチャート]
 図3は、適合判定部15からの既知または未知の判定結果のみに基づいて、位置センサ部11のデータ取得間隔を制御する第1のセンサ制御処理のフローチャートである。
 初めに、ステップS11において、類似検索部14は、過去履歴DB13から、検索用データを取得する。
 ステップS12において、類似検索部14は、バッファ12から、直近の移動履歴を取得する。
 ステップS13において、類似検索部14は、取得した検索用データのなかから、直近の移動履歴と類似する経路を検索し、検索結果を適合判定部15に供給する。直近の移動履歴が検索用データのどの経路と類似するかの検索は、直近の移動履歴と検索用データの経路との適合度(類似度)を、全ての検索用データについて算出することにより行われる。
 ステップS14において、適合判定部15は、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であるかを判定する。
 以上のステップS11乃至S14の処理は、図1のステップS1乃至S4の処理と同一であり、1つの処理を、予測処理とセンサ制御処理が共通に利用している。
 ステップS14で、直近の移動履歴と検索用データの経路との適合度が所定の閾値未満であると判定された場合、即ち、直近の移動履歴が未知の経路である場合、処理はステップS15に進み、センサ制御部19は、データ取得間隔が短くなるように制御して、処理を終了する。
 一方、ステップS14で、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であると判定された場合、即ち、直近の移動履歴が既知の経路である場合、処理はステップS16に進み、センサ制御部19は、データ取得間隔が長くなるように制御して、処理を終了する。
 図3の処理は繰り返し実行される。
 以上のように、第1のセンサ制御処理では、直近の移動履歴が既知であれば、既に学習している経路であるので、データ取得間隔が長く設定される。一方、直近の移動履歴が未知であれば、検索用データとして蓄積する必要があるので、精密なデータを取得するため、データ取得間隔が短く設定される。これにより、不要な時にはデータ取得間隔を長くすることができるので、少ない消費電力で、必要十分な移動履歴データを蓄積することができる。
[第2のセンサ制御処理のフローチャート]
 図4は、既知または未知の判定結果と出発予測時刻に基づいて、位置センサ部11のデータ取得間隔を制御する第2のセンサ制御処理のフローチャートである。
 図4のステップS21乃至S25は、図3のステップS11乃至S15とそれぞれ同様であるので、その説明は省略する。
 ステップS24で、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であると判定された場合、処理はステップS26に進み、出発時刻予測部17は、現在の位置を離れる時刻である出発時刻を、絶対時刻または相対時刻のいずれかで予測する。出発時刻予測部17の予測結果である出発予測時刻は、センサ制御部19に供給される。
 そして、ステップS27において、センサ制御部19は、出発時刻予測部17から供給された出発予測時刻が所定時間より後であるかを判定する。
 ステップS27で、出発予測時刻が所定時間より後ではないと判定された場合、即ち、移動中のときのように、出発時刻がすぐである場合、処理はステップS28に進み、センサ制御部19は、データ取得間隔が短くなるように制御する。
 一方、ステップS27で、出発予測時刻が所定時間より後であると判定された場合、即ち、出発時刻まで余裕がある場合、処理はステップS29に進み、センサ制御部19は、データ取得間隔が長くなるように制御する。
 図4の処理は繰り返し実行される。
 以上のように、第2のセンサ制御処理では、直近の移動経路が既知であっても、例えば、移動中である場合には、データ取得間隔が短く設定され、目的地に滞在していたり、電車待ちなど、現在地からしばらく動かない場合には、データ取得間隔が長く設定される。
 これにより、不要な時にはデータ取得間隔を長くすることができるので、少ない消費電力で、必要十分な移動履歴データを蓄積することができる。
 なお、上述した例では、データ取得間隔を、短い設定時間(例えば、1分)と、長い設定時間(例えば、5分)の二段階としたが、三段階以上に分けてもよい。
[データ修正処理のフローチャート]
 図5は、図1の予測装置1が行うデータ修正処理のフローチャートである。
 図5のステップS41乃至S44の処理は、図1のステップS1乃至S4、および図2のステップS11乃至S14の処理と同様であるので、その説明は省略する。即ち、ステップS41乃至S44の処理は、1つの処理を、予測処理、センサ制御処理、及びデータ修正処理が共通に利用している。
 ステップS44で、直近の移動履歴と検索用データの経路との適合度が所定の閾値未満であると判定された場合、データ修正処理は終了する。即ち、直近の移動履歴が未知の経路である場合には、検索用データとしての蓄積がないため、修正ができないとして処理を終了する。
 一方、ステップS44で、直近の移動履歴と検索用データの経路との適合度が所定の閾値以上であると判定された場合、処理はステップS45に進み、DB修正部20は、検索用データを用いて直近の移動履歴を修正する。そして、DB修正部20は、修正後の直近の移動履歴を過去履歴DB13に供給して、処理を終了する。
 図5の処理は繰り返し実行される。
 以上のように、データ修正処理では、検索用データに基づいて、直近の移動履歴を修正して、過去履歴DB13に供給することができるので、過去の移動履歴として蓄積するデータ(検索用データ)の精度を向上させることができる。
 以上、図1乃至図5を参照して、図1の予測装置1の処理の概要について説明した。
 図1の予測装置1は、検索用データを過去履歴DB13にどのように持たせるかによって、予測処理、センサ制御処理、およびデータ修正処理のそれぞれを、異なる方法で実行することができる。
 1つは、取得された時刻、緯度、および経度の時系列データである経路ログを検索用データとして過去履歴DB13に記憶させ、その経路ログを用いて行う方法である。他の1つは、取得された時刻、緯度、および経度の時系列データを学習した学習モデルを検索用データとして過去履歴DB13に記憶させ、その学習モデルを用いて行う方法である。学習モデルには、例えば、確率遷移モデルが採用される。
 以下では、経路ログを用いて行う場合を、予測装置1の第1の実施の形態として説明し、学習モデルを用いて行う場合を、予測装置1の第2の実施の形態として説明する。
<2.第1の実施の形態>
[第1の実施の形態の予測装置1の構成例]
 図6は、第1の実施の形態における予測装置1の構成例を示すブロック図である。
 図6の経路ログDB13A、類似経路検索部14A、適合判定部15A、予測経路ログ抽出部16A、出発時刻予測部17A、予測値算出部18A、および検索ログ修正部20Aが、図1の過去履歴DB13、類似検索部14、適合判定部15、予測経路抽出部16、出発時刻予測部17、予測値算出部18、およびDB修正部20に対応する。
 経路ログDB13Aは、過去の移動履歴と、目的地リストを記憶する。
 図7は、経路ログDB13Aに記憶される過去の移動履歴のデータ例を示している。図7に示されるように、取得された時刻と位置(経度、緯度)が、取得された時間順に記憶される。取得間隔は、センサ制御部19により制御された所定の時間間隔である。
 なお、位置センサ部11が位置のデータを一定間隔に取得することができない場合もある。例えば、トンネルや地下にいる場合などには、人工衛星を捕捉することができず、取得間隔が長くなることもある。そのような場合には、例えば、線形補間により等間隔に補間されてから記憶される。過去の移動履歴には、取得時刻の古い順に、例えば、通し番号等が付されて記憶されている。
 図8は、経路ログDB13Aに記憶される目的地リストの例を示している。
 目的地リストは、目的地に対して順に付されたインデックスと、目的地の位置(経度、緯度)とから構成される。
 図9は、経路ログDB13Aに記憶されている、過去の移動履歴と、目的地リストに記載されている目的地を地図上に示した図である。
 図9において、丸(○)で囲まれた位置の中心が目的地であり、それらをつなぐように示される灰色の点が、過去の移動履歴をプロットしたものである。
 図6に戻り、類似経路検索部14Aは、経路ログDB13Aの過去の移動履歴をスキャンして、バッファ12から供給される直近の移動履歴と、過去の移動履歴の各箇所(位置)との類似度を算出する。
 類似経路検索部14Aにおいて、過去の移動履歴のi番目の箇所と、直近の移動履歴との類似度D(i)は、次式(1)で計算される。
Figure JPOXMLDOC01-appb-M000001
 式(1)のxpastは、過去の移動履歴を表し、xcurrentは、直近の移動履歴を表す。右下の添え字は、過去の移動履歴または直近の移動履歴の通し番号を表す。また、式(1)のDistance(x,y)は、二つの箇所xとyとの距離を求める関数であり、ユークリッド距離、若しくは、市街地距離(直交方向の差ベクトルの成分の和)、または、それらの二乗などとすることができる。Σは、Kステップ分についての和を表す。
 従って、式(1)の類似度D(i)は、バッファ12から供給される直近の移動履歴がKステップ分の位置データであり、Kステップ分の直近の移動履歴と、過去の移動履歴のなかのi番目から過去Kステップ分の移動履歴との、対応するステップ間の距離(総和)に相当する。
 なお、式(1)でマイナスを乗じているのは、類似するほど、類似度D(i)が大きい値となるようにするためである。
 式(1)の類似度D(i)は、Kステップ分についての和を、さらにステップ数Kで除算して、距離の平均としてもよい。
 なお、類似度D(i)の算出方法は、これに限定されるものではない。例えば、もっと簡便に、直近の移動履歴の中から、直近の箇所と、所定時間前のもう一箇所を選択し、過去の移動履歴の中から、選択した直近の二箇所に近く、また、所定時間程度の間隔にある二箇所を検出して、検出された二箇所と直近の二箇所の対応する箇所どうしの距離を利用するものでもよい。
 類似経路検索部14Aは、式(1)の類似度D(i)を適合度として求め、適合判定部15Aに供給する。
 適合判定部15Aは、類似経路検索部14Aにより求められた、過去の移動履歴の各箇所と直近の移動履歴の適合度が、所定の閾値以上であるかを判定し、取得された直近の移動履歴と適合する過去の移動履歴があるかを判定する。
 予測経路ログ抽出部16Aは、所定の閾値以上であるとして検出された過去の移動履歴の箇所に対して、経路ログDB13Aの目的地リストのいずれかに至るまでの移動履歴を、予測経路として抽出する。所定の閾値以上であるとして検出された過去の移動履歴の箇所は、複数検出されることがある。
 予測経路ログ抽出部16Aは、抽出した予測経路から到達可能な目的地を、経路ログDB13Aの目的地リストに基づいて、目的地ごとにリストアップする。
 予測値算出部18Aは、リストアップされた目的地ごとに、目的地への経路リストおよび代表経路、到達確率、並びに所要時間を算出する。
 目的地への代表経路には、抽出された目的地への経路リストのうち、例えば、所要時間の最も短いものが採用される。その他、抽出された複数の予測経路の平均所要時間に最も近い予測経路を、代表経路としてもよい。
 目的地の到達確率は、抽出された予測経路の全数を分母として、その目的地へ到達できる予測経路の本数を分子として算出することができる。
 目的地の所要時間は、その目的地への予測経路それぞれの所要時間の平均値とすることができる。なお、目的地の所要時間の算出には、明らかな異常値の予測経路については除外した平均値としてもよい。
 図10は、予測値算出部18Aにより得られた各目的地と、それぞれの目的地への到達確率と所要時間を地図上に示した例である。
 図6に戻り、出発時刻予測部17Aは、予測経路ログ抽出部16Aにより抽出された、適合度が所定の閾値以上の箇所を起点とした1以上の予測経路から、絶対または相対の出発時刻を算出し、センサ制御部19に供給する。
 絶対の出発時刻を求める場合には、出発時刻予測部17Aは、起点を中心とする所定の範囲(例えば、半径100m)を設定範囲として、初めて設定範囲から外にでるときの過去の時刻の平均値を算出し、絶対の出発時刻とする。
 相対の出発時刻を求める場合には、出発時刻予測部17Aは、起点を中心とする所定の範囲(例えば、半径100m)を設定範囲として、設定範囲内にどれくらいのステップ数(時間)だけ滞在していたかを算出し、その平均値を相対の出発時刻(予測滞在時間)とする。
 絶対時刻は、例えば、オフィスへの出勤、退勤など習慣があり、行動の時間帯に規則性がある場合の予測に適している。一方、相対時刻は、休日の外出(買い物や散髪など)など、行動の時間帯に規則性がない場合の予測に適している。
 検索ログ修正部20Aは、所定の閾値以上であるとして検出された過去の移動履歴を用いて、直近の移動履歴を修正し、修正後の直近の移動履歴を経路ログDB13Aに供給する。
 図11を参照して、検索ログ修正部20Aによる直近の移動履歴の修正について説明する。
 検索ログ修正部20Aは、所定の閾値以上であるとして検出された過去の移動履歴の箇所を起点とする、直近の移動履歴と同ステップ数(Kステップ)の過去の移動履歴を、経路ログDB13A内で検索し、検索データとして切り出す。
 そして、検索ログ修正部20Aは、切り出された1以上の検索データに対して、ステップごとの平均値を算出し、理想系列を生成する。さらに、検索ログ修正部20Aは、理想系列と直近の移動履歴の平均を算出し、修正後の直近の移動履歴を生成する。
 図11において、直近の移動履歴の黒丸(●)が最新の位置データ(箇所)であり、検索データの黒三角(▲)が、最新の位置データに対応する過去の移動履歴の箇所(起点)である。同様に、理想系列の白三角(△)と、修正後の移動履歴の白丸(○)も、直近の移動履歴の最新の位置データに対応する箇所である。
 なお、この例では、起点からのステップ数を、類似度を求める場合のステップ数と同一としたが、類似度を求める場合と異なるステップ数としてもよい。
 また、上述した例では、修正後の直近の移動履歴を単純平均により求めたが、理想系列と直近の移動履歴とで、理想系列に対する重みを重く設定した重み付け平均により求めてもよい。同様に、理想系列を求める場合も、より過去の移動履歴については重みを小さく設定するような重み付き平均により求めてもよい。
 この修正処理により、直近の移動履歴を、自動的に統計的に処理された位置に修正して、経路ログDB13Aに蓄積させることができる。
[予測処理のフローチャート]
 図12のフローチャートを参照して、第1の実施の形態における予測処理について説明する。
 初めに、ステップS61において、類似経路検索部14Aは、過去の移動履歴と目的地リストを経路ログDB13Aから取得する。
 ステップS62において、類似経路検索部14Aは、バッファ12から、直近の移動履歴を取得する。
 ステップS63において、類似経路検索部14Aは、過去の移動履歴をスキャンして、過去の移動履歴の各箇所(位置)について、直近の移動履歴との適合度を算出する。ここで、適合度には、例えば、式(1)の類似度D(i)が採用される。
 ステップS64において、適合判定部15Aは、類似経路検索部14Aにより求められた適合度に基づいて、所定の閾値以上の適合度を有する箇所が1以上あるかを判定する。
 ステップS64で、所定の閾値以上の適合度を有する箇所が1つもないと判定された場合、予測処理は終了する。一方、ステップS64で、所定の閾値以上の適合度を有する箇所が1以上あると判定された場合、処理はステップS65に進む。
 ステップS65において、予測経路ログ抽出部16Aは、所定の閾値以上の適合度を有する箇所を選択する。
 そして、ステップS66において、予測経路ログ抽出部16Aは、選択した箇所(選択箇所)それぞれについて、選択箇所からいずれかの目的地に至るまでの過去の移動履歴を、予測経路として抽出する。
 ステップS67において、予測経路ログ抽出部16Aは、抽出した予測経路から到達可能な目的地を、経路ログDB13Aの目的地リストに基づいて、目的地ごとにリストアップする。
 そして、ステップS68において、予測値算出部18Aは、リストアップされた目的地ごとに、目的地への経路リストおよび代表経路を算出する。代表経路には、例えば、目的地への複数の予測経路のうち、所要時間の最も短いものが採用される。
 ステップS69において、予測値算出部18Aは、各目的地への到達確率を算出し、ステップS70において、各目的地への所要時間を算出して出力し、処理を終了する。
[絶対の出発予測時刻を用いた第2のセンサ制御処理のフローチャート]
 次に、図13のフローチャートを参照して、第1の実施の形態における、絶対の出発予測時刻を用いた第2のセンサ制御処理について説明する。
 図13のステップS81乃至S84は、図12のステップS61乃至S64と同様であるので、その説明は省略する。
 ステップS84で、所定の閾値以上の適合度を有する箇所が1つもないと判定された場合、処理はステップS85に進み、センサ制御部19は、位置センサ部11を、データ取得間隔が短くなるように制御して、処理を終了する。
 一方、ステップS84で、所定の閾値以上の適合度を有する箇所が1以上あると判定された場合、処理はステップS86に進み、予測経路ログ抽出部16Aは、所定の閾値以上の適合度を有する箇所を選択する。
 ステップS87において、出発時刻予測部17Aは、適合度が所定の閾値以上の選択箇所から、最初に設定範囲外に出るときの過去の時刻の平均値を算出し、絶対の出発時刻とする。算出された絶対の出発時刻は、センサ制御部19に供給される。
 ステップS88において、センサ制御部19は、出発時刻予測部17Aから供給された絶対の出発時刻と、現在時刻との差分を算出する。
 そして、ステップS89において、センサ制御部19は、算出された差分が所定の閾値(以下、出発時刻閾値という。)より大であるかを判定する。
 ステップS89で、算出された差分が出発時刻閾値以下であると判定された場合、処理はステップS90に進み、センサ制御部19は、データ取得間隔が短くなるように制御して、処理を終了する。
 一方、ステップS89で、算出された差分が出発時刻閾値より大であると判定された場合、処理はステップS91に進み、センサ制御部19は、データ取得間隔が長くなるように制御して、処理を終了する。
 第1の実施の形態における第1のセンサ制御処理は、上述したステップS86乃至S90を省略した処理となる。
[相対の出発予測時刻を用いた第2のセンサ制御処理のフローチャート]
 図14のフローチャートを参照して、第1の実施の形態における、相対の出発予測時刻を用いた第2のセンサ制御処理について説明する。
 図14の相対の出発予測時刻を用いた第2のセンサ制御処理は、図13の絶対の出発予測時刻を用いた第2のセンサ制御処理と比較すると、図13のステップS87乃至S89に対応するステップS107およびS108が異なるのみである。従って、図14では、ステップS107およびS108の処理のみ説明し、それ以外の説明は省略する。
 ステップS107において、出発時刻予測部17Aは、選択箇所を中心とする設定範囲内を離れるまでの時間(ステップ数)の平均値を予測滞在時間として算出する。
 ステップS108において、出発時刻予測部17Aは、算出された予測滞在時間が所定の閾値(以下、滞在時間閾値という。)より大であるかを判定する。
 ステップS108で、算出された予測滞在時間が滞在時間閾値以下であると判定された場合、処理はステップS109に進む。
 一方、ステップS108で、算出された予測滞在時間が滞在時間閾値より大であると判定された場合、処理はステップS110に進む。
 ステップS109またはS110において、所定のデータ取得間隔がセンサ制御部19に設定されて、処理は終了する。
 以上のように、絶対の出発予測時刻を用いた第2のセンサ制御処理、または、相対の出発予測時刻を用いた第2のセンサ制御処理は行われるが、両者の処理結果を組み合わせた結果に基づいて、最終的にデータ取得間隔を決定するようにしてもよい。
[データ修正処理のフローチャート]
 次に、図15のフローチャートを参照して、第1の実施の形態における、データ修正処理について説明する。
図15のステップS121乃至S125は、図12のステップS61乃至S65と同様であるので、その説明は省略する。
 ステップS126において、検索ログ修正部20Aは、選択箇所を起点とする数ステップ(Kステップ)の過去の移動履歴を、経路ログDB13A内で検索し、検索データとして切り出す。これにより、1以上の検索データが切り出される。
 ステップS127において、検索ログ修正部20Aは、切り出した1以上の検索データに対して、ステップごとの平均値を算出し、理想系列を生成する。
 ステップS128において、検索ログ修正部20Aは、理想系列と直近の移動履歴の平均を算出することで、修正後の直近の移動履歴を生成して、処理を終了する。
 以上のように、予測装置1の第1の実施の形態では、過去履歴DB13に記憶されている経路ログを用いて、予測処理、センサ制御処理、およびデータ修正処理を行うことができる。
<3.第2の実施の形態>
[第2の実施の形態の予測装置1の構成例]
 図16は、第2の実施の形態における予測装置1の構成例を示すブロック図である。
 図16の確率遷移モデルDB13B、類似ノード検索部14B、適合判定部15B、予測ノード探索部16B、出発時刻予測部17B、予測値算出部18B、およびモデル用データ修正部20Bが、図1の過去履歴DB13、類似検索部14、適合判定部15、予測経路抽出部16、出発時刻予測部17、予測値算出部18、およびDB修正部20に対応する。
 確率遷移モデルDB13Bは、過去の移動履歴を学習モデルとしての確率遷移モデルにより学習した結果を記憶する。換言すれば、確率遷移モデルDB13Bには、過去の移動履歴を学習モデルとしての確率遷移モデルで学習して得られたパラメータが検索用データとして記憶される。
 また、確率遷移モデルDB13Bには、モデル用データ修正部20Bから、新たな移動履歴が供給されるので、確率遷移モデルDB13Bは、所定のタイミングで(例えば、一日おき、一週間おきなど)新たな移動履歴を用いて確率遷移モデルのパラメータを更新し、記憶する。
 さらに、確率遷移モデルDB13Bは、第1の実施の形態における経路ログDB13Aと同様に、目的地リストも記憶する。
 図17は、過去の移動履歴を学習するための確率遷移モデルの概念図である。
 図17に示される確率遷移モデルは、状態数が3(N=3)の隠れマルコフモデル(以下、HMMという。)を示している。HMMは、複数の離散化された状態ノードsiで構成される。さらに詳しく言えば、HMMは、複数の離散化された状態ノードsiについての、正規分布を持つ確率変数などで表される状態を決めるパラメータと、状態遷移を決めるパラメータで表現される。以下では、状態を決めるパラメータと状態遷移を決めるパラメータの両者を合わせて、HMMのパラメータともいい、状態ノードは、単に状態ともいう。
 状態を決めるパラメータは、状態ノードsiの観測モデルであり、状態ノードsiの中心値(平均値)μiと分散値σi 2で構成される。状態遷移を決めるパラメータは、状態ノードsiの内部モデルであり、状態ノードsiから状態ノードsjへの状態遷移確率aijで構成される。
 図18は、学習モデルとしてのHMMに過去の移動履歴を学習させた場合の、HMMの各状態ノードの観測モデルと内部モデルの例を示している。
 内部モデルとしての状態遷移確率aijには、自分の状態ノードsiへ遷移する自己遷移確率も存在する。観測モデルとしての状態ノードsiの中心値μiと分散値σi 2は、時刻、経度、及び緯度のそれぞれについて求められる。なお、学習初期の各状態ノードsiには、初期状態を表す初期値が適宜設定される。
 図19は、図9に示した過去の移動履歴と目的地を確率遷移モデルとしてのHMMに学習させたときの学習結果を地図上に示した図である。図19において、経路上をつなぐように示される略楕円が、学習された各状態ノードを示している。
 HMMのパラメータを推定する方法としては、Baum-Welchの再尤推定法が広く利用されている。Baum-Welchの再尤推定法は、EMアルゴリズム(EM(Expectation-Maximization) algorithm)に基づくパラメータの推定方法である。
 Baum-Welchの再尤推定法によれば、観測される時系列データx=x1,x2,・・・,xTに基づき、その時系列データが観測(生起)される確率である生起確率から求まる尤度を最大化するように、HMMのパラメータの推定が行われる。ここで、xtは、時刻tに観測される信号(サンプル値)を表し、Tは、時系列データの長さ(サンプル数)を表す。
 Baum-Welchの再尤推定法については、例えば、“パターン認識と学習のアルゴリズム”,上坂吉則・尾関和彦著,文一総合出版,P.121に記載されている。
 図16に戻り、類似ノード検索部14Bは、バッファ12から供給される直近の移動履歴に対応する確率遷移モデルの状態ノードを検索する。換言すれば、類似ノード検索部14Bは、直近の移動履歴の現在地(最新の箇所)に対応する状態ノードの状態確率が最大となる状態ノードを探索(選択)する。
 適合判定部15Bは、直近の移動履歴の現在地に対応する状態ノードの適合度が、所定の閾値以上であるかを判定する。確率遷移モデルを用いた場合の適合度の算出方法については後述する。直近の移動履歴の現在地に対応する状態ノードの適合度が所定の閾値以上である場合、既知の判定結果が、センサ制御部19、予測ノード探索部16B、およびモデル用データ修正部20Bに供給される。また、探索して得られた状態ノードが、予測ノード探索部16Bとモデル用データ修正部20Bに供給される。一方、直近の移動履歴(の現在地)に対応する状態ノードの適合度が所定の閾値未満である場合、未知の判定結果が、センサ制御部19に供給される。
 予測ノード探索部16Bは、適合判定部15B供給される、探索して得られた現在地に対応する状態ノードから、遷移可能な目的地の状態ノード(目的地ノード)をツリー探索することにより、目的地を探索する。そして、予測ノード探索部16Bは、探索された目的地を、目的地ごとにリストアップする。
 予測値算出部18Bは、リストアップされた目的地ごとに、目的地への経路リストおよび代表経路、到達確率、並びに、所要時間を算出する。
 出発時刻予測部17Bは、探索して得られた現在地に対応する状態ノードに基づいて、絶対または相対の出発時刻を算出し、センサ制御部19に供給する。
 絶対の出発時刻は、探索して得られた現在地に対応する状態ノードの自己遷移以外の1以上の遷移先の時刻の中心値の平均により求めることができる。あるいは、探索して得られた現在地に対応する状態ノードの自己遷移以外の遷移先の時刻のなかで、最も現在時刻に近い将来の時刻を中心値としてもつものを、絶対の出発時刻として選択するようにしてもよい。
 また、相対の出発時刻(予測滞在時間)は、探索して得られた現在地に対応する状態ノードの自己遷移確率を用いた次式(2)に、単位ステップの時間を乗算した値により求めることができる。
Figure JPOXMLDOC01-appb-M000002
 式(2)において、tstayが予測滞在時間を表し、assは、探索して得られた状態ノードを表す。なお、式(2)は、自己遷移確率が1であるとき発散するので、予測滞在時間には上限値を設定しておく方がよい。
 モデル用データ修正部20Bは、直近の移動履歴に対応する状態ノードの状態ノード系列を用いて、直近の移動履歴を修正し、修正後の直近の移動履歴を確率遷移モデルDB13Bに供給する。
 図20を参照して、モデル用データ修正部20Bによる直近の移動履歴の修正について説明する。
 モデル用データ修正部20Bは、直近の移動履歴に対応する状態ノードの状態ノード系列(対応ノード系列)を生成し、生成された対応ノード系列の中心値の系列を、理想系列として生成する。そして、モデル用データ修正部20Bは、理想系列と直近の移動履歴の平均を算出し、修正後の直近の移動履歴を生成する。
 図21は、モデル用データ修正部20Bによる、その他の修正方法を示している。
 図21に示される修正方法が、図20に示した修正方法と異なる点は、直近の移動履歴の各ステップに対して、確率遷移モデルを構成する各状態ノードの確率を用いる点である。即ち、図21では、直近の移動履歴の各ステップに対する各状態ノードの確率δj(t)が確率テーブルとして示されている。直近の移動履歴の各ステップに対する各状態ノードの確率δj(t)の算出方法は、後述する式(5)で求められる。
 モデル用データ修正部20Bは、直近の移動履歴に対応する理想系列を、確率テーブルを用いた次式(3)で算出する。
Figure JPOXMLDOC01-appb-M000003
 式(3)は、直近の移動履歴の各ステップについて、各状態ノードの緯度および経度の中心値μjを、状態ノードの確率δj(t)で重み付けして加算した値を、直近の移動履歴の各ステップに対応する理想系列の位置<xt>とすることを表す。ここで、tは、直近の移動履歴の各ステップの取得時刻に対応するステップ数(通し番号)である。
[学習装置の構成例]
 次に、確率遷移モデルDB13Bに記憶される確率遷移モデルを学習する学習装置について説明する。
 図22は、確率遷移モデルDB13Bに記憶される確率遷移モデルのパラメータを求める学習装置60の構成例を示している。
 学習装置60は、ログ取得部61、前処理部62、状態ノード割り当て部63、モデル再構成部64、目的地リスト修正部65、およびモデル記憶部66により構成される。
 ログ取得部61は、学習データとしての過去の移動履歴を取得し、前処理部62に供給する。
 前処理部62は、学習データの一時的なデータの欠落部分に対し、線形補間等の補間処理を行うことで補間して、処理後の過去の移動履歴を状態ノード割り当て部63に供給する。
 状態ノード割り当て部63は、前処理部62から供給された過去の移動履歴に対し、確率遷移モデルの状態ノードを割り当てる。より具体的には、状態ノード割り当て部63は、学習データである過去の移動履歴の各位置データに対して既存の確率遷移モデルとの適合度を算出し、適合度が所定の閾値以上であるか否かを判定する。そして、適合度が所定の閾値以上である場合、状態ノード割り当て部63は、その位置データに対しては既存の状態ノードを割り当てる。一方、適合度が所定の閾値未満である場合、状態ノード割り当て部63は、その位置データに対しては新規の状態ノードを割り当てる。そして、過去の移動履歴に対応して割り当てられた、状態ノードのノード番号の系列データ(対応ノード系列)が、モデル再構成部64に供給される。
 モデル再構成部64は、状態ノード割り当て部63からの対応ノード系列に基づいて、確率遷移モデルを再構成するモデル再構成処理を行う。即ち、モデル再構成部64は、現在の確率遷移モデルの状態ノードのパラメータの修正、および、新たな状態ノードのパラメータの追加を行う。
 目的地リスト修正部65は、過去の移動履歴に新たな目的地が追加された場合、モデル記憶部66に記憶されている目的地リストを修正する。
 モデル記憶部66は、学習モデルとしての確率遷移モデルのパラメータを記憶する。また、モデル記憶部66は、目的地リストも記憶する。
 図23は、図22の状態ノード割り当て部63の詳細構成例を示している。
 状態ノード割り当て部63は、モデル取得部71、対応ノード系列推定部72、適合度閾値判定部73、既存ノード割り当て部74、および新規ノード割り当て部75により構成される。
 モデル取得部71は、モデル記憶部66から、確率遷移モデルのパラメータを取得して、対応ノード系列推定部72に供給する。
 対応ノード系列推定部72は、学習データである過去の移動履歴に対して、既存の確率遷移モデルを用いて、対応する状態ノード系列である対応ノード系列を生成(推定)する。
 適合度閾値判定部73は、対応ノード系列推定部72で推定された対応ノード系列を構成する状態ノードそれぞれについて、適合度が所定の閾値以上であるか否かを判定する。換言すれば、適合度閾値判定部73は、学習データとして供給された過去の移動履歴が既知の経路であるか、または、未知の経路であるかを判定する。そして、適合度閾値判定部73は、適合度が所定の閾値以上である(既知の経路である)と判定された学習データ(過去の移動履歴)を、既存ノード割り当て部74に供給し、適合度が所定の閾値未満である(未知の経路である)と判定された学習データを、新規ノード割り当て部75に供給する。
 既存ノード割り当て部74は、適合度閾値判定部73から供給された既知経路の学習データに対して、既存の確率遷移モデルの状態ノードを割り当てる既存ノード割り当て処理を行う。
 新規ノード割り当て部75は、適合度閾値判定部73から供給された未知経路の学習データに対し、新規の確率遷移モデルの状態ノードを割り当てる新規ノード割り当て処理を行う。
 既存ノード割り当て処理および新規ノード割り当て処理によって割り当てられた状態ノードのノード系列が、図22のモデル再構成部64に供給される。
[学習処理のフローチャート]
 図24は、学習装置60による学習処理のフローチャートを示している。
 初めに、ステップS161において、ログ取得部61は、学習データとしての過去の移動履歴を取得し、前処理部62に供給する。
 ステップS162において、前処理部62は、学習データの一時的なデータの欠落部分に対し、線形補間等の補間処理を行うことで補間して、処理後の過去の移動履歴を状態ノード割り当て部63に供給する。
 ステップS163において、状態ノード割り当て部63のモデル取得部71は、モデル記憶部66から、確率遷移モデルのパラメータを取得して、対応ノード系列推定部72に供給する。
 ステップS164において、状態ノード割り当て部63の対応ノード系列推定部72は、学習データである過去の移動履歴の各位置データに対して既存の確率遷移モデルとの適合度を算出する適合度算出処理を行う。
 ステップS165において、状態ノード割り当て部63の適合度閾値判定部73は、学習データを構成する各位置データを識別するステップ番号iに1をセットして、ステップS166に進み、iステップ目の適合度が所定の閾値以上であるかを判定する。
 ステップS166で、iステップ目の適合度が所定の閾値以上であると判定された場合、処理はステップS167に進み、適合度閾値判定部73は、学習データのステップ番号iの位置データは既存ノードに対応すると判定する。
 一方、ステップS166で、iステップ目の適合度が所定の閾値未満であると判定された場合、処理はステップS168に進み、適合度閾値判定部73は、学習データのステップ番号iの位置データは新規ノードに対応すると判定する。
 ステップS169において、適合度閾値判定部73は、全ての学習データについて既存ノードかまたは新規ノードを判定したかを判定する。
 ステップS169で、全ての学習データについて判定していないと判定された場合、処理はステップS170に進み、適合度閾値判定部73は、ステップ番号を1だけインクリメントして、処理はステップS166に戻る。
 一方、ステップS169で、全ての学習データについて判定したと判定された場合、処理はステップS171に進み、状態ノード割り当て部63の既存ノード割り当て部74は、既知経路の学習データに対して、既存の確率遷移モデルの状態ノードを割り当てる既存ノード割り当て処理を行う。
 次に、ステップS172において、状態ノード割り当て部63の新規ノード割り当て部75は、未知経路の学習データに対し、新規の確率遷移モデルの状態ノードを割り当てる新規ノード割り当て処理を行う。
 ステップS171とS172の処理は並行して実行することができる。
 そして、ステップS173において、モデル再構成部64は、状態ノード割り当て部63からの対応ノード系列に基づいて、確率遷移モデルを再構成するモデル再構成処理を行う。
 ステップS174において、目的地リスト修正部65は、過去の移動履歴に新たな目的地が追加された場合、追加された目的地をモデル記憶部66に記憶されている目的地リストに追加して、処理を終了する。なお、追加の目的地がない場合には、ステップS174の処理は省略される。
[適合度算出処理のフロー]
 図25は、図24のステップS164で実行される適合度算出処理のフローチャートである。
 この処理では、初めに、ステップS181において、状態ノード割り当て部63は、学習データを構成する各位置データを識別するステップ番号iに1をセットする。
 そして、ステップS182において、状態ノード割り当て部63は、次式(4)により、ステップiにおける各状態の観測尤度を算出する。
Figure JPOXMLDOC01-appb-M000004
 式(4)の観測尤度は、中心値μiと分散値σi 2の正規分布を持つ状態ノードsiから、データxiが観測される尤度を表す。なお、Π{xd}は、d=1,2,3としたときのxdを乗算することを表し、d=1,2,3は、それぞれ、過去の移動経路の時刻、緯度、および経度を表す。
 ステップS183において、状態ノード割り当て部63は、次式(5)により、ステップiにおける各状態の状態確率を算出する。
Figure JPOXMLDOC01-appb-M000005
 式(5)において、δi(1)は、先頭ステップで状態siである確率を表す。また、δi(t)は、ステップtで、状態sjである確率を表す。式(5)のmax[aijδi(t-1)]は、状態sjに至る状態遷移のうち、ステップt-1での状態確率と、その場所からの遷移確率の積が最大となるものを選択することを意味している。なお、式(5)におけるZtは規格化パラメータであり、全ての状態siでのδi(t)の和である。
 式(5)によれば、状態ノード間の遷移で構成されるトポロジーを反映した状態履歴の推定を行うことができる。
 ステップS184において、状態ノード割り当て部63は、次式(6)により、ステップiにおける観測尤度の期待値を算出し、適合度とする。
Figure JPOXMLDOC01-appb-M000006
 式(6)は、時刻tでの状態sjの尤度P(xtj,sj)について、状態確率δj(t)を用いて期待値を算出したものである。
 ステップS185において、状態ノード割り当て部63は、ステップiが最終ステップであるかを判定する。
 ステップS185で、ステップiが最終ステップではないと判定された場合、処理はステップS186に進み、状態ノード割り当て部63は、ステップ番号iを1だけインクリメントして、処理はステップS182に戻る。
 一方、ステップS185で、ステップiが最終ステップであると判定された場合、処理は図24に戻る。
[既存ノード割り当て処理のフロー]
 次に、図26のフローチャートを参照して、図24のステップS171で実行される既存ノード割り当て処理について説明する。
 図26のステップS201乃至S203は、上述した図25のステップS181乃至S183と同様であるので、その説明は省略する。ただし、既存ノード割り当て処理でのステップ番号は、既存ノードと判定された学習データに対するステップ番号となる。
 ステップS204において、状態ノード割り当て部63は、ステップiにおける各状態に至る親ノードを記憶する。より具体的には、状態ノード割り当て部63は、次式(7)で計算される状態ノードの番号を求め、記憶する。
Figure JPOXMLDOC01-appb-M000007
 式(7)のΨj(t)は、ステップt-1での状態確率と、その場所からの遷移確率の積が最大となる状態ノードのノード番号となる。argmaxi[x]は、添え字iを、1からNまでの範囲の整数に変えて得られるxを最大にする添え字iを表す。
 ステップS205において、状態ノード割り当て部63は、ステップiが最終ステップであるかを判定する。
 ステップS205で、ステップiが最終ステップではないと判定された場合、処理はステップS206に進み、状態ノード割り当て部63は、ステップ番号iを1だけインクリメントして、処理はステップS202に戻る。
 一方、ステップS205で、ステップiが最終ステップであると判定された場合、処理はステップS207に進み、状態ノード割り当て部63は、最終ステップで状態確率を最大にする状態ノードを選択する。
 より具体的には、ステップS207の処理は、最終ステップを例えば、t=Tとすると、S(T)=argmaxi[δi(T)]とする処理であり、最終的に最も状態確率の高い状態ノードを、既知経路の学習データの最終ステップに対応させる処理である。
 ステップS208において、状態ノード割り当て部63は、ステップS207で選択された状態ノードから、ステップS204で記憶しておいた親ノードを逆向きに探索する。
 ステップS208の処理は、S(t-1)=Ψ(S(t))とする処理である。これにより、移動履歴のtステップ目に対応する状態ノードS(t)を順次求めることができ、最終的に、既知の移動履歴に対応する状態ノード系列が得られる。
 ステップS209において、状態ノード割り当て部63は、ステップS208で得られた状態ノード系列を、学習データである既知の移動履歴と対応付けて内部に記憶し、図24に戻る。
[新規ノード割り当て処理のフロー]
 次に、図27のフローチャートを参照して、図24のステップS172で実行される新規ノード割り当て処理について説明する。
 初めに、ステップS221において、状態ノード割り当て部63は、学習データである未知の移動履歴をHMM(確率遷移モデル)で学習する。ステップS221では、未知の移動履歴の1ステップごとに新しい状態ノードが割り当てられ、未知の移動履歴に対応するHMMのパラメータが求められる。
 ステップS222において、状態ノード割り当て部63は、学習により得られた状態ノードに、既存のHMM(確率遷移モデル)に付加する状態ノードとしての新たなノード番号を割り当てる。
 ステップS223において、状態ノード割り当て部63は、学習データである未知の移動履歴と、対応する新たなノード番号の状態ノード系列を内部に記憶し、図24に戻る。
[モデル再構成処理のフロー]
 次に、図28のフローチャートを参照して、図24のステップS173で実行されるモデル再構成処理について説明する。
 初めに、ステップS241において、モデル再構成部64は、遷移頻度テーブルを作成する。
 図29は、ステップS241で作成される遷移頻度テーブルの例を示している。遷移頻度テーブルは、図18に示したHMMの状態遷移確率aijが、遷移頻度とされたものである。
 ステップS242において、モデル再構成部64は、遷移頻度テーブルの遷移頻度から、次式(8)により、状態頻度テーブルを生成する。
Figure JPOXMLDOC01-appb-M000008
 式(8)は、状態siの状態頻度fiが状態siの遷移頻度fijの総和により得られることを表している。
 ステップS243において、モデル再構成部64は、状態頻度テーブルを用いて、次式(9)により、状態頻度の中心値Miと分散Σi 2とからなる統計量テーブルを生成する。
   Mi=μi・fi   ,Σi 2=(σi 2+μi)・fi  ・・・・・(9)
 ステップS244において、モデル再構成部64は、図26の既存ノード割り当て処理、および、図27の新規ノード割り当て処理により生成されて記憶されている、学習データに対応する状態ノード系列を用いて、遷移頻度テーブルを更新する。ここで、更新後の遷移頻度fijは遷移頻度fij’で表し、更新後の状態頻度テーブルはfi’で表される。
 ステップS245において、モデル再構成部64は、図26の既存ノード割り当て処理、および、図27の新規ノード割り当て処理で出現する状態ノードに対応する位置データと、その二乗値を、状態頻度の中心値Miと分散Σi 2に加算することにより、式(9)の統計量テーブルを更新する。更新後の統計量テーブルの状態頻度の中心値Miと分散Σi 2は、Mi’,Σi 2’で表される。
 ステップS246において、モデル再構成部64は、次式(10)により、図26の既存ノード割り当て処理、および、図27の新規ノード割り当て処理で出現する状態ノードの中心値μiと分散値σi 2を、μi’とσi 2’に更新して、図24に戻る。
   μi’=Mi’/fi’ ,σi 2’=Σi 2’/fi’-μi2)・  ・・・・・(10)
 以上、図24乃至図28を参照して説明した学習処理により、新たに入力された移動履歴に基づいて、既存の学習モデルを修正(更新)、拡張することができる。なお、既存モデルが存在しない最初の学習処理は、入力された移動履歴が全て未知経路と判定されて確率遷移モデルが学習される処理であり、上述した処理で対応可能である。
[予測処理のフローチャート]
 次に、図30のフローチャートを参照して、第2の実施の形態における予測処理について説明する。
 初めに、ステップS301において、類似ノード検索部14Bは、事前の学習により得られた確率遷移モデル(のパラメータ)と目的地リストを確率遷移モデルDB13Bから取得する。
 ステップS302において、類似ノード検索部14Bは、バッファ12から、直近の移動履歴を取得する。
 ステップS303において、類似ノード検索部14Bは、直近の移動履歴に対応する状態ノードを探索して、選択する。具体的には、類似ノード検索部14Bは、上述した学習処理で説明した適合度算出処理(図24のステップS164、図25)を行い、既存ノード割り当て処理(図24のステップS171、図26)を行うことにより、直近の移動履歴に対応する状態ノードを探索して、選択する。
 ステップS304において、適合判定部15Bは、類似ノード検索部14Bにより選択された状態ノードの適合度が所定の閾値以上であるかを判定する。
 ステップS304で、選択された状態ノードの適合度が所定の閾値未満であると判定された場合、予測処理は終了する。
 一方、ステップS304で、選択された状態ノードの適合度が所定の閾値以上であると判定された場合、処理はステップS305に進む。ステップS305では、予測ノード探索部16Bは、選択された状態ノードから遷移可能な目的地ノードをツリー探索することにより目的地を探索する。
 ステップS306において、予測ノード探索部16Bは、探索された目的地を、目的地ごとにリストアップする。
 ステップS307において、予測値算出部18Bは、リストアップされた目的地ごとに、目的地への経路リストおよび代表経路を算出する。
 目的地iへの代表経路riは、例えば、次式(11)により求めることができる
Figure JPOXMLDOC01-appb-M000009
 式(11)において、Tjは、j番目の経路リストの長さ(ステップ数)を表し、a(sk,sk+1)は、状態ノードskから状態ノードsk+1への遷移確率を表す。したがって、sj kは、j番目の経路リストのk番目の状態ノードを表し、sj は現在地ノードであり、sj Tjはj番目の経路リストの目的地ノードを表す。
 したがって、式(11)は、目的地iについては最も生起確率の高いr番目の経路riを代表経路とし、代表経路riは、{s1,s2,s3,・・・,sTr}の状態ノード系列を有することを意味している。代表経路の選択方法は、これ以外の方法を用いてもよい。
 ステップS308において、予測値算出部18Bは、各目的地への到達確率を算出する。
 目的地iへの到達確率piは、例えば、次式(12)により求めることができる
Figure JPOXMLDOC01-appb-M000010
 式(12)において、Niは、現在地ノードから、目的地iに到達する経路リストの本数を表す。
 ステップS309において、各目的地への所要時間を算出して出力し、処理を終了する。
 目的地iへの代表経路riの所要時間tiは、例えば、次式(13)により求めることができる
Figure JPOXMLDOC01-appb-M000011
 式(13)において、skは、代表経路rの状態ノード系列のk番目の状態ノードであり、Tは、代表経路の経路リストの長さ(ステップ数)であり、t=1が現在地ノードで、t=Tが目的地ノードである。
 また、式(13)において、ps1(1)は、ステップ1に状態ノードsにいる確率を表す。psk(t)は、ステップtに状態ノードskにいる確率を表し、一つ前のステップにおいて状態ノードskにいて自己遷移した確率と、一つ前のステップにおいて状態ノードsk-1にいて遷移してきた確率の和である。
 さらに、式(13)の所要時間tiは、時刻t-1に目的地ノードsTの一つ手前の状態ノードsT-1にいて、時刻tで初めて目的地ノードsTに移るときのtの期待値である。
[絶対の出発予測時刻を用いた第2のセンサ制御処理のフローチャート]
 次に、図31のフローチャートを参照して、第2の実施の形態における、絶対の出発予測時刻を用いた第2のセンサ制御処理について説明する。
 図31のステップS321乃至S324は、図30のステップS301乃至S304と同様であるので、その説明は省略する。
 ステップS324で、選択された状態ノードの適合度が所定の閾値未満であると判定された場合、処理はステップS325に進み、センサ制御部19は、位置センサ部11を、データ取得間隔が短くなるように制御して、処理を終了する。
 一方、ステップS324で、選択された状態ノードの適合度が所定の閾値以上であると判定された場合、処理はステップS326に進む。
 ステップS326において、出発時刻予測部17Bは、選択された状態ノードの自己遷移以外の1以上の遷移先の状態ノードの時刻の中心値の平均(平均時刻)を、絶対の出発時刻として算出する。算出された絶対の出発時刻は、センサ制御部19に供給される。
 ステップS327において、センサ制御部19は、出発時刻予測部17Bから供給された絶対の出発時刻と、現在時刻との差分を算出する。
 ステップS328において、センサ制御部19は、算出された差分が所定の閾値(出発時刻閾値)より大であるかを判定する。
 ステップS328で、算出された差分が出発時刻閾値以下であると判定された場合、処理はステップS329に進み、センサ制御部19は、データ取得間隔が短くなるように制御して、処理を終了する。
 一方、ステップS328で、算出された差分が出発時刻閾値より大であると判定された場合、処理はステップS330に進み、センサ制御部19は、データ取得間隔が長くなるように制御して、処理を終了する。
 第2の実施の形態における第1のセンサ制御処理は、上述したステップS326乃至S329を省略した処理となる。
[相対の出発予測時刻を用いた第2のセンサ制御処理のフローチャート]
 次に、図32のフローチャートを参照して、第2の実施の形態における、相対の出発予測時刻を用いた第2のセンサ制御処理について説明する。
 図32の相対の出発予測時刻を用いた第2のセンサ制御処理は、図31の絶対の出発予測時刻を用いた第2のセンサ制御処理と比較すると、図31のステップS326乃至S328に対応するステップS346およびS347が異なるのみである。従って、図32では、ステップS346およびS347の処理のみ説明し、それ以外の説明は省略する。
 ステップS346において、出発時刻予測部17Bは、選択された状態ノードの自己遷移確率から、相対の出発時刻(予測滞在時間)を算出する。すなわち、選択された状態ノードの自己遷移確率を用いた式(2)に、単位ステップの時間を乗算することにより、予測滞在時間が求められ、センサ制御部19に供給される。
 ステップS347において、出発時刻予測部17Bは、算出された予測滞在時間が所定の閾値(滞在時間閾値)より大であるかを判定する。
 ステップS347で、算出された予測滞在時間が滞在時間閾値以下であると判定された場合、処理はステップS348に進む。
 一方、ステップS347で、算出された予測滞在時間が滞在時間閾値より大であると判定された場合、処理はステップS349に進む。
 ステップS348またはS349において、所定のデータ取得間隔がセンサ制御部19に設定されて、処理は終了する。
 以上のように、絶対の出発予測時刻を用いた第2のセンサ制御処理、または、相対の出発予測時刻を用いた第2のセンサ制御処理が行われるが、両者の処理結果を組み合わせた結果に基づいて、最終的にデータ取得間隔を決定してもよい。
[データ修正処理のフローチャート]
 次に、図33のフローチャートを参照して、第2の実施の形態における、データ修正処理について説明する。
 図33のステップS361乃至S364は、図30のステップS301乃至S304と同様であるので、その説明は省略する。
 ステップS365において、モデル用データ修正部20Bは、直近の移動履歴の各ステップに対応する各状態ノードの確率δj(t)を取得する。
 ステップS366において、モデル用データ修正部20Bは、式(3)により、直近の移動履歴に対応する理想系列を生成する。すなわち、モデル用データ修正部20Bは、直近の移動履歴の各ステップに対応する各状態ノードの中心値に、状態ノードの確率δj(t)を重み付け加算することにより、理想系列を生成する。
 ステップS367において、モデル用データ修正部20Bは、理想系列と直近の移動履歴の平均を算出することで、修正後の直近の移動履歴を生成して、処理を終了する。
 以上のように、予測装置1の第2の実施の形態では、確率遷移モデルDB13Bに記憶されている確率遷移モデルを用いて、予測処理、センサ制御処理、およびデータ修正処理を行うことができる。
<4.第3実施の形態>
[第3実施の形態の予測装置1の構成例]
 上述した例では、予測装置1が、過去履歴DB13の検索用データとして経路ログか、または、確率遷移モデルのいずれか一方を用いて、予測処理、センサ制御処理、およびデータ修正処理を行う例について説明した。
 しかしながら、予測装置1は、過去履歴DB13の検索用データとして、経路ログ、および、確率遷移モデルの両方を有し、選択的に実行するようにしてもよい。
 図34は、そのような予測装置1の構成例を示すブロック図である。すなわち、図34は、経路ログ、および、確率遷移モデルの両方を有し、それらを選択的に実行する第3の実施の形態の予測装置1の構成例を示している。
 過去履歴DB13は、第1の実施の形態の経路ログDB13Aと第2の実施の形態の確率遷移モデルDB13Bを有する。
 類似検索部14は、第1の実施の形態の類似経路探索部14Aと第2の実施の形態の類似ノード探索部14Bを有する。
 適合判定部15は、第1の実施の形態の適合判定部15Aと第2の実施の形態の適合判定部15Bを有する。
 予測経路抽出部16は、第1の実施の形態の予測経路ログ抽出部16Aと第2の実施の形態の予測ノード探索部16Bを有する。
 出発時刻予測部17、第1の実施の形態の出発時刻予測部17Aと第2の実施の形態の出発時刻予測部17Bを有する。
 DB修正部20は、第1の実施の形態の検索ログ修正部20と第2の実施の形態のモデル用データ修正部20Bを有する。
 第3の実施の形態においては、例えば、経路ログ、または、確率遷移モデルのどちらを使用するかが、図示せぬ操作部でユーザにより選択される。経路ログを使用することが選択された場合には、第1の実施の形態として説明した処理が実行される。一方、確率遷移モデルを使用することが選択された場合には、第2の実施の形態として説明した処理が実行される。
<5.第4実施の形態>
[第4実施の形態の予測装置1の構成例]
 上述した実施の形態では、予測装置1が、位置センサ部11のデータ取得間隔を制御するセンサ制御機能と、直近の移動履歴を検索用データに基づいて修正するデータ修正機能の両方を有していた。
 しかしながら、予測装置1は、センサ制御機能、または、データ修正機能のいずれか一方のみを有するものでもよい。
 図35は、予測装置1の第4の実施の形態としての、センサ制御機能のみを有する予測装置1の構成例を示すブロック図である。
 図36は、予測装置1の第4の実施の形態としての、データ修正機能のみを有する予測装置1の構成例を示すブロック図である。
 第4の実施の形態の予測装置1の処理(動作)については、上述した説明と重複するので省略する。
[コンピュータの構成例]
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図37は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 コンピュータにおいて、CPU(Central Processing Unit)101,ROM(Read Only Memory)102,RAM(Random Access Memory)103は、バス104により相互に接続されている。
 バス104には、さらに、入出力インタフェース105が接続されている。入出力インタフェース105には、入力部106、出力部107、記憶部108、通信部109、及びドライブ110が接続されている。
 入力部106は、キーボード、マウス、マイクロホンなどよりなる。出力部107は、ディスプレイ、スピーカなどよりなる。記憶部108は、ハードディスクや不揮発性のメモリなどよりなる。通信部109は、ネットワークインタフェースなどよりなる。ドライブ110は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブル記録媒体111を駆動する。
 以上のように構成されるコンピュータでは、CPU101が、例えば、記憶部108に記憶されているプログラムを、入出力インタフェース105及びバス104を介して、RAM103にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータでは、プログラムは、リムーバブル記録媒体111をドライブ110に装着することにより、入出力インタフェース105を介して、記憶部108にインストールすることができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して、通信部109で受信し、記憶部108にインストールすることができる。その他、プログラムは、ROM102や記憶部108に、あらかじめインストールしておくことができる。
 なお、本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる場合はもちろん、必ずしも時系列的に処理されなくとも、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで実行されてもよい。
 上述した実施の形態において、各種の条件を判定するための閾値は、それぞれ適切な値を適宜設定することができる。
 本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 なお、本技術は以下のような構成も取ることができる。
(1)
 時系列の位置データでなる直近の移動履歴を取得する位置センサ部と、
 検索用データを記憶する過去履歴DBと、
 前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索する類似検索部と、
 前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、
 前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部と
 を備える情報処理装置。
(2)
 前記センサ制御部は、前記適合度が前記所定の閾値以上である場合に、前記位置データの取得間隔が、前記所定の閾値未満である場合よりも長くなるように制御する
 前記(1)に記載の情報処理装置。
(3)
 現在の位置を離れる時刻である出発時刻を予測する出発時刻予測部をさらに備え、
 前記センサ制御部は、前記適合度が前記所定の閾値以上であり、かつ、前記出発時刻予測部で予測された出発予測時刻が所定時間より後である場合に、前記位置データの取得間隔が、前記所定の閾値未満である場合よりも長くなるように制御する
 前記(1)または(2)に記載の情報処理装置。
(4)
 前記出発時刻予測部は、絶対時刻または相対時刻のいずれかで前記出発時刻を予測する 前記(3)に記載の情報処理装置。
(5)
 前記過去履歴DBは、過去の移動履歴を前記検索用データとして記憶し、
 前記類似検索部は、前記適合度として、前記過去の移動履歴と前記直近の移動履歴との距離を用いて、前記直近の移動履歴と類似するものを検索する
 前記(1)ないし(4)のいずれかに記載の情報処理装置。
(6)
 前記過去履歴DBは、過去の移動履歴を確率遷移モデルで学習したときのパラメータを前記検索用データとして記憶し、
 前記類似検索部は、前記適合度として、前記直近の移動履歴に対して算出される前記確率遷移モデルの尤度を用いて、前記直近の移動履歴と類似するものを検索する
 前記(1)ないし(5)のいずれかに記載の情報処理装置。
(7)
 検索用データを記憶する過去履歴DBを備える情報処理装置が、
 時系列の位置データでなる直近の移動履歴を取得し、
 前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索し、
 検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定し、
 判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御する
 ステップを含む情報処理方法。
(8)
 コンピュータを、
 過去履歴DBに記憶されている検索用データのなかから、位置センサ部で取得された、時系列の位置データでなる直近の移動履歴と類似する過去の経路を検索する類似検索部と、
 前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、
 前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部
 として機能させるためのプログラム。
 1 予測装置, 11 位置センサ部, 13 過去履歴DB, 14 類似検索部, 15 適合判定部, 16 予測経路抽出部, 17 出発時刻予測部, 18 予測値算出部, 19 センサ制御部, 20 DB修正部

Claims (8)

  1.  時系列の位置データでなる直近の移動履歴を取得する位置センサ部と、
     検索用データを記憶する過去履歴DBと、
     前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索する類似検索部と、
     前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、
     前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部と
     を備える情報処理装置。
  2.  前記センサ制御部は、前記適合度が前記所定の閾値以上である場合に、前記位置データの取得間隔が、前記所定の閾値未満である場合よりも長くなるように制御する
     請求項1に記載の情報処理装置。
  3.  現在の位置を離れる時刻である出発時刻を予測する出発時刻予測部をさらに備え、
     前記センサ制御部は、前記適合度が前記所定の閾値以上であり、かつ、前記出発時刻予測部で予測された出発予測時刻が所定時間より後である場合に、前記位置データの取得間隔が、前記所定の閾値未満である場合よりも長くなるように制御する
     請求項1に記載の情報処理装置。
  4.  前記出発時刻予測部は、絶対時刻または相対時刻のいずれかで前記出発時刻を予測する
     請求項3に記載の情報処理装置。
  5.  前記過去履歴DBは、過去の移動履歴を前記検索用データとして記憶し、
     前記類似検索部は、前記適合度として、前記過去の移動履歴と前記直近の移動履歴との距離を用いて、前記直近の移動履歴と類似するものを検索する
     請求項1に記載の情報処理装置。
  6.  前記過去履歴DBは、過去の移動履歴を確率遷移モデルで学習したときのパラメータを前記検索用データとして記憶し、
     前記類似検索部は、前記適合度として、前記直近の移動履歴に対して算出される前記確率遷移モデルの尤度を用いて、前記直近の移動履歴と類似するものを検索する
     請求項1に記載の情報処理装置。
  7.  検索用データを記憶する過去履歴DBを備える情報処理装置が、
     時系列の位置データでなる直近の移動履歴を取得し、
     前記検索用データのなかから、前記直近の移動履歴と類似する過去の経路を検索し、
     検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定し、
     判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御する
     ステップを含む情報処理方法。
  8.  コンピュータを、
     過去履歴DBに記憶されている検索用データのなかから、位置センサ部で取得された、時系列の位置データでなる直近の移動履歴と類似する過去の経路を検索する類似検索部と、
     前記類似検索部で検索された前記過去の経路と、前記直近の移動履歴との適合度が所定の閾値以上であるかを判定する適合判定部と、
     前記適合判定部の判定結果に応じて、前記位置センサ部の前記位置データの取得間隔を制御するセンサ制御部
     として機能させるためのプログラム。
PCT/JP2012/056811 2011-03-25 2012-03-16 情報処理装置、情報処理方法、およびプログラム WO2012132950A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP12764157.9A EP2690401B1 (en) 2011-03-25 2012-03-16 Information processing device, information processing method, and program
CN2012800142069A CN103443584A (zh) 2011-03-25 2012-03-16 信息处理设备、信息处理方法和程序
US14/005,648 US9285235B2 (en) 2011-03-25 2012-03-16 Information processing device, information processing method, and program

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011-067137 2011-03-25
JP2011067136A JP5845604B2 (ja) 2011-03-25 2011-03-25 情報処理装置、情報処理方法、およびプログラム
JP2011-067136 2011-03-25
JP2011067137A JP5664398B2 (ja) 2011-03-25 2011-03-25 情報処理装置、情報処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
WO2012132950A1 true WO2012132950A1 (ja) 2012-10-04

Family

ID=46930683

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/056811 WO2012132950A1 (ja) 2011-03-25 2012-03-16 情報処理装置、情報処理方法、およびプログラム

Country Status (4)

Country Link
US (1) US9285235B2 (ja)
EP (1) EP2690401B1 (ja)
CN (1) CN103443584A (ja)
WO (1) WO2012132950A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014194083A1 (en) * 2013-05-30 2014-12-04 Aol Inc. Systems and methods for providing mobile mapping services including trip prediction and route recommendation
JP2016119047A (ja) * 2015-06-05 2016-06-30 ヤフー株式会社 予測装置、予測方法及び予測プログラム
EP3070617A4 (en) * 2013-11-13 2016-10-05 Agoop Corp DEVICE AND METHOD FOR ATTRIBUTE DETERMINATION, COMMUNICATION TERMINAL AND PROGRAM

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9097548B2 (en) * 2013-01-07 2015-08-04 Televav, Inc. Content delivery system with natural language mechanism and method of operation thereof
US9534919B2 (en) 2014-07-08 2017-01-03 Honda Motor Co., Ltd. Method and apparatus for presenting a travel metric
DE102015213748B4 (de) * 2015-07-21 2017-07-06 Preh Car Connect Gmbh Verfahren zum Bestimmen einer voraussichtlichen Route mittels eines Navigationssystems
CN105354221A (zh) * 2015-09-30 2016-02-24 百度在线网络技术(北京)有限公司 路径查询方法及装置
CN105372682B (zh) * 2015-10-27 2018-01-23 成都芯软科技发展有限公司 微功耗gps信号处理方法
JP6811578B2 (ja) * 2015-11-16 2021-01-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 移動情報提供方法、移動情報提供装置、及び移動情報提供プログラム
CN106885572B (zh) * 2015-12-15 2019-06-21 中国电信股份有限公司 利用时间序列预测的辅助定位方法和系统
WO2017124560A1 (zh) * 2016-01-24 2017-07-27 邓娟 收集路线推荐技术的数据的方法以及路线系统
WO2017124562A1 (zh) * 2016-01-24 2017-07-27 邓娟 根据定位服务自动推荐路线的方法以及路线系统
CN105679037B (zh) * 2016-03-29 2019-03-08 招商局重庆交通科研设计院有限公司 一种基于用户出行习惯的动态路径规划方法
CN108240817A (zh) * 2016-12-27 2018-07-03 上海擎感智能科技有限公司 电子导航方法及装置
CN107270923A (zh) * 2017-06-16 2017-10-20 广东欧珀移动通信有限公司 一种路线推送的方法、终端及存储介质
CN107192399B (zh) * 2017-06-30 2020-02-18 Oppo广东移动通信有限公司 导航方法、装置、存储介质及终端
CN110785626B (zh) * 2017-06-30 2023-05-30 Oppo广东移动通信有限公司 出行方式推荐方法、装置、存储介质及终端
JP6890069B2 (ja) * 2017-08-31 2021-06-18 株式会社東芝 情報処理装置、情報処理方法及びコンピュータプログラム
CN107943861A (zh) * 2017-11-09 2018-04-20 北京众荟信息技术股份有限公司 一种基于时间序列的缺失数据补充方法与系统
US11493355B2 (en) * 2019-05-14 2022-11-08 Bayerische Motoren Werke Aktiengesellschaft Adaptive live trip prediction solution
CN110309974B (zh) * 2019-06-28 2022-08-09 江苏满运软件科技有限公司 物流运输目的地预测方法、装置、电子设备、存储介质
CN111078760B (zh) * 2019-12-20 2023-08-08 贵阳货车帮科技有限公司 货源搜索方法、装置、设备及存储介质
US11639856B2 (en) * 2020-05-11 2023-05-02 Toyota Motor Engineering & Manufacturing North America, Inc. Infrastructure planning tool

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155167A (ja) * 1998-11-19 2000-06-06 Mitsubishi Electric Corp 経路予測装置
JP2005128808A (ja) * 2003-10-24 2005-05-19 Mitsubishi Electric Corp 予測装置
JP2006166421A (ja) * 2004-11-09 2006-06-22 Matsushita Electric Ind Co Ltd 位置情報検出装置および位置情報検出方法
JP2009085798A (ja) * 2007-09-28 2009-04-23 Brother Ind Ltd 位置情報取得システム、同システムにおける位置情報の取得契機決定方法、同システムにおける携帯端末、サーバ装置、携帯端末及びサーバ装置のプログラム
JP2010145115A (ja) * 2008-12-16 2010-07-01 Nec Corp 目的地予測システム、目的地予測方法及びプログラム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6202024B1 (en) * 1998-03-23 2001-03-13 Kabushikikaisha Equos Research Communicatory navigation system
DE10005780A1 (de) * 2000-02-10 2001-08-16 Bosch Gmbh Robert Verfahren zur Routenplanung in einem Navigationssystem
JP4300767B2 (ja) * 2002-08-05 2009-07-22 ソニー株式会社 ガイドシステム、コンテンツサーバ、携帯装置、情報処理方法、情報処理プログラム、及び記憶媒体
JP2004144531A (ja) * 2002-10-23 2004-05-20 Hitachi Ltd 移動体向け情報提供システムおよび情報提供装置
JP4323984B2 (ja) * 2004-03-10 2009-09-02 株式会社日立製作所 車載コンテンツ提供装置
GB0420095D0 (en) * 2004-09-10 2004-10-13 Cotares Ltd Apparatus for and method of predicting a future behaviour of an object
CN101040554B (zh) * 2004-10-14 2010-05-05 松下电器产业株式会社 移动目标预测装置和移动目标预测方法
JP3987877B2 (ja) * 2005-04-08 2007-10-10 松下電器産業株式会社 地図情報更新装置および地図情報更新方法
JPWO2009125812A1 (ja) * 2008-04-11 2011-08-04 日本電気株式会社 移動履歴参照システム、移動情報登録サーバ、情報収集サーバ、移動履歴参照方法およびプログラム
JP4733165B2 (ja) * 2008-06-30 2011-07-27 株式会社デンソー 車両ナビゲーションシステム
US9846049B2 (en) * 2008-07-09 2017-12-19 Microsoft Technology Licensing, Llc Route prediction
US8271497B2 (en) * 2009-12-03 2012-09-18 Sony Computer Entertainment Inc. Information processing apparatus and information processing method outputting information on movement of person
JP5445085B2 (ja) * 2009-12-04 2014-03-19 ソニー株式会社 情報処理装置、およびプログラム
US8392116B2 (en) * 2010-03-24 2013-03-05 Sap Ag Navigation device and method for predicting the destination of a trip
JP2011217058A (ja) * 2010-03-31 2011-10-27 Sony Corp 通信制御装置、通信制御方法、プログラム、端末装置および無線通信システム
JP2012008659A (ja) * 2010-06-22 2012-01-12 Sony Corp データ処理装置、データ処理方法、およびプログラム
US9163952B2 (en) * 2011-04-15 2015-10-20 Microsoft Technology Licensing, Llc Suggestive mapping
US9200918B2 (en) * 2012-03-09 2015-12-01 Apple Inc. Intelligent destination recommendations based on historical data
US8781716B1 (en) * 2012-09-18 2014-07-15 Amazon Technologies, Inc. Predictive travel notifications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155167A (ja) * 1998-11-19 2000-06-06 Mitsubishi Electric Corp 経路予測装置
JP2005128808A (ja) * 2003-10-24 2005-05-19 Mitsubishi Electric Corp 予測装置
JP2006166421A (ja) * 2004-11-09 2006-06-22 Matsushita Electric Ind Co Ltd 位置情報検出装置および位置情報検出方法
JP2009085798A (ja) * 2007-09-28 2009-04-23 Brother Ind Ltd 位置情報取得システム、同システムにおける位置情報の取得契機決定方法、同システムにおける携帯端末、サーバ装置、携帯端末及びサーバ装置のプログラム
JP2010145115A (ja) * 2008-12-16 2010-07-01 Nec Corp 目的地予測システム、目的地予測方法及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014194083A1 (en) * 2013-05-30 2014-12-04 Aol Inc. Systems and methods for providing mobile mapping services including trip prediction and route recommendation
US9803990B2 (en) 2013-05-30 2017-10-31 Oath (Americas) Inc. Systems and methods for providing mobile mapping services including trip prediction and route recommendation
US11073404B2 (en) 2013-05-30 2021-07-27 Verizon Media Inc. Systems and methods for providing mobile mapping services including trip prediction and route recommendation
EP3070617A4 (en) * 2013-11-13 2016-10-05 Agoop Corp DEVICE AND METHOD FOR ATTRIBUTE DETERMINATION, COMMUNICATION TERMINAL AND PROGRAM
JP2016119047A (ja) * 2015-06-05 2016-06-30 ヤフー株式会社 予測装置、予測方法及び予測プログラム

Also Published As

Publication number Publication date
EP2690401A1 (en) 2014-01-29
EP2690401A4 (en) 2014-09-17
US9285235B2 (en) 2016-03-15
US20140012495A1 (en) 2014-01-09
EP2690401B1 (en) 2017-11-29
CN103443584A (zh) 2013-12-11

Similar Documents

Publication Publication Date Title
WO2012132950A1 (ja) 情報処理装置、情報処理方法、およびプログラム
US11351681B2 (en) Method and apparatus for charging robot
US20110313957A1 (en) Data processing apparatus, data processing method and program
JP5495014B2 (ja) データ処理装置、データ処理方法、およびプログラム
WO2012066951A1 (ja) データ処理装置、データ処理方法、およびプログラム
US20110137833A1 (en) Data processing apparatus, data processing method and program
US20110137831A1 (en) Learning apparatus, learning method and program
JP2011252844A (ja) データ処理装置、データ処理方法、およびプログラム
US20160150380A1 (en) Automated wlan radio map construction method and system
US20130262013A1 (en) Information processing device, information processing method, and program
JP2011118777A (ja) 学習装置および学習方法、予測装置および予測方法、並びにプログラム
JP5664398B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2012008771A (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
JP2011059924A5 (ja)
JP5845604B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US20110010176A1 (en) Hmm learning device and method, program, and recording medium
Szwed et al. An incremental map-matching algorithm based on hidden markov model
JP2013205171A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2021135473A (ja) 捜索支援システム、捜索支援方法
Lawrance et al. Fast marching adaptive sampling
EP4266004A1 (en) User trajectory positioning method, electronic device and computer storage medium
Panahandeh Driver route and destination prediction
CN115465125A (zh) 一种基于无线充电技术的auv集群水下能量救援方法
Wang et al. SRM: An efficient framework for autonomous robotic exploration in indoor environments
Priyadarshini et al. Depleting Commuter Traffic: Significant Solution With Machine Learning Algorithms

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12764157

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2012764157

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14005648

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE