WO2015177858A1 - トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム - Google Patents

トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム Download PDF

Info

Publication number
WO2015177858A1
WO2015177858A1 PCT/JP2014/063320 JP2014063320W WO2015177858A1 WO 2015177858 A1 WO2015177858 A1 WO 2015177858A1 JP 2014063320 W JP2014063320 W JP 2014063320W WO 2015177858 A1 WO2015177858 A1 WO 2015177858A1
Authority
WO
WIPO (PCT)
Prior art keywords
trip
attribute
data
estimation
attributes
Prior art date
Application number
PCT/JP2014/063320
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
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2014/063320 priority Critical patent/WO2015177858A1/ja
Publication of WO2015177858A1 publication Critical patent/WO2015177858A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Definitions

  • the present invention relates to a trip attribute estimation system, a trip attribute estimation method, a trip attribute estimation program, and a traffic behavior investigation system, for example, for estimating trip attribute information of a terminal holder using sensor data collected by a mobile terminal.
  • a trip attribute estimation system for example, for estimating trip attribute information of a terminal holder using sensor data collected by a mobile terminal.
  • Patent Document 1 discloses a system for determining a moving means of a terminal in consideration of data obtained from a sensor such as an acceleration sensor and factors that affect the value of the sensor such as road conditions. More specifically, a method for improving accuracy of moving means discrimination by correcting with reference to a temporally determined discrimination result (a discrimination result in the same attribute of moving means), and a certain terminal Describes a method of improving the accuracy of moving means discrimination by referring to and correcting the discrimination results at a plurality of terminals existing around the terminal.
  • the discrimination result at a predetermined time interval is car ⁇ car ⁇ car ⁇ bike ⁇ car ⁇ car ..., it is highly likely that the discrimination result of the motorcycle on the way is incorrect, and this is corrected to the car. That's it.
  • Patent Document 2 discloses an information service providing system that can estimate not only the position of a user and the vehicle used for movement, but also the purpose of the user's action. More specifically, movement information that is information including at least one of information on the position, movement speed, acceleration, movement direction, and movement time zone of the target is collected, and the target is moving based on the collected information. It is determined whether or not. If it is determined that the target is moving, the target moving means is determined, and the purpose of the target action is estimated based on the determined target moving means. Further, information is selected according to the estimated purpose, and a service based on the selected information is provided to the target.
  • movement information that is information including at least one of information on the position, movement speed, acceleration, movement direction, and movement time zone of the target is collected, and the target is moving based on the collected information. It is determined whether or not. If it is determined that the target is moving, the target moving means is determined, and the purpose of the target action is estimated based on the determined target moving means. Further, information is selected according to the estimated
  • Patent Document 1 the accuracy of the moving means determination is improved by referring to the determination results that are temporally continuous, and moreover, in a plurality of terminals existing around one terminal.
  • the accuracy of the moving means discrimination is improved by referring to the discrimination result and correcting.
  • Patent Document 1 considers only one type of movement-related attribute (hereinafter referred to as a trip attribute), and a correction method focusing on it is proposed.
  • the trip attribute can be corrected by a relatively simple method such as majority vote.
  • the estimation accuracy of the moving means is not high, there may be a case where the moving means can be estimated from the purpose if the movement purpose can be estimated with high accuracy.
  • the estimation accuracy of the moving means is not so high, if correction is made using a determination result that is continuous in time or a determination result at a terminal that exists in the vicinity, the result may be corrected to an incorrect result. . If the estimation result of the movement purpose is used, the identification result of the moving means can be corrected accurately, but the method described in Patent Document 1 cannot perform correction using other trip attribute information.
  • Patent Document 2 discloses estimating the purpose of movement using the discrimination result of the moving means, but does not describe correction considering the relationship between these trip attributes.
  • the estimation accuracy of the moving means is not good, when the moving purpose is estimated accurately by a method that does not depend on the moving means, if the moving purpose is estimated by the method described in Patent Document 2, an error will occur. Is more likely to occur. On the contrary, if the estimation result of the moving means can be corrected for the purpose of movement, more accurate estimation can be performed.
  • the present invention has been made in view of such circumstances, and provides a technique capable of estimating trip attributes.
  • the present invention refers to estimation results between different trip attributes while considering the relationship of a plurality of trip attributes such as a moving means, a purpose of movement, a departure and arrival point, and a movement route. It is proposed to correct the estimation result.
  • the computer estimates a plurality of trip attributes that define the characteristics of movement of the user holding the mobile terminal using the GPS data and acceleration sensor data acquired from the mobile terminal.
  • the computer calculates the relationship between the estimation result of the first trip attribute and the plurality of trip attributes.
  • the estimation result of the 2nd trip attribute different from the 1st trip attribute is amended using the relation information between trip attributes to define.
  • the trip attribute of the terminal holder can be estimated accurately and inexpensively.
  • FIG. 10 is a flowchart for explaining processing for automatically constructing a migration purpose-movement means related information storage DB. It is a figure which shows the structural example of the trip attribute estimation system 4400 with a stay determination threshold value automatic adjustment function by the 4th Embodiment of this invention. It is a flowchart for demonstrating the detail of the process (S1101) which searches the starting point of the next main trip, changing threshold value (theta) 2 for stay determination dynamically. It is a flow chart for explaining the details of processing (S1109) which judges whether the main trip is completed at time t i-1 while dynamically changing the threshold value ⁇ for stay judgment.
  • FIG. It is a figure which shows the structural example of the trip attribute estimation system 4700 with a clustering function classified by living action pattern by the 5th Embodiment of this invention. It is a flowchart for demonstrating the process of the living action pattern clustering part 4701.
  • FIG. It is a figure which shows the example of the data stored in living action pattern DB4702. It is a figure for demonstrating the example of the data stored in discrimination
  • the embodiment of the present invention may be implemented by software running on a general-purpose computer, or may be implemented by dedicated hardware or a combination of software and hardware.
  • each information of the present invention will be described in a “table” format.
  • the information does not necessarily have to be expressed in a data structure by a table, such as a data structure such as a list, a DB, a queue, or the like. It may be expressed as Therefore, “table”, “list”, “DB”, “queue”, etc. may be simply referred to as “information” to indicate that they do not depend on the data structure.
  • each process in the embodiment of the present invention will be described with each process “unit” such as the moving means estimation unit as a subject (operation subject).
  • each processing unit is configured by a program, and the program is executed by a processor to perform processing determined by using a storage device (memory) and a communication port (communication control device). The description may be based on (processor) as the subject.
  • the processing disclosed with the program as the subject may be processing performed by a computer such as a management server or an information processing apparatus. Part or all of the program may be realized by dedicated hardware, or may be modularized.
  • the present invention relates to a trip attribute estimation system that estimates trip attributes.
  • FIG. 1 is a block diagram illustrating a schematic configuration example of a trip attribute estimation system 100 according to the first embodiment.
  • the trip attribute estimation system 100 represents a GPS receiver 101, an acceleration sensor 102, a sensor data storage DB 103, a movement means estimation unit 104, a trip extraction unit 105, and an OD (Origin and Destination).
  • Estimation unit 106 route estimation unit 107, movement purpose estimation unit 108, correction unit 109, trip attribute related information storage DB 110, trip attribute estimation result storage DB 111, POI information storage DB 112, And a discrimination reference value storage DB 113.
  • the trip attribute estimation system 100 can be composed of, for example, a portable terminal for collecting sensor data having a GPS receiver or an acceleration sensor, and a computer that performs an estimation process.
  • the sensor data storage DB 103, the movement means estimation unit 104, the trip extraction unit 105, the OD estimation unit 106, the route estimation unit 107, the movement purpose estimation unit 108, the correction unit 109 It can be configured to have a DB 110 for storing information related to trip attributes, a DB 111 for storing trip attribute estimation results, a DB 112 for storing POI information, and a DB 113 for storing discrimination reference values.
  • it can also be comprised with one terminal which has a GPS receiver, an acceleration sensor, a calculating part, and a memory
  • the central processing unit 203 is a processor that executes a program stored in the storage device 204.
  • the storage device 204 includes a high-speed and volatile storage device (not shown) such as a DRAM (Dynamic Random Access Memory) and a large-capacity and nonvolatile storage device (not shown) such as a flash memory.
  • the volatile storage device stores an operating system (OS) and application programs.
  • OS operating system
  • the central processing unit 203 executes functions of the moving means estimating unit 104, trip extracting unit 105, OD estimating unit 106, route estimating unit 107, moving purpose estimating unit 108, and correcting unit 109 by executing the application program. The Details of this processing will be described later.
  • the nonvolatile storage device included in the storage device 204 stores a program executed by the central processing unit 203 and data used when the program is executed. That is, the program executed by the central processing unit 203 is read from the non-volatile storage device, loaded into the volatile storage device (DRAM), and executed by the central processing unit 203.
  • the communication interface 202 includes a wireless transceiver that transmits and receives signals to and from a wireless line (for example, a mobile phone line or a dedicated wireless line).
  • the input device 201 is a keyboard or a touch panel operated by a user.
  • the output device 205 is a display device (for example, a liquid crystal display panel) that displays information to the user.
  • the GPS receiver 101 receives a signal from a GPS satellite and outputs a time when the signal is received and position information (latitude and longitude) at that time. If possible, it is preferable that the moving speed of the terminal that can be calculated by measuring the effect of Doppler shift that the observed frequency differs depending on the relative speed between the radio wave generation source and the receiving device can be output at the same time.
  • the acceleration sensor 102 outputs a triaxial acceleration value and the time when the value was observed.
  • the measured values of these sensors are stored in the sensor data storage DB 103 in the storage device 204. At this time, in order to identify the data collected by which terminal, an ID unique to the terminal such as IMEI (International Mobile Equipment Identity) may be given.
  • IMEI International Mobile Equipment Identity
  • FIG. 3A shows an example of GPS data stored in the sensor data storage DB 103
  • FIG. 3B shows an example of acceleration sensor data (3-axis acceleration sensor: each showing the magnitude and direction of gravity). It is desirable that the time and date can be uniquely specified, such as Unix ⁇ Time (Unix is a registered trademark).
  • FIG. 4 is a diagram illustrating a hardware configuration example inside a computer when a computer that performs arithmetic processing is used separately from the terminal having the GPS receiver 101 and the acceleration sensor 102.
  • the central processing unit (processor) 402 executes a program stored in the main storage device 403.
  • the main storage device 404 is a high-speed and volatile storage device such as a DRAM and stores an operating system and application programs.
  • the central processing unit 402 executes the operating system, the basic function of the computer 400 is realized, and by executing the application program, the function of determining the moving means is realized.
  • the auxiliary storage device 405 is a large-capacity and nonvolatile storage device such as a magnetic storage device or a flash memory, and stores a program executed by the central processing unit 402 and data used when the program is executed. That is, the program executed by the central processing unit 402 is read from the auxiliary storage device 405, loaded into the main storage device 404, and executed by the central processing unit 402.
  • a communication interface 403 connects the computer 400 to a network and controls communication with other devices.
  • the input device 401 is a keyboard and a mouse, for example.
  • the output device 406 is a display device (for example, a liquid crystal display panel) for displaying a discrimination result or the like.
  • the measurement values obtained from the GPS receiver 101 and the acceleration sensor 102 may be transmitted to the computer 400 via the communication interface 202 and the communication interface 403, respectively.
  • the portable terminal 200 and the computer 400 may be connected to each other using, for example, a USB (Universal Serial ⁇ ⁇ Bus) cable and transmitted to the computer 400.
  • the computer 400 may read the data once written on an external storage medium such as a CD or a DVD.
  • the computer 400 may include an interface for transmitting / receiving data via the USB and an interface for reading a storage medium (CD-ROM, flash memory, etc.).
  • FIG. It is a flowchart for demonstrating the whole process of the trip attribute estimation process by embodiment of this invention. First, the overall flow of processing will be described with reference to FIG. 5, and detailed description of each step will be described later using another flowchart.
  • N represents the number of terminal IDs stored in the sensor data storage DB 103. Here, it is assumed that processing is sequentially performed for each terminal ID.
  • the central processing unit 203 or 402 (hereinafter also referred to as “processor”) reads only data corresponding to the terminal ID to be processed from the sensor data storage DB 103.
  • the moving means estimating unit 104 estimates the moving means of the corresponding terminal holder for each moving time, and assigns labels.
  • the trip extraction unit 105 extracts only the moving time zone from the continuous sensor data.
  • the OD estimation unit 105 estimates OD information for each extracted trip.
  • the route estimation unit 107 estimates a moving route.
  • the movement purpose estimation unit 108 estimates the movement purpose for each trip.
  • the correction unit corrects the estimation result of each trip attribute as necessary while referring to information stored in the trip attribute related information storage DB 110 and the POI information storage DB 112.
  • FIG. 6 is a flowchart for explaining the details of processing (S503) in which the moving means estimating unit 104 estimates moving means.
  • N represents the number of data of the acceleration sensor.
  • the processing is executed in order from the terminal with the terminal ID data to be processed arranged in chronological order.
  • the movement means estimation unit 104 determines whether or not the terminal holder is walking at time i. This determination is generally made when the terminal holder is walking, and the waveform of the acceleration sensor data rises and falls at a constant rhythm at a predetermined time before and after time i (that is, data of a predetermined time window width is used). Take advantage of becoming. Specifically, first, as a pre-process, a norm value is calculated from triaxial acceleration sensor data. Here, the norm value is an amount represented by Equation 1. Hereinafter, when it is described as acceleration sensor data, this norm value is indicated. Next, for example, reference is made to acceleration sensor data for 1 second before and after time i, and FFT (Fast Fourier Transform) is applied to these data. Then, of the data obtained by FFT, for example, the power of a section corresponding to 1 Hz to 3 Hz is calculated, and if this is equal to or greater than a predetermined threshold, it is determined that the walking is performed.
  • FFT Fast Fourier Transform
  • the movement means estimation unit 104 outputs a label representing “walking” for the i-th data.
  • the threshold for determining the walking may be stored in advance in the determination reference value storage DB 113.
  • walking is a movement with periodicity, and many people walk about two steps per second, so the data during walking uses the tendency that strong peaks appear in the frequency band around 2 Hz. This is the estimation method. For data immediately after the start of measurement or immediately before the end of measurement for which there is no data for 1 second before and after, it is preferable to use data for only the next 1 second and only for the previous 1 second respectively.
  • the moving means estimating unit 104 determines whether or not the terminal holder is stationary at time i. For this purpose, for example, with reference to acceleration sensor data for 1 second before and after time i, a variance value of acceleration sensor data in this section is calculated. If the variance value is equal to or less than a predetermined threshold value, it is determined that the camera is stationary.
  • the moving means estimation unit 104 outputs a label indicating “still” for the i-th data.
  • the threshold value for the stillness determination may be stored in advance in the determination reference value storage DB 113. This process is an estimation method that uses the feature that vibration occurs with movement during movement, whereas vibration hardly occurs at the terminal when stationary. For data immediately after the start of measurement and immediately before the end of measurement, for which there is no data for 1 second before and after, it is better to use data for only the next 1 second and only for the previous 1 second.
  • the moving means estimating unit 104 determines that the terminal holder has been in some vehicle at time i, and determines the type of the vehicle.
  • the moving speed can be used to determine the type of vehicle. That is, for example, GPS data existing for 10 seconds before and after time i is referred to, and the average moving speed of the terminal in the corresponding section is calculated from the GPS data.
  • the moving means estimation unit 104 can simply use the average value of the values.
  • the moving means estimating unit 104 calculates the moving speed between the two points from the continuous latitude / longitude and the time difference, and calculates the average value in the corresponding section. It ’s fine. Then, the type of vehicle is determined with reference to the moving speed band for each vehicle stored in the determination reference value storage DB 113.
  • this reference value for example, a value as shown in FIG. 7 may be stored in advance in the discrimination reference value storage DB 113 manually. Alternatively, the speed may be actually measured on each vehicle and determined based on the value.
  • some vehicle such as a car may be assigned as an initial value and output, or a label “unknown” may be output. good.
  • the movement means estimation unit 104 assigns a movement means label for each acceleration sensor data collection time, and stores the result in the trip attribute estimation result storage DB 111.
  • FIG. 8 is a diagram illustrating an example of data stored in the trip attribute estimation result storage DB 111. As shown in FIG. 8, the moving means at each time calculated by the moving means estimation process (FIG. 6) is specified.
  • the method for deterministically determining the moving means at each time has been described so far, it may be determined from the probability of each moving means as follows.
  • the range of values calculated in each step and the probability for each moving means are stored in the discrimination reference value storage DB 113.
  • the power, variance, and speed of the acceleration sensor data at 1 to 3 Hz indicate conditions, and the probabilities of the moving means under the corresponding conditions are shown.
  • the moving means having the highest probability as shown in FIG. 9B may be output as the moving means at that time, and the probability for each moving means may be output and used in the subsequent correction step.
  • the moving means having the highest probability at each time is highlighted.
  • data is collected when moving by each moving means in advance, and the characteristic quantities such as the power of 1-3 Hz, the dispersion of acceleration, and the average moving speed described here are obtained. Calculate it. Then, the relation between the feature value and the moving means is learned using a machine learning method such as SVM (Support Vector Machine), NN (Neural Network), etc., and the learning result is stored as a discrimination reference value. It may be stored in the DB 113 for use. In this case, when unknown data is obtained by the moving means, the estimation result of the moving means is output deterministically or probabilistically using an identification method according to the machine learning method used at the time of learning. do it.
  • SVM Serial Vector Machine
  • NN Neurological Network
  • trip extraction process a series of movements corresponding to one movement purpose such as “commuting”, “shopping”, and “returning home” is defined as a main trip.
  • a movement corresponding to one moving means such as “walking”, “bus”, and “train” is defined as a sub-trip.
  • a main trip is a concept that can include one or more sub-trips.
  • FIG. 10 is a diagram showing an image of a main trip and a sub trip in the embodiment of the present invention.
  • Trip extraction unit 105 estimates the start time and end time of the main trip and sub trip, respectively.
  • FIG. 11 is a flowchart for explaining the details of the trip extraction process.
  • the trip extraction unit 105 performs trip extraction processing while scanning the data (see FIG. 8) with the moving means label stored in the trip attribute estimation result storage DB 111 in time order. In the trip extraction process, only the acceleration sensor data is used.
  • the trip extraction unit 105 initializes a variable mainTripID that represents an ID assigned to each main trip. In addition, the trip extraction unit 105 initializes a variable i that holds an index for the data with the moving means label to 0.
  • S1101 The trip extraction unit 105 searches for the first main trip start point (what number data) and the corresponding time.
  • the index i indicates an index of acceleration sensor data. Details of the processing of S1101 will be described later with reference to FIG. If no main trip is found, the process ends here. If a main trip is found, the process proceeds to S1103.
  • FIG. 12A is a diagram showing an example of the main trip information storage DB at this time. At this time, the main trip information storage DB is recorded with the currently processed terminal ID, the main trip ID uniquely determined for each main trip in the same terminal, and the start time of each main trip. Information such as the end time, start position, end position, and purpose of movement will be registered later.
  • trip extracting unit 105 refers to the trip attribute estimation result DB 113, obtains the moving means label at time t s, is denoted by previousMode this.
  • N in S1105 of FIG. 11 represents the number of data to which the moving means label is stored stored in the trip attribute estimation result storage DB 111.
  • S1106 The trip extraction unit 105 checks whether the moving means of the i-th point is equal to previousMode. If the same moving means continues (Yes in S1106), the process returns to S1105, and the trip extraction unit 105 increments i. If it has been switched to another moving means (No in S1106), the process proceeds to S1107.
  • FIG. 12B is a diagram showing an example of the main trip information storage DB at this time. The start position and end position are registered later.
  • S1108 The trip extraction unit 105 updates previousMode to the moving means label of the i-th data and substitutes i for s.
  • Trip extracting section 105 determines whether or not the main trip has ended at time t i-1 . Details of this method will be described later with reference to FIG. When t i-1 is not the end point of the main trip (for example, when moving for one commuting purpose, commuting trips are still going on, just by switching from walking to train) ), The process returns to S1105, and the trip extraction unit 105 increments i to perform the next sub-trip information extraction process. On the other hand, if the main trip has been completed up to t i ⁇ 1 , the process proceeds to S1110.
  • Trip extraction section 105 records t i-1 in the main trip information storage DB as the end time of the main trip whose main trip ID is mainTripId.
  • FIG. 12C is a diagram showing an example of the main trip information storage DB at this time.
  • 13A and 13B respectively show a main trip information storage DB and a subtrip information storage DB in the trip attribute estimation result storage DB 111 after the trip extraction process S504 is completed for a certain terminal ID. It is a figure which shows the example of these data.
  • FIG. 14 is a flowchart for explaining the details of the trip start search process.
  • the basic idea here is that the time staying within a certain range for a certain period of time is regarded as a “staying” state.
  • the period up to is regarded as a “moving” state.
  • the purpose of the processing of S1101 is to find the start point (index) of this moving state.
  • the trip extraction unit 105 performs various initializations. That is, at the time of entering the processing of S1101, information on how to search for the next main trip starting point after the index is given as an argument.
  • Trip extracting unit 105 refers to the time t s of data moving means label is applied corresponding to the index (acceleration sensor data), among the data of the terminal, the index of the closest GPS data at that time Search from the data stored in the sensor data storage DB 103, and this is set as gpss.
  • the time when the GPS data is acquired is set as t gpss .
  • the position of the staying position representative point is initialized to the position of GPS data at time t gpss .
  • the stay position representative point is the latitude / longitude of the representative point representing the place where the person stays in the “stay” state.
  • the stay representative point for example, the coordinates of the earliest point in time among the GPS points acquired during the stay state may be used, or the coordinates of the latest point may be used.
  • the center of gravity of the GPS points acquired during the staying state may be used, or Geometric Median may be used. In the embodiment of the present invention, a method using the center of gravity will be described below as an example.
  • a variable threExceedCount for counting the number of data continuously deviating from the staying range, a variable prevTime for holding the acquisition time of the previous GPS point, a point used for calculating the center of gravity Variables centCount representing numbers are initialized to 0, respectively.
  • S1402 From this step, the trip extraction unit 105 advances the process while scanning the GPS data in order of time. Note that N in S1402 represents the number of GPS data of the terminal.
  • Trip extracting section 105 first acquires GPS data corresponding to time t i .
  • trip extracting unit 105 calculates a difference between t i and PrevTime, (Yes in S1404) if has passed longer than a predetermined time theta 1, the process proceeds to S1406. If the elapsed time is equal to or less than the predetermined time ⁇ 1 (No in S1404), the process proceeds to S1407.
  • S1406 The trip extraction unit 105 resets threExceedCount to 0. In other words, the processing of S1404 and S1406 is reset when GPS data cannot be acquired due to radio interference or the like for a certain period (for example, 1 hour) or longer, and newly acquired GPS data to search for a trip start point again. It is provided.
  • Trip extracting section 105 calculates distance d between the i-th GPS point and the stay position representative point. If the radius of the earth is r, the latitude / longitude of the i-th GPS point is (lat i , lon i ), and the latitude / longitude of the stay position representative point is (lat cent , lon cent ), You can study.
  • S1409 trip extracting unit 105, d determines whether a predetermined threshold value theta 2 smaller. If d is smaller than the predetermined threshold ⁇ 2 (Yes in S1409), the process proceeds to S1410. If d is equal to or greater than the predetermined threshold ⁇ 2 (No in S1410), the process proceeds to S1411.
  • Trip extraction unit 105 updates the position of the stay position representative point, increments centCount, and initializes threExceedCount to 0.
  • the position of the new staying position representative point can be calculated according to Equation 3, for example.
  • ThreExceedCount determines whether a predetermined threshold value theta 3 or more. That is, the the distance between the representative point passes through the staying state when subsequently a predetermined number of times theta 3 or more consecutive points distant than the predetermined threshold value theta 2, determines that began to move. By doing in this way, even if there is an error in GPS data, the possibility of erroneous determination can be eliminated. (Yes in S1412) If threExceedCount is theta 3 smaller, the process returns to S1402, processing continues by incrementing the i. If threExceedCount is equal to or greater than ⁇ 3 , that is, if ⁇ 3 or more are continuously out of the predetermined stay range (Yes in S1412), the process proceeds to S1413.
  • Trip extraction unit 105 determines that the state has been switched from “Stay” to “Move”, and acquires the index of the data with the moving means label that is closest to time t i .
  • the threshold value ⁇ 3 is set here, and the reason why it is not determined that the state has shifted from the staying state to the moving state unless ⁇ 3 or more points are continuously removed from the staying range is that GPS data often includes positioning errors. In particular, when the user is indoors, the error tends to increase. Therefore, if only one piece of data is determined for determination, erroneous determination is likely to occur.
  • FIG. 15 is a flowchart for explaining the details of the trip end determination process. The basic idea here is, if the time period from the time t i-1 until after the lapse of a predetermined period of time, it is determined whether or not the "residence" state, is "residence” state, the time t i It is determined that the movement is completed at -1 .
  • the trip extraction unit 105 acquires the index gpss of the GPS point closest to the time t i-1 (acceleration sensor data acquisition time) given by the argument.
  • trip extracting unit 105 acquires the index gpse closest GPS point at a predetermined time from a time t i-1 t 'just elapsed time t i-1 + t'.
  • the predetermined time t ′ for example, a value such as 15 minutes may be stored in advance in the discrimination reference value storage DB 113.
  • trip extracting unit 105 checks whether j-th GPS point is in the between t i-1 of the time width of t i-1 + t '. In other words, it is meaningless to use data that is too early in time (for example, data that is one hour ago), so it is determined whether or not the trip has ended using data included in a predetermined time width (for example, every 15 minutes). It is said. If it is not within this time range (No in S1505), the process returns to S1504, and j is incremented to continue the process. If it is within this time width (Yes in S1504), the process proceeds to S1506.
  • the trip extraction unit 105 adds the latitude and longitude values of the j-th GPS data to lat sum and lon sum , respectively, and increments centCount.
  • S1507 Trip extraction unit 105 checks whether centCount is 0 or not. If 0 (Yes in S1507), the process proceeds to S1508. If it is not 0 (No in S1507), that is, if centCount is 1 or more, the process proceeds to S1509.
  • Trip extraction unit 105 sets the stay position representative point as the gpss-th GPS point, and returns true, that is, a flag indicating that the main trip has ended at time t i ⁇ 1 , and ends the process. This is a process that assumes that GPS data has not been acquired for a predetermined time after time t i-1 indicates that the terminal holder has entered the room. If you enter the room and do not leave it for a while, it is likely that the building was your destination.
  • the trip extraction unit 105 calculates a stay position representative point by dividing lat sum and lon sum by centCount.
  • the trip extraction unit 105 calculates the distance d j from the stay position representative point at all the GPS points between t i-1 and t i-1 + t ′.
  • S1511 First, the trip extraction unit 105 checks whether or not the j-th GPS point is between t i-1 and t i-1 + t ′. If not (No in S1511), the process returns to S1510 and increments j. If it is present (Yes in S1511), the process proceeds to S1512.
  • trip extracting unit 105 calculates the distance d j between the dwell positions representative point and j th GPS point. Specifically, the distance d j can be obtained by replacing (lat i , lon i ) of (Equation 2) with (lat j , lon j ) and (lat cent , lon cent ) with (lat sum , lon sum ). Can be calculated.
  • Trip extraction section 105 sorts d j , obtains the ⁇ -th value from the larger one, and sets this as d ′.
  • the trip extraction unit 105 determines whether d ′ is smaller than a predetermined threshold ⁇ .
  • for example, a value such as 150 m may be stored in advance in the discrimination reference value storage DB 113. In a later embodiment, a method for dynamically changing the value of ⁇ will be described. If d ′ is smaller than ⁇ (Yes in S1514), the trip extraction unit 105 regards it as being in the “staying” state, ie, the main trip is completed at time t i ⁇ 1 . Return the flag to end the process. If d ′ is equal to or larger than ⁇ (No in S1514), the trip extraction unit 105 assumes that the terminal holder is still moving after time t i ⁇ 1 and returns false to process. End.
  • the OD estimation unit 106 first records the OD position information for each main trip with reference to the main trip storage DB (see FIG. 13A) after the trip extraction process. Then, the OD estimation unit 106 refers to the start time of a certain main trip, and records the position of the GPS data acquired first after that time in the start position (O).
  • the OD estimation unit 106 records the position of the GPS data acquired last before the end time of the main trip in the end position (D). This process is performed for all main trips. Since the OD can be recorded in the same process for the sub-trip, the description is omitted here.
  • FIGS. 16A and 16B are diagrams showing examples of a main trip information storage DB and a subtrip information storage DB after the OD estimation processing, respectively.
  • the route estimation unit 107 stores the position information of GPS data belonging to each trip in the route information storage DB in the trip attribute estimation result storage DB 111.
  • the GPS data belonging to each trip refers to all GPS data acquired by the terminal after the start time of each trip and before the end time, regardless of whether the trip is a main trip or a sub trip.
  • FIG. 17 is a diagram illustrating an example of data stored in the path information storage DB. As shown in FIG. 17, the relationship between the main trip and the sub-trip and the position information of each sub-trip at the corresponding time are held in the route information storage DB.
  • trip start time if the trip start time is around 7: 00-9: 00 in the morning, the possibility of commuting is high, and if it is in the evening, the possibility of shopping, eating, or going home is high. This is because it can be considered that there is a high possibility of a meal if it is noon from 10:00 to 13:00 or dinner from 18:00 to 20:00.
  • dispensersion value of acceleration sensor data at the time immediately after staying in the case of shopping, while walking around in the supermarket etc.
  • the movement purpose estimation unit 108 In order to estimate the movement purpose using the multinomial logit model, the movement purpose estimation unit 108 first uses Equation 4 for each of four types of movement purposes: “commuting to school”, “returning home”, “shopping”, and “meal”. Calculate the utility value.
  • x i in Equation 4 is a variable representing the various feature values described above. Specifically, x 0 is always the value in the dummy variable is 1.
  • x 1 is "trip date or a holiday of attributes weekday" in binary variables that represent, and 1 0, when the holiday time on weekdays. Whether it is a weekday or a holiday can be determined from the start time of the main trip. For example, in the case of Unix Time (Unix is a registered trademark), the date and day of the week can be uniquely specified by using an appropriate API, and this can be determined.
  • x 2 is a variable that represents a "trip start time". This can be expressed, for example, in the form of the elapsed seconds up to the trip start time, based on 4 am.
  • 4 am is used as a standard because it is considered that some people are still active at midnight. Therefore, it is possible to make an analysis closer to the actual situation of life by considering the period from 4 am to 4 am the next day as a day for convenience.
  • x 3 is a variable representing “dispersion value of acceleration sensor data at the time of dwelling immediately after”.
  • the acceleration sensor data between the end time of the target main trip and the start time of the next main trip may be extracted from the sensor data storage DB 103 and their variance values may be calculated. If there is no main trip, 0 is substituted.
  • x 4 is a binary variable that represents the "final whether or not the trip of the day.” 1 in x 4 in the case is the final trip of the day, and if not, 0 is substituted. Here, as described above, it is better to define one day from 4 am to 4 am the next day.
  • w i, purpose is a weighting parameter for the variable x i in the purpose of movement.
  • This parameter is preferably learned in advance, but an empirical value may be manually input and stored in the discrimination reference value storage DB 113.
  • the weight parameter is estimated using an existing method such as the maximum likelihood estimation method, and the value is stored in the discrimination reference value storage DB 113. Store it in. After calculating the utility value in this way, the probability P purpose for each movement purpose is calculated by Equation 5.
  • the movement purpose estimation unit 108 records the most probable one in the main trip information storage DB as the movement purpose. However, it is preferable to output “others” even if the probability is the highest, if it is lower than a predetermined threshold, for example, 0.40.
  • FIG. 18 is a diagram illustrating an example of data in the main trip information storage DB after the movement purpose estimation process (S507).
  • the probabilities for each moving purpose calculated here are created in the trip attribute estimation result storage DB 111 for use in later correction processing (S508), and are stored in the travel purpose probability value DB. And good.
  • FIG. 19 is a diagram showing an example of the data of the probability value DB classified by purpose of movement.
  • the probability of “others” is set to the threshold value only when any other movement purpose does not exceed the predetermined threshold value, and is set to 0 in other cases.
  • the method using the multinomial logit model has been described as an example of the movement purpose estimation method here, other machine learning methods such as SVM and NN may be used. Also, other travel purposes such as “entertainment” and “visit” may be estimated. Furthermore, other features may be used.
  • FIG. 20 is a flowchart for explaining the contents of the correction process (S508).
  • the correction unit 109 initializes a counter count for repetition to zero.
  • the correction unit 109 sets a flag isModified indicating whether correction has been performed to false.
  • the correction unit 109 corrects the OD (S2003), the movement means correction (S2004), the trip extraction correction (S2005), the path correction (S2006), and the movement purpose correction (S2007) as necessary. ). When correction is performed, the correction unit 109 sets isModified to true.
  • the correction unit 109 checks isModified. If it is false, that is, if no correction has been performed between S2003 and S2007, the process ends here. Alternatively, if the value of count is equal to or greater than the predetermined threshold value ⁇ , that is, if the convergence is not achieved even after repeated processing for a predetermined number of times, the correction unit 109 ends the processing. Otherwise, the process returns to S2002, and the correction unit 109 continues processing.
  • the OD correction process in S2003 will be described in detail.
  • the OD correction process is a process for correcting the OD based on the upper side of the movement purpose. For example, if the purpose of travel is commuting, O is at home and D is at work. Even when the GPS data is not sufficiently acquired, the OD can be corrected from the information for the purpose of movement.
  • FIG. 21 is a flowchart for explaining the details of the OD correction process (S2003). Although only O (Origin) correction will be described as an example here, D (Destination) correction can be performed in the same manner. Here, an example in which OD correction is performed for the purpose of movement will be described. Also, OD correction is performed for each main trip. That is, data of the main trip information storage DB (FIG. 18) in the trip attribute estimation result storage DB 111 is read one record at a time, and the process of S2003 is sequentially performed. Below, the processing method after taking out one main trip is described.
  • the correction unit 109 refers to the main trip information storage DB (FIG. 18) and the movement purpose-specific probability value DB (FIG. 19) to determine the movement purpose of the main trip and its estimated probability.
  • the reliability is determined based on whether or not the reliability is greater than a threshold value. When this probability is smaller than the predetermined threshold (No in S2101), the correction unit 109 ends the process without performing correction. This is to eliminate errors by performing correction based on information with low reliability.
  • a threshold value for example, a value such as 0.7 is set in advance and stored in the discrimination reference value storage DB 113. If the estimated probability of movement purpose is equal to or greater than a predetermined threshold (Yes in S2101), the process proceeds to S2102.
  • the correction unit 1090 refers to the movement purpose-OD related information storage DB in the trip attribute related information storage DB 110, and extracts O candidates corresponding to the movement purpose.
  • the movement purpose-OD related information storage DB stores a combination of a movement purpose and an OD that can be moved for that movement purpose.
  • FIG. 22 is a diagram illustrating an example of data in the migration purpose-OD related information storage DB. For example, if the purpose of travel is shopping, candidates for O include home and office.
  • the migration purpose-OD related information storage DB can be constructed by manually inputting an empirical combination as shown in FIG. 22, for example.
  • the correction unit 109 obtains the latitude and longitude of the candidate O extracted in step S2102 with reference to the PersonalPerPOI DB and the Social POI DB in the POI information storage DB112.
  • the Personal POI DB is a DB that stores a place linked to an individual such as a home or work place and latitude / longitude information of the place.
  • FIG. 23A is a diagram illustrating an example of data stored in the Personal POI DB. In addition to your home or work, you may register frequently used supermarkets and restaurants.
  • the Personal POI DB can be created manually by conducting a questionnaire survey with the terminal holder in advance. In a later embodiment, a method of automatically constructing this using GPS data or acceleration sensor data stored in the sensor data storage DB will be described.
  • the Social POI DB is a DB that stores places frequently used by local people, such as supermarkets, schools, hospitals, and latitude / longitude information.
  • FIG. 23B is an example of data stored in the Social POI DB.
  • the Social POI DB can be created by extracting data from a publicly available map such as OpenStreetMap (http://www.openstreetmap.org/). Moreover, when the local government etc. maintain and disclose the location information of public facilities, they can also be used. It may be created manually using a questionnaire or the like. In another embodiment to be described later, a method for automatically constructing a Social-POI DB using GPS data and acceleration sensor data stored in the sensor data storage DB will be described.
  • the correction unit 109 calculates the distance between the current O position and the O position obtained in S2103. This calculation can be performed using Equation 2 described above.
  • the correction unit 109 extracts the place where the distance calculated in S2104 is the shortest, and sets this as O ′.
  • the correction unit 109 updates the current O to O ′.
  • the correction unit 109 sets isModified, which is a flag indicating whether correction has been performed, to true, and ends the process.
  • the data for the PersonalIPOI DB and Social POI DB described here are not necessarily complete. That is, for example, it is not necessary to store the location information of all the terminal holders such as homes and work places, supermarkets, and hospitals. If there is no desired data in the Personal POI DB or Social POI DB, the data may be terminated without performing correction processing. In particular, if it is difficult to investigate the homes and workplaces of all terminal holders through questionnaires, etc., trips that can be corrected using only the data of the surveyable area and Social POI DB Correction may be made only for the target. Of course, the richer the information, the higher the possibility of correction and the higher the estimation accuracy.
  • FIG. 24 is a flowchart for explaining details of the moving means correction processing.
  • the correction of the moving means is performed for each sub-trip. This is because the moving means is specified for each sub-trip. That is, the correction unit 109 reads the data of the sub-trip information storage DB (FIG. 16B) in the trip attribute estimation result storage DB 111 one record at a time, and sequentially executes the correction process of the moving means.
  • the correction unit 109 reads the data of the sub-trip information storage DB (FIG. 16B) in the trip attribute estimation result storage DB 111 one record at a time, and sequentially executes the correction process of the moving means.
  • a processing method after taking out one sub-trip will be described.
  • the correction unit 109 acquires information on the OD (start position and end position) of the sub trip from the sub trip information storage DB (FIG. 16B). OD information is given in the form of latitude and longitude.
  • the correction unit 109 refers to the POI information storage DB 112 and calculates the distance between each point stored in the POI information storage DB 112 and the OD obtained in S2401, and the shortest of them is calculated. Are extracted respectively. This is calculated using Equation 2 using the latitude and longitude of the OD and the values of latitude and longitude of each data registered in the PersonalPerPOI storage DB and Social POI storage DB in the POI information storage DB112. Can be calculated.
  • the correction unit 109 determines whether one of the distances between the ODs and the nearest point (respectively set as d O and d D ) is equal to or greater than a predetermined threshold ⁇ . If either one is greater than or equal to the threshold value ⁇ (No in S2403), the correction unit 109 does not correct the moving means for the sub-trip and ends the process. On the other hand, if both of the distances d O and d D are less than the threshold ⁇ (Yes in S2403), the process proceeds to S2404.
  • a value such as 150 m may be stored in advance in the discrimination reference value storage DB 113.
  • the correction unit 109 refers to the POI information storage DB 112 and extracts the attribute of the nearest point of the OD obtained in S2401.
  • the correction unit 109 refers to the OD-moving means related information storage DB (FIG. 25) in the trip attribute related information storage DB 111, and from among the moving means corresponding to the OD, the appearance probability The one with the highest is extracted.
  • This moving means is m ′, and the probability at this time is p1.
  • FIG. 25 is a diagram showing an example of data stored in the DB for storing related information between OD and moving means. This can be created in advance by conducting a questionnaire for each terminal holder. It can also be constructed by automatically estimating from daily behavior data. This method will be described later in another embodiment. For example, when data as shown in FIG. 25 is stored and the ID of the sub-trip is ID 1 , O is home and D is office, the bicycle with the highest probability is m ′ The probability 0.70 is p1.
  • the correction unit 109 refers to the trip attribute estimation result storage DB 111 to determine the current moving means determination result obtained in the moving means estimation process (S503) and the probability p2 corresponding thereto. This can be calculated using the probability for each moving means that has been calculated for each data at each time as shown in FIG. 9B. That is, for example, when the sub trip moving means determination result is m and the probability of m for the data at time t i calculated as shown in FIG. 9B is p m, i , the sub trip ends from the start time of the sub trip. What is necessary is just to take the average value of pm , i until the time.
  • S2407 The correction unit 109 compares p1 and p2. When p1 is equal to or smaller than p2 (No in S2407), the correction unit 109 determines that the reliability of the original determination result is higher and ends the process without performing correction. On the other hand, when p1 is larger than p2 (Yes in S2407), the process proceeds to S2408.
  • the correction unit 109 corrects the subtrip estimation result to m ′.
  • the correction unit 109 sets a flag isModified for determining whether correction has been performed to true, and ends the process.
  • the value of the OD-moving means related information storage DB (FIG. 25) is used as p1 as p1.
  • O or D in S2404 is used. It is also possible to calculate a value that represents the likelihood of the attribute assigned to, and use it for the calculation of p1. For example, when the distance between the current O and the place closest to the point stored in the POI information storage DB 112 (this is O ′) is d, the likelihood is expressed by Equation 6. Can be sought.
  • D can also be obtained in the same manner as O. And using these, p2 can be obtained according to Equation 7.
  • FIG. 26 is a diagram illustrating a concept of route correction processing.
  • GPS positioning points are not always available even when outdoors. For example, there are various arrangements of GPS satellites present in the sky depending on the region and time, and the position may not be calculated when the number is small.
  • GPS signals are difficult to reach when tall buildings such as building streets are present, and GPS signals are difficult to receive when riding on trains or buses.
  • the location cannot be calculated immediately even if you go outdoors. The phenomenon that points cannot be obtained often occurs. Even in such a case, if the correct OD is corrected by the OD correction process, the information when the GPS signal cannot be received can be restored by interpolating the route between them.
  • the correction unit 109 uses the coordinates of the point at the earliest time after the start time of the target trip as the main trip information storage DB (FIG. 18) or the subtrip information storage DB (FIG. 16B). , By referring to the sensor data storage DB 103.
  • the correction unit 109 acquires the coordinates of O with reference to the main trip information storage DB (FIG. 18) or the subtrip information storage DB (FIG. 16B). Then, the correction unit 109 interpolates between these two points.
  • an interpolation method linear interpolation may be performed between two points, but it is more preferable to perform interpolation along an actual route with reference to map information or the like.
  • interpolation is performed along the track.
  • a bus interpolate along the bus route.
  • the number of interpolation points is, for example, one point per 100 m, and the time for the interpolated point may be linearly assigned from the trip start time to the measurement time of the first positioning point.
  • FIG. 27 is a flowchart for explaining the details of the movement purpose correction processing.
  • the correction of the moving means is performed for each main trip when the estimation of the moving purpose is not accurate. That is, the correction unit 109 reads the data of the main trip information storage DB (FIG. 18) in the trip attribute estimation result storage DB 111 one record at a time, and sequentially executes the movement purpose correction process (S2007). Below, the processing method after taking out one main trip is described.
  • the correction unit 109 refers to the travel purpose probability value DB (FIG. 19) in the trip attribute estimation result storage DB 111 to obtain a probability corresponding to the estimated travel purpose of the main trip. This probability is information registered as a result of the movement purpose estimation process (S507). Then, the correction unit 109 determines whether this probability is equal to or less than a predetermined threshold value. If the probability is equal to or less than the threshold (Yes in S2701), the process proceeds to S2702. On the other hand, if the probability is greater than the threshold (No in S2701), the process ends.
  • the correction unit 109 refers to the POI information storage DB 112 and calculates the distance between each point stored in the POI information storage DB 112 and the OD of the main trip, and the shortest of them is calculated. Are extracted respectively. This can be calculated based on the above equation 2 using the latitude / longitude of the OD and the latitude / longitude values of each data registered in the PersonalIPOI storage DB or Social POI storage DB. .
  • the correction unit 109 determines whether any of the distances to the closest points of OD (respectively set as d O and d D ) is smaller than a predetermined threshold ⁇ . If either one is greater than or equal to the predetermined threshold value ⁇ (No in S2703), the process is terminated without correcting the movement purpose for the main trip.
  • a predetermined threshold ⁇ for example, a value such as 150 m may be stored in advance in the discrimination reference value storage DB 113. If the distances d O and d D are both smaller than the threshold value (Yes in S2703), the process proceeds to S2704.
  • the correction unit 109 extracts the attribute of the nearest point of O and D of the main trip with reference to the POI information storage DB 112.
  • the correction unit 109 refers to the travel purpose-OD related information storage DB in the trip attribute related information storage DB 110 to determine whether one or more travel purposes corresponding to the attribute of the OD are registered. Check. An example of the migration purpose-OD related information storage DB is as already shown in FIG. If no corresponding movement purpose is found (No in S2705), the process ends. If one or more corresponding movement purposes are found (Yes in S2705), the process proceeds to S2706.
  • the correction unit 109 finally selects the one having the highest probability registered in the movement purpose-specific probability value DB (FIG. 19), which is the original estimation result, from the corresponding movement purpose groups found in S2705. Output as a movement purpose estimation result.
  • the correction unit 109 rewrites the information in the main trip information storage DB with the shopping as a correction result.
  • the correction unit 109 sets a flag isModified indicating whether correction has been performed to true, and ends the process.
  • each trip attribute can be estimated and corrected in a series of processes.
  • the order of the correction process does not necessarily have to be as shown in FIG. For example, it is more effective to confirm the trip attributes with high estimation accuracy in order and correct the estimation results of other trip attributes with low estimation accuracy using the estimation results of trip attributes with high estimation accuracy. It is effective.
  • the IC ticket information is The reliability of the estimation result of the used time zone moving means becomes very high, and it is sufficient to correct other trip attribute information after confirming the moving means of that portion first.
  • the information used for correction described above is an example for realizing the correction processing, and is not limited thereto.
  • the estimation result of the moving means can be corrected after using the estimation result of the movement purpose.
  • the movement purpose estimation result of each main trip is read from the trip attribute estimation result storage DB 111, and a column of movement means corresponding to the movement purpose is stored in the trip attribute related information storage DB 110.
  • FIG. 28 is a diagram showing an example of data in the DB for storing purpose-of-movement-related means storage information.
  • the database for storing information related to the purpose of movement / means of movement may be created manually based on a questionnaire on daily commuting routes.
  • information may be automatically extracted and created from a column of GPS data or acceleration sensor data collected over a certain period. This specific method will be described later in a later embodiment.
  • the number of moving means rows stored here is equal to the number of sub trips with MainTripID of the target main trip, and the probability stored here was obtained when estimating the moving means If it is higher than the probability, the estimation result of the sub-trip moving means having the MainTripID of the main trip is corrected to the moving means row stored in the movement purpose-moving means related information storage DB (FIG. 28).
  • the OD can be corrected from the route information. This may be performed for each main trip or for each sub trip. Here, an example of performing for each sub-trip will be described, but correction can be performed by the same processing even in the case of a main trip.
  • the correction unit 109 uses the terminal ID, MainTripID, and SubTripID of the target subtrip to extract a positioning point measured during the subtrip from the path information storage DB.
  • the correction unit 109 refers to the OD-route related information storage DB in the trip related information storage DB 110 and sets the current positioning point sequence (this is ⁇ p i ⁇ . ⁇ P i ⁇ is specific. (It is a point sequence of latitude and longitude.) FIG.
  • the correction unit 109 determines that a matching route exists when the distance d that can be calculated by Expression 9 is smaller than a predetermined threshold.
  • a predetermined threshold value for example, a value such as 50 m may be stored in the discrimination reference value storage DB 113 in advance.
  • d i, j is information representing the distance between ⁇ p i ⁇ and the path of each data record j of the OD-path related information storage DB (FIG. 29) calculated by Expression 10.
  • q j, k is latitude / longitude information of the kth point of the path of the jth record in the DB for storing OD-path related information.
  • D (p i , q j, k ) is the distance between the point p i and the point q j, k . This can be calculated using Equation 2 above.
  • FIG. 30 is a diagram showing the concept of the correction process. If there is a matching route based on the distance d obtained by calculation, the position information corresponding to the OD stored in the OD-route related information storage DB is read, and the POI information storage DB 112 is further stored. Refer to update the OD of the sub-trip. If the OD information is not in the POI information storage DB 112, no correction is performed. Note that the OD-route related information storage DB illustrated in FIG. 29 can be created from past movement history information. That is, when OD estimation and route estimation are performed according to the procedure described so far, and attribute information of a point corresponding to the OD is stored in the POI information storage DB, these are stored in the OD-route related information storage DB. You should store in. By doing so, for example, it is possible to correctly estimate the OD information by correction even in a situation where the GPS reception situation is poor and data loss occurs.
  • the correction process (S508), if the system user can specify the order of trip attributes to be corrected using GUI (Graphical User Interface) or the like, a flexible correction process based on the knowledge of the user can be performed. It becomes possible. Further, in the loop of the correction process (S508), for example, the estimation result before the correction and the estimation result after the correction are displayed at the timing of S2008, and the user is allowed to select whether or not to accept the correction. May be. If the user does not accept the correction result, the correction process ends at that point.
  • GUI Graphic User Interface
  • the second embodiment is a trip attribute estimation system that can perform correction with higher reliability by using restrictions specific to traffic behavior when correcting trip attributes. It is about.
  • the trip attribute estimation system 100 when the trip attribute is corrected, if correction is performed on the dark clouds, an incorrect correction may be performed. In that case, if a constraint regarding traffic behavior is taken into account and the most rational correction is performed under the constraint, a more reliable correction can be performed.
  • the second embodiment is familiar from this point of view.
  • FIG. 31 is a diagram showing a configuration example of a trip attribute estimation system 3100 with a traffic behavior constraint condition in the second exemplary embodiment of the present invention.
  • the trip attribute estimation system 3100 with traffic behavior constraint conditions further includes a DB 3101 for storing traffic behavior constraint conditions in addition to the configuration of the trip attribute estimation system 100 of the first embodiment.
  • Examples of restrictions on traffic behavior include the moving speed of each moving means, the transition probability of the moving means, and the frequency of occurrence of a specific trip within a day.
  • restrictions on traffic behavior include the moving speed of each moving means, the transition probability of the moving means, and the frequency of occurrence of a specific trip within a day.
  • FIG. 32 is a flowchart for explaining the OD correction processing when the traffic action restriction is used.
  • the process denoted by the same reference numeral as the OD correction process shown in FIG. 21 is the same as the process according to the first embodiment, and therefore the description thereof is omitted here.
  • the correction unit 109 determines whether or not the O ′ is actually reachable (S3206). Specifically, first, the distance d from O to O ′ is calculated using the above-described equation 2. Further, the correction unit 109 refers to the sub-trip information storage DB, reads the estimation result of the moving means in the time zone, and sets the maximum speed (this is set as v max ) predetermined for each moving means. Ask. The maximum speed for each moving means is registered in advance in the DB for storing maximum speed information for each moving means in the DB 3101 for storing traffic behavior constraint conditions. The value may be determined empirically reasonable as shown in FIG. 33, for example.
  • the trip start time may be determined based on a change point of the moving means that can be discriminated using only the acceleration sensor information, such as when changing from stationary to walking, it is generally not always the same time. Note that there is no. If d ⁇ d max, it is determined that this O ′ is reachable, the process proceeds to S2107, and the correction unit 109 actually performs correction. Otherwise, no correction is performed and the process ends here. This eliminates the possibility of performing incorrect correction.
  • FIG. 34 is a flowchart for explaining the moving means correction processing when the traffic action restriction is used.
  • the processing given the same reference numerals as the moving means correction processing shown in FIG. 24 is the same as the processing described in the first embodiment, and therefore description thereof is omitted here.
  • the correction unit 109 performs the correction of the moving means. Whether it is reasonable considering the transition (whether it is a possible transition or not: For example, there may be a transition where you move to the station by bicycle and then move further by train, but you move to the station by bike, then change to a car, (There is almost no transition to changing to a motorcycle again in the middle.) Specifically, the correction unit 109 refers to the moving means transition probability storage DB in the traffic behavior restriction condition storage DB 3101 and transitions from the moving means immediately before the correction target sub-trip to the correction candidate moving means.
  • FIG. 35A is a diagram showing a correspondence example of data stored in the moving means transition probability storage DB.
  • FIG. 35B is an example of data actually stored in the DB.
  • the correction unit 109 does not perform correction when the transition probability is lower than a predetermined threshold.
  • the threshold value for example, a value such as 1 / N may be set in advance and stored in the discrimination reference value storage DB 113.
  • values as shown in FIG. 35A may be determined empirically and registered in advance, or data may be collected for learning and the data It is also possible to calculate the probability by counting the number of transitions that actually occurred.
  • FIG. 36 is a flowchart for explaining the movement purpose correction process when the traffic action restriction is used.
  • the process denoted by the same reference numeral as the movement purpose correction process shown in FIG. 27 is the same as the process according to the first embodiment, and thus the description thereof is omitted here.
  • the correction unit 109 obtains a new movement purpose m ′ that becomes a correction candidate in S2706, and then determines whether m ′ is realistic in S3601 in view of the trip occurrence frequency within a day. Determine. This is based on knowledge of traffic behavior, such as “commuting” is usually only once in a day (excluding returning home from a business trip) and “meal” is less than 3 times. . Specifically, the correction unit 109 refers to the data of the trip occurrence frequency information storage DB in the traffic behavior constraint condition storage DB 3101, and the number of occurrences of the movement purpose m ′ to be corrected in one day. However, if it is larger than the maximum number registered here, correction is not performed.
  • FIG. 37 is a diagram illustrating an example of data stored in the trip occurrence frequency information storage DB.
  • the trip occurrence frequency information storage DB may be set in advance and input empirical values as shown in FIG.
  • the present invention relates to a trip attribute estimation system with a DB automatic construction function that extracts and automatically constructs a DB.
  • the information in the trip attribute related information storage DB 110 and the POI information storage DB 112 is referred to during various estimation processes and correction processes. These can be constructed by various methods such as inputting empirical values in advance or manually inputting information based on a questionnaire or the like. However, these methods are often difficult and difficult to set appropriate values manually.
  • FIG. 38 is a diagram showing a configuration example of a trip attribute estimation system 3800 with a POI information storage DB automatic construction function.
  • a trip attribute estimation system 3800 with a POI information storage DB automatic construction function includes a POI information automatic extraction unit 3801 in addition to the configuration of the trip attribute estimation system 100 according to the first embodiment.
  • the Social POI information storage DB can be constructed using map information and the like.
  • a method for automatically constructing the Personal POI information storage DB will be mainly described.
  • FIG. 39 is a flowchart for explaining the process of estimating the home position.
  • home is always a place to stay, whether it is a weekday or a holiday, and is D for the last trip of the day, and O for the first trip of the day. There are many cases.
  • the moving means estimating unit 104 executes the trip moving means estimating process (S503) for the data of the terminal ID, and further, the trip extracting unit 105 executes the trip extracting process (S504).
  • the POI information automatic extraction unit 3801 refers to the main trip information storage DB (FIG. 18), extracts O of the first trip of the day and D of the last trip of the day, and their latitude / longitude information. To get. It should be noted that it is preferable to set the day interval to 4:00 am rather than 0:00 because it easily matches the actual activities of people. The same applies to the subsequent processing.
  • the POI information automatic extraction unit 3801 clusters the positions extracted in S3902 using an arbitrary clustering method.
  • a clustering method for example, the Ward method or the like can be used.
  • the number of clusters is reduced by, for example, preventing further cluster combination.
  • a value such as 300 m may be used as the predetermined threshold.
  • the POI information automatic extraction unit 3801 extracts the cluster having the largest number of elements from the clusters created in S3903, and registers the coordinates of the center of gravity of the cluster in the Personal ⁇ POI as the home position. In this way, the home position can be estimated.
  • FIG. 40 is a flowchart for explaining the process of estimating the position of the work place.
  • the moving means estimating unit 104 executes a trip moving means estimating process (S503), and the trip extracting unit 105 further executes a trip extracting process (S504).
  • the POI information automatic extraction unit 3801 has an index i that makes the difference between the end time of the i-th main trip and the start time of the (i + 1) -th main trip out of the main trips of the day the largest. And D of the i-th main trip is extracted. This process is performed every day.
  • the POI information automatic extraction unit 3801 clusters the positions extracted in S4002 using an arbitrary clustering method.
  • a clustering method for example, the Ward method or the like can be used.
  • the number of clusters is reduced by, for example, preventing further cluster combination.
  • a value such as 300 m may be used as the predetermined threshold.
  • the POI information automatic extraction unit 3801 extracts the cluster having the largest number of elements from the clusters created in S4003, and registers the coordinates of the center of gravity of the cluster in the Personal POI as the work location. In this way, the position of the work place can be estimated.
  • the location of the supermarket that goes often can be estimated by extracting D of trips whose travel purpose is shopping. That is, for the data of the terminal ID, the moving means estimating unit 104 executes the trip moving means estimating process (S503), the trip extracting unit 105 executes the trip extracting process (S504), and the moving purpose estimating part 108 moves.
  • a purpose estimation process (S507) is executed.
  • the POI information automatic extraction unit 3801 extracts only trips whose shopping purpose is shopping, and extracts the position of D.
  • the POI information automatic extraction unit 3801 performs clustering, calculates the barycentric position of the cluster with the largest number of elements, and uses this as the super position where it often goes. Just register. After this processing, if the same position (with a distance of a predetermined threshold or less, such as 300 m) is extracted for a plurality of terminal IDs, the position is registered in the Social POI information storage DB. You can leave it.
  • FIG. 41 is a diagram illustrating a configuration example of a trip attribute estimation system 4100 with a DB automatic construction function for storing related information between trip attributes.
  • Trip attribute estimation system 4100 with a DB automatic construction function storage for relation information between trip attributes In addition to the configuration of the trip attribute estimation system 100 according to the first embodiment, automatic relation information between trip attributes that automatically extracts relation information between attributes.
  • An extraction unit 4101 is included.
  • FIG. 42 is a flowchart for explaining the process of automatically constructing the DB for storing related information between OD and moving means (FIG. 28).
  • the movement means estimation unit 104 executes the trip movement means estimation process (S503) for the data of the terminal ID, and the trip extraction unit 105 executes the trip extraction process (S504).
  • the trip attribute related information automatic extraction unit 4101 extracts the ODs of all sub-trips, and extracts only the locations corresponding to both ODs registered in the POI information storage DB 112.
  • the corresponding place represents a place having a predetermined threshold value or less, such as a distance from O (D) of 300 m.
  • Trip attribute related information automatic extraction section 4101 collects the same OD attributes extracted in S4202 into the same group, calculates the frequency of each sub-trip belonging to the group, and normalizes this. The probability is registered in the DB for storing related information between OD and moving means.
  • FIG. 43 is a flowchart for explaining the process of automatically constructing the movement purpose / movement means related information storage DB.
  • the moving means estimating unit 104 executes the trip moving means estimating process (S503) for the data of the terminal ID to be processed, the trip extracting unit 105 executes the trip extracting process (S504), and the moving purpose estimating unit 108 Executes the movement purpose estimation process (S507).
  • the trip attribute related information automatic extraction unit 4101 creates a group for each estimated movement purpose, and extracts a column of moving means from a subtrip column having the same MainTripID as each main trip of the group.
  • the trip attribute related information automatic extraction unit 4101 calculates the frequency for each moving means column obtained in S4302, normalizes this as a probability, and registers it in the moving purpose-moving means related information storage DB.
  • the trip attribute related information storage DB 110 can be automatically constructed from the measurement data.
  • the stay determination threshold automatic that can dynamically change the threshold for stay determination used in the trip extraction process depending on the place and the measurement time zone.
  • the present invention relates to a trip attribute estimation system with an adjustment function.
  • FIG. 44 is a diagram illustrating a configuration example of a trip attribute estimation system 4400 with a stay determination threshold value automatic adjustment function according to the fourth embodiment.
  • a trip attribute estimation system 4400 with a stay determination threshold automatic adjustment function includes a stay determination threshold calculation unit 4401 in addition to the configuration of the trip attribute estimation system 100 according to the first embodiment.
  • FIG. 45 is a flowchart for explaining a process in which the stay determination threshold value ⁇ 2 can be dynamically changed in the process of searching for the start point of the next main trip (FIG. 14: details of S1101).
  • the processes denoted by the same reference numerals as those in the flowchart of FIG. 14 are the same as the processes described in the first embodiment, and thus description thereof is omitted here.
  • a predetermined value for example, 150 m is set as the initial value of the threshold value ⁇ 2 .
  • the stay determination threshold value calculation unit 4401 updates the threshold value according to the situation. Specifically, after the process of S1410, the process proceeds to S4501.
  • S4501 The residence determination threshold calculation unit 4401, for use in later threshold theta 2 calculated and stored in a temporary array the position of the i-th GPS point.
  • the residence determination threshold calculation unit 4401 determines the variable centCount representing the number of points used to calculate the center of gravity whether greater than a predetermined value theta 4. If centCount is equal to or smaller than ⁇ 4 , ⁇ 2 is not updated, and the process proceeds to S1412 to continue the processing. centCount is if ⁇ 4 is larger than, the process proceeds to S4503.
  • the stay determination threshold value calculation unit 4401 updates ⁇ 2 .
  • the point sequence stored in S4501 is read, and ⁇ 2 is determined based on the value of the covariance matrix ⁇ when the distance between them and the center of gravity is approximated by a Gaussian distribution.
  • ⁇ 2 is determined based on the value of the covariance matrix ⁇ when the distance between them and the center of gravity is approximated by a Gaussian distribution.
  • the smaller one of the (1,1) component and the (2,2) component of ⁇ may be used, the larger one may be used, or the average value of them may be used.
  • the example in which the stay determination is performed based on the Euclidean distance has been described so far.
  • the Mahalanobis distance may be calculated using this ⁇ , and the stay determination may be performed based on the Mahalanobis distance.
  • the Mahalanobis distance is a distance given by Equation 11.
  • x in Expression 11 is a vector representing the latitude and longitude of the GPS positioning point
  • is a vector representing the latitude and longitude of the center of gravity.
  • FIG. 46 is a flowchart for explaining a process for determining whether or not the main trip has ended at time t i ⁇ 1 while dynamically changing the threshold value ⁇ for stay determination.
  • the processes of S4601 and S4602 are added to the process of FIG. 15 (details of S1109).
  • the processes denoted by the same reference numerals as those in the flowchart of FIG. 15 are the same as the processes in the first embodiment, and thus description thereof is omitted here.
  • the stay determination threshold value calculation unit 4401 calculates the threshold value ⁇ using the GPS points stored in the temporary array. Since this calculation method is the same as the example described with reference to FIG. 45 (S4503), the description is omitted here. Again, the Mahalanobis distance may be used.
  • the threshold value for staying is dynamically determined as described above, even if the GPS positioning error differs depending on the region or time zone, the threshold value corresponding to the error level at that time can be automatically determined. Therefore, the accuracy of stay determination can be improved.
  • the present invention relates to a trip attribute estimation system with a clustering function for each behavior pattern.
  • the daily living behavior patterns of people have a certain degree of regularity, and can be classified into several groups based on the living behavior patterns. For example, from Monday to Friday, work patterns from around 9 am to evening or evening, office worker patterns that are closed on Saturdays and Sundays, and long stays at home, and from 10 am to evening on weekdays
  • An example of this is the housewife pattern, where customers frequently go shopping during the period.
  • more accurate estimation is possible if such a life pattern can be taken into consideration when estimating the purpose of movement. For example, even if a trip starts in the same time zone in the afternoon, the behavior pattern is likely to be a business trip in the case of the office worker pattern, whereas it is likely to be a purchase in the case of the housewife pattern.
  • the discrimination according to However, the company employee pattern and housewife pattern are given here as examples to simplify the explanation and it is not necessary to give meaning to each group.
  • a specific processing method will be described by taking the case of movement purpose estimation as an example.
  • FIG. 47 is a diagram illustrating a configuration example of a trip attribute estimation system 4700 with a clustering function for each living activity pattern according to the fifth embodiment.
  • the trip attribute estimation system 4700 with a clustering function for each lifestyle pattern includes a lifestyle pattern clustering unit 4701, a lifestyle pattern DB 4702, and a lifestyle pattern class calculation unit. 4703 and a living behavior pattern-specific discrimination reference value DB 4704.
  • the trip attribute estimation system 4700 with a clustering function for each living behavior pattern collects GPS data and acceleration sensor data using a number of terminals in advance as a learning phase, and some of the data is collected from the data by the living behavior pattern clustering unit. Are extracted and stored in the living behavior pattern DB 4702. At this time, a memo (record) or the like is left for the start time / end time of each main trip and the purpose of movement. Then, for each group, a discrimination reference value used in trip attribute estimation is obtained and stored in the discrimination reference value DB 4704 for each living behavior pattern.
  • the life behavior pattern class calculation unit 4703 first classifies the estimation target data into several patterns, and then extracts the trip attribute using the discrimination reference value according to the classification.
  • specific processing will be described.
  • FIG. 48 is a flowchart for explaining processing by the living behavior pattern clustering unit 4701.
  • the learning means 104 sequentially executes the trip movement means estimation process (S503), the trip extraction section 105 executes the trip extraction process (S504), and the movement purpose estimation section 108 for the learning data for each terminal ID. Executes the movement purpose estimation process (S507).
  • the living behavior pattern clustering unit 4701 clusters IDs based on the feature amount.
  • the clustering feature amount for example, the average start time of the first trip on weekdays, the average end time of the last trip on weekdays, the difference between the average start time of the first trip on weekdays and the average start time of the first trip on holidays, For example, the average number of trips per day.
  • a clustering method for example, a K-means method or a Ward method can be used. In this case, the number of clusters for clustering may be set according to the number of assumed daily behavior patterns.
  • the living behavior pattern clustering unit 4701 stores a label and a feature amount for each cluster in the living behavior pattern DB 4702. For example, when the K-means method is used, the position of the center of gravity of each class in the feature amount space may be stored.
  • FIG. 49 is an example of data stored in the living behavior pattern DB 4702 in this case.
  • N is the number of feature quantities used for clustering. For example, here, as feature quantities, (i) the start time of the first trip of the day, (ii) the average number of trips per day, and (iii) the average distance of trips per day are considered.
  • the living behavior pattern clustering unit 4701 After creating a cluster for each living behavior pattern in this way, the living behavior pattern clustering unit 4701 next determines a discrimination reference value to be used for trip attribute estimation for each cluster, and discriminates by each living behavior pattern. It is stored in the reference value DB 4704. For example, as described in the first embodiment, “attribute of whether trip date is weekday or holiday”, “trip start time”, “distributed value of acceleration sensor data at the time of stay immediately after”, “whether it is the last trip of one day” When the feature quantity is used, these weight values for each purpose of movement are learned and stored in the discrimination reference value DB 4704 for each living activity pattern.
  • FIG. 50 is a diagram illustrating an example of data stored in the discrimination reference value DB 4704 for each living behavior pattern.
  • the weighting method is changed according to the class and the purpose of movement.
  • the travel purpose p1 is a business trip and p2 is a shopping
  • a class A user may increase the weight during a business trip, or a class B user may increase the shopping weight. is there. Therefore, even if the trips are at the same time, if the classes are different, the ease of specifying the purpose of travel (for example, shopping) differs.
  • the living behavior pattern class calculation unit 4703 processes the estimation target data for each terminal ID, and uses the data of each terminal ID to calculate the same feature amount as that used in the clustering by the living behavior pattern clustering unit 4701. To do. This result is given as an N-dimensional feature quantity vector when the number of feature quantities is N.
  • the living behavior pattern class calculation unit 4703 refers to the living behavior pattern DB 4702 to obtain a class to which the feature vector belongs. Specifically, the distance from the center of gravity of each class stored in the living behavior pattern DB 4702 is calculated, and the one with the shortest distance is determined as the class to which the terminal ID belongs. Then, the living behavior pattern class calculation unit 4703 reads out the discrimination reference value of the class from the discrimination reference value DB 4704 for each living behavior pattern, and estimates the purpose of movement of each main trip using the reference value.
  • trip attributes are estimated using the trip attribute estimation system shown in the first to fifth embodiments, and the data is statistically processed.
  • the present invention relates to a traffic behavior characteristic survey system for easily investigating traffic behavior characteristics of people in a certain city or region.
  • FIG. 51 is a diagram illustrating a configuration example of a traffic behavior characteristic survey system 5100 according to the sixth embodiment.
  • the traffic behavior characteristic survey system 5100 includes a traffic behavior characteristic data creation unit 5101 that performs statistical processing on the estimated trip attribute, and displays the result.
  • the traffic behavior characteristic survey system 5100 first performs trip attribute estimation of data collected by a plurality of portable terminals using a trip attribute estimation system (any of the first to fifth trip attribute estimation systems may be used). .
  • the traffic behavior characteristic data creation unit 5101 statistically processes the trip attribute estimation result to create traffic behavior characteristic data.
  • the traffic behavior characteristic visualization unit 5102 visualizes the traffic behavior characteristic data and presents it to the user.
  • the target area is divided into grids as shown in FIG. 52, and the user selects a grid to be subjected to statistical processing, and statistical data relating to the selected grid (for example, a specific area from each grid) It is possible to display the number of users who have moved to).
  • statistical data presentation as shown in FIG. 53, trips flowing into the area, trips flowing out of the area, trips staying in the area, passing through the area For each trip, it is possible to display the proportion of the main means of transportation used.
  • the main transportation means is defined as the longest travel distance among the sub-trips included in one main trip. It may be defined as the longest travel time.
  • An inflow trip is a trip outside O in the region and D is a trip inside the region
  • an outflow trip is a trip in the region where O is outside the region.
  • a stay trip is a trip in the area where both O and D are in the area
  • a passing trip is a trip in which O and D are outside the area, but one or more points on the travel route are in the area. And Any of these can be extracted by referring to the trip attribute estimation result storage DB 111.
  • the ratio of the purpose of movement may be displayed. Further, the distribution of where the departure area is at the time of inflow may be output, or the distribution of where the arrival area is at the time of outflow may be output. The user may be allowed to select two points, and the ratio of transportation means used for movement between the two points may be indicated.
  • the target area is divided into grids and the user selects an example.
  • the user can draw an arbitrary figure such as a circle or a quadrangle on the map, and the points within the range of the figure are described above.
  • the statistical processing may be performed.
  • the above-mentioned statistics may be displayed separately for each time zone during the day, or two days of traffic such as weekdays and holidays, normal times and disasters, or when any event is held. It may be displayed side by side so that differences in behavioral characteristics can be compared.
  • the target of statistical processing may be a main trip unit or a sub-trip unit.
  • the GPS data and acceleration sensor data described in the embodiments so far it is preferable to install and operate an application that operates on a smartphone or the like on the terminal.
  • an application that operates on a smartphone or the like on the terminal.
  • tie-up with a business operator utilizing the traffic behavior characteristic survey results as described in the sixth embodiment for example, a local store or a traffic business operator, install this application, and provide data.
  • the giver can be encouraged to use the application by distributing a coupon that can be used at a local store, or by giving a privilege such as being able to board a transportation system at a discounted fare.
  • Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by a processor executing a program that realizes each function.
  • Information such as programs, tables, and files for realizing each function is stored in a storage device (memory), a recording device such as a hard disk or SSD (Solid State Drive), or non-temporary such as an IC card, SD card, or DVD. It can be stored in a recording medium.
  • control lines and information lines indicate what is considered necessary for explanation, and do not necessarily indicate all control lines and information lines necessary for mounting on the product. Actually, it may be considered that almost all the components are connected to each other.
  • trip attribute estimation system 101 ... GPS receiver 102 ... acceleration sensor 103 ... DB for storing sensor data 104 ... Moving means estimation unit 105 ... Trip extraction unit 106 ... OD estimation unit 107 ... Path estimation unit 108 ... Movement purpose estimation unit 109 ... Correction unit 110 ... Between trip attributes DB for storing related information 111 ... Trip attribute estimation result storage DB 112 ... POI information storage DB 113 ... DB for storing discrimination reference value DESCRIPTION OF SYMBOLS 200 ... Portable terminal 201 ... Input device 202 ... Communication interface 203 ... Central processing unit (processor) 204 ... Storage device (memory) 205 ... output device 400 ... computer 401 ... input device 402 ...
  • central processing unit 403 ... communication interface 404 ... main storage device 405 ... auxiliary storage device 406 ... output Device 4100: Trip attribute estimation system 4101 with a database automatic construction function for storing related information between trip attributes 4101 ... Trip attribute related information automatic extracting unit 4400 ... Trip attribute estimation system 4401 with a staying judgment threshold automatic adjustment function ⁇ Residence determination threshold calculation unit 4700 ⁇ Trip attribute estimation system 4701 with clustering function for each living behavior pattern ⁇ ⁇ ⁇ Living behavior pattern clustering unit 4702 ⁇ ⁇ ⁇ Living behavior pattern DB 4703: Living behavior pattern class calculation unit 4704: Discrimination reference value DB for each living behavior pattern 5100: Traffic behavior characteristic survey system 5101: Traffic behavior characteristic data creation unit 5102: Traffic behavior characteristic visualization unit

Abstract

 安価に、かつ精度良くトリップ属性の推定を行うことができる技術を提供する。このため、本発明では、例えば、移動手段、移動目的、発着地、移動経路などの複数のトリップ属性の関連性を考慮しながら、異なるトリップ属性間で相互に推定結果を参照して推定結果の補正を行うことを提案する。より具体的には、携帯端末から取得したGPSデータ及び加速度センサデータを用いて、携帯端末を保持するユーザの移動の特徴を規定する、複数のトリップ属性を推定する。その際、コンピュータは、複数のトリップ属性の推定結果に含まれる第1のトリップ属性の推定結果を補正した場合に、当該第1のトリップ属性の推定結果と、複数のトリップ属性間の関連性を定義するトリップ属性間関連情報とを用いて、第1のトリップ属性とは異なる第2のトリップ属性の推定結果を補正する(図1参照)。

Description

トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム
 本発明は、トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システムに関し、例えば、携帯端末で収集されるセンサデータを用いて端末保持者のトリップ属性情報を推定するための技術に関する。
 従来から、都市計画や交通計画を立てる際には、都市内の人の移動情報(移動手段・移動目的・発着地・移動経路など)を調査する、パーソントリップ調査の結果が活用されてきた。このパーソントリップ調査は、対象都市の住人にアンケート用紙を配布して、調査日の1日の行動を、記憶を頼りに記入してもらうという形式で行われている。ところが、この調査は、アンケートの配布・集計などを手作業で実施するため、実施のためのコストが大きく、10年に1度程度しか実施できないという制約がある。また、記憶を頼りに記入してもらうため、調査結果の正確性が疑問視されている。それに対して、近年普及が進んでいるスマートフォンなどの携帯端末を利用して、低コストかつ高頻度に、そして正確に、人の移動情報を把握したいという需要が広がっている。
 例えば、特許文献1には、加速度センサなどのセンサから得られるデータと、道路状況などのセンサの値に影響を与える要因を考慮して、端末の移動手段を判別するシステムが開示されている。より詳細には、時間的に連続する判別結果(移動手段という同一属性の中での判別結果)を参照して補正することで移動手段判別の精度を向上させる方法、及び、ある一台の端末の周囲に存在する複数の端末における判別結果を参照して補正することで、移動手段判別の精度を向上させる方法が記載されている。例えば、所定時間間隔での判別結果が車→車→車→バイク→車→車・・・であった場合、途中のバイクという判別結果が誤りである可能性が高く、これを車に補正するというものである。
 また、特許文献2には、ユーザの位置や移動に使用している乗り物等ばかりでなく、ユーザの行動の目的をも推定することができる情報サービス提供システムが開示されている。より詳細には、対象の位置、移動速度、加速度、移動方向、移動の時間帯にかかる情報の少なくとも1つを含む情報である移動情報を収集し、収集された情報に基づいて対象が移動中であるか否かを判定する。移動中であると判定された場合には対象の移動手段を判定し、判定された対象の移動手段に基づいて対象の行動の目的を推定する。また、推定された目的に応じて情報を選択し、選択された情報に基づくサービスを対象に提供する。
WO2013/179359号公報 特開2008-152655号公報
 使用するセンサにノイズやデータの欠損が発生する場合や、端末保持者が通常とは異なる行動を取った場合などには、移動手段や移動目的などの推定結果の推定が困難になることがしばしばある。これに対して、特許文献1では、時間的に連続する判別結果を参照して補正することで移動手段判別の精度を向上させ、また、ある1台の端末の周囲に存在する複数の端末における判別結果を参照して補正することで移動手段判別の精度を向上させている。
 この点、特許文献1では、移動手段という、移動に関する属性(以下、これをトリップ属性と呼ぶ)のうちの1種類のみ考慮されており、それに着目した補正方法が提案されている。この場合、例えば、多数決などの比較的簡易な方法により、トリップ属性の補正を行うことができる。これに対し、例えば、移動手段の推定精度は高くないものの、移動目的が精度よく推定できていれば、その目的から移動手段を推定できるような場合が考えられる。
 しかしながら、移動手段の推定精度があまり高くないときに、時間的に連続する判別結果や、周囲に存在する端末における判別結果を用いて補正をしようすると、誤った結果に補正してしまうことがある。移動目的の推定結果を用いれば、移動手段の識別結果を正確に補正することが可能であるが、特許文献1に記載の方法では、他のトリップ属性情報を用いた補正を行うことはできない。
 また、特許文献2は、移動手段の判別結果を用いて、移動目的を推定することについて開示するが、これらのトリップ属性間の関連性を考慮した補正については記述されていない。ここで、移動手段の推定精度はよくないものの、移動目的が移動手段によらない方法で精度よく推定出来ていたときに、特許文献2に記載の方法で移動目的の推定を行うと、誤りが生じる可能性が高くなる。逆に、移動目的から移動手段の推定結果を補正することができれば、より精度の高い推定が可能となる。
 本発明はこのような事情に鑑みてなされたものであり、トリップ属性を推定することができる技術を提供するものである。
 上記課題を解決するために、本発明は、例えば移動手段、移動目的、発着地、移動経路などの複数のトリップ属性の関連性を考慮しながら、異なるトリップ属性間で相互に推定結果を参照して推定結果の補正を行うことを提案する。
 より具体的には、本発明では、コンピュータが、携帯端末から取得したGPSデータ及び加速度センサデータを用いて、携帯端末を保持するユーザの移動の特徴を規定する、複数のトリップ属性を推定する。その際、コンピュータは、複数のトリップ属性の推定結果に含まれる第1のトリップ属性の推定結果を補正した場合に、当該第1のトリップ属性の推定結果と、複数のトリップ属性間の関連性を定義するトリップ属性間関連情報とを用いて、第1のトリップ属性とは異なる第2のトリップ属性の推定結果を補正する。
 本発明に関連する更なる特徴や効果は、本明細書の記述、添付図面から明らかになるものである。また、本発明の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。
 本明細書の記述は典型的な例示に過ぎず、本発明の特許請求の範囲又は適用例を如何なる意味に於いても限定するものではないことを理解する必要がある。
 本発明によれば、端末保持者のトリップ属性を精度良く、かつ安価に推定することができるようになる。
本発明の第1の実施形態によるトリップ属性推定システム100の構成例を示す図である。 トリップ属性推定システムを実現する携帯端末の構成例を示す図である。 センサデータ格納用DB103に格納されるGPSデータの例を示す図である。 センサデータ格納用DB103に格納される加速度センサデータの例を示す図である。 トリップ属性推定システムを実現する計算機の構成例を示す図である。 トリップ属性を推定する処理の全体概要を説明するためのフローチャートである。 移動手段推定の処理フローの一例を表すフローチャートである。 判別基準値格納用DB113に格納されている移動手段判別用基準値の例を示す図である。 トリップ属性推定結果格納用DB111に格納される移動手段推定結果の例を示す図である。 判別基準値格納用DB113に格納されている、特徴量の値の範囲と移動手段毎の確率の例を示す図である。 トリップ属性推定結果格納用DB111に格納される、移動手段別の推定確率の例を示す図である。 本発明におけるメイントリップ、サブトリップの概念を説明するための図である。 トリップ抽出処理(S504)の詳細を説明するためのフローチャートである。 トリップ開始時刻を抽出した後の、トリップ属性推定結果格納用DB111に含まれる、メイントリップ情報格納用DBのデータの例を示す図である。 S1107の処理後の、トリップ属性推定結果格納用DB111に含まれる、サブトリップ情報格納用DBのデータの例を示す図である。 S1110の処理後の、トリップ属性推定結果格納用DB111に含まれる、メイントリップ情報格納用DBのデータの例を示す図である。 ある1つの端末IDに対してトリップ抽出処理(S504)を終えた後の、トリップ属性推定結果格納用DB111に含まれるメイントリップ情報格納用DBのデータの例を示す図である。 ある1つの端末IDに対してトリップ抽出処理(S504)を終えた後の、トリップ属性推定結果格納用DB111に含まれるサブトリップ情報格納用DBのデータの例である。 次のメイントリップの開始点を探す処理(S1101)の詳細を説明するためのフローチャートである。 ある時刻でメイントリップが終了しているかどうかを判定する処理(S1109)の詳細を説明するためのフローチャートである。 OD推定処理後の、メイントリップ情報格納用DBのデータの例を示す図である。 OD推定処理後の、サブトリップ情報格納用DBのデータの例を示す図である。 トリップ属性推定結果格納用DB111に含まれる経路情報格納用DBに格納されるデータの例を示す図である。 移動目的推定処理(S507)の後の、メイントリップ情報格納用DBのデータの例を示す図である。 トリップ属性推定結果格納用DB111の中の移動目的別確率値DBに格納されるデータの例である。 補正処理(S508)を説明するためのフローチャートである。 OD補正処理(S2003)の詳細を説明するためのフローチャートである。 トリップ属性間関連情報格納用DB110に含まれる移動目的-OD関連情報格納用DBに格納されるデータの例を示す図である。 POI情報格納用DB112に含まれるPersonal POI用DBのデータの例を示す図である。 POI情報格納用DB112に含まれるSocial POI用DBのデータの例を示す図である。 移動手段補正処理(S2004)の詳細を説明するためのフローチャートである。 リップ属性間関連情報格納用DB111に含まれるOD-移動手段間関連情報格納用DBのデータの例を示す図である。 経路補正処理(S2006)の概念を示す図である。 移動目的の推定結果を補正する処理(S2007)の詳細を説明するためのフローチャートである。 トリップ属性間関連情報格納用DB110に含まれる移動目的-移動手段関連情報格納用DBのデータの例を示す図である。 トリップ属性間関連情報格納用DB110に含まれるOD-経路関連情報格納用DBのデータの例を示す図である。 経路情報からODを補正する処理における経路マッチングの概念を示す図である。 本発明の第2の実施形態による交通行動制約条件付トリップ属性推定システム3100の構成例を示す図である。 交通行動制約を用いる場合のOD補正処理の詳細を説明するためのフローチャートである。 交通行動制約条件格納用DB3101に含まれる移動手段別最高速度情報格納用DBのデータの例を示す図である。 交通行動制約を用いる場合の移動手段補正処理の詳細を説明するためのフローチャートである。 交通行動制約条件格納用DB3101に含まれる移動手段遷移確率格納用DBのデータの例(1)を示す図である。 交通行動制約条件格納用DB3101に含まれる移動手段遷移確率格納用DBのデータの例(2)を示す図である。 交通行動制約を用いる場合の移動目的補正処理の詳細を説明するためのフローチャートである。 交通行動制約条件格納用DB3101に含まれるトリップ発生頻度情報格納用DBのデータの例を示す図である。 本発明の第3の実施形態によるPOI情報格納用DB自動構築機能付トリップ属性推定システム3800の構成例を示す図である。 自宅の位置を推定する処理を説明するためのフローチャートである。 勤務先の位置を推定する処理を説明するためのフローチャートである。 本発明の第3の実施形態によるトリップ属性間関連情報格納用DB自動構築機能付トリップ属性推定システム4100の構成例を示す図である。 OD-移動手段間関連情報格納用DBを自動的に構築する処理を説明するためのフローチャートである。 移動目的-移動手段関連情報格納用DBを自動的に構築する処理を説明するためのフローチャートである。 本発明の第4の実施形態による滞留判定閾値自動調整機能付トリップ属性推定システム4400の構成例を示す図である。 滞留判定用の閾値θ2を動的に変更しながら次のメイントリップの開始点を探す処理(S1101)の詳細を説明するためのフローチャートである。 滞留判定用の閾値θを動的に変更しながら時刻ti-1でメイントリップが終了しているかどうかを判定する処理(S1109)の詳細を説明するためのフローチャートである。 本発明の第5の実施形態による生活行動パターン別クラスタリング機能付トリップ属性推定システム4700の構成例を示す図である。 生活行動パターンクラスタリング部4701の処理を説明するためのフローチャートである。 生活行動パターンDB4702に格納されるデータの例を示す図である。 生活行動パターン別判別基準値DB4704に格納されるデータの例を説明するための図である。 本発明の第6の実施形態による交通行動特性調査システム5100の構成例を示す図である。 調査対象地域を選択するためのグリッド表示の例を示す図である。 ユーザに提示する交通行動特性データの統計処理結果の例を示す図である。
 以下、添付図面を参照して本発明の実施形態について説明する。添付図面では、機能的に同じ要素は同じ番号で表示される場合もある。なお、添付図面は本発明の原理に則った具体的な実施形態と実装例を示しているが、これらは本発明の理解のためのものであり、決して本発明を限定的に解釈するために用いられるものではない。
 本実施形態では、当業者が本発明を実施するのに十分詳細にその説明がなされているが、他の実装・形態も可能で、本発明の技術的思想の範囲と精神を逸脱することなく構成・構造の変更や多様な要素の置き換えが可能であることを理解する必要がある。従って、以降の記述をこれに限定して解釈してはならない。
 更に、本発明の実施形態は、後述されるように、汎用コンピュータ上で稼動するソフトウェアで実装しても良いし専用ハードウェア又はソフトウェアとハードウェアの組み合わせで実装しても良い。
 なお、以後の説明では「テーブル」形式によって本発明の各情報について説明するが、これら情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、DB、キュー等のデータ構造やそれ以外で表現されていても良い。そのため、データ構造に依存しないことを示すために「テーブル」、「リスト」、「DB」、「キュー」等について単に「情報」と呼ぶことがある。
 また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いることが可能であり、これらについてはお互いに置換が可能である。
 以下では、移動手段推定部等の各処理「部」を主語(動作主体)として本発明の実施形態における各処理について説明を行う。ただし、各処理部はプログラムによって構成され、また、プログラムはプロセッサによって実行されることで定められた処理を記憶装置(メモリ)及び通信ポート(通信制御装置)を用いながら行うため、中央演算処理装置(プロセッサ)を主語とした説明としてもよい。また、プログラムを主語として開示された処理は管理サーバ等の計算機、情報処理装置が行う処理としてもよい。プログラムの一部または全ては専用ハードウェアで実現してもよく、また、モジュール化されていても良い。
(1)第1の実施形態
 第1の実施形態は、GPS(Global Positioning System)受信機と加速度センサの計測値と、トリップ属性間関連情報、POI(Point Of Interest)情報、及び判別基準値情報から、トリップ属性を推定するトリップ属性推定システムに関するものである。
 <トリップ属性推定システムの構成>
 図1は、第1の実施形態に係るトリップ属性推定システム100の概略構成例を示すブロック図である。
 トリップ属性推定システム100は、GPS受信機101と、加速度センサ102と、センサデータ格納用DB103と、移動手段推定部104と、トリップ抽出部105と、OD(Origin and Destination, 移動の発着地を表す)推定部106と、経路推定部107と、移動目的推定部108と、補正部109と、トリップ属性間関連情報格納用DB110と、トリップ属性推定結果格納用DB111と、POI情報格納用DB112と、判別基準値格納用DB113と、を有している。
 また、トリップ属性推定システム100は、例えばGPS受信機や加速度センサを持つセンサデータ収集用の携帯端末と、推定処理を行う計算機で構成することができる。この場合、計算機内にセンサデータ格納用DB103と、移動手段推定部104と、トリップ抽出部105と、OD推定部106と、経路推定部107と、移動目的推定部108と、補正部109と、トリップ属性間関連情報格納用DB110と、トリップ属性推定結果格納用DB111と、POI情報格納用DB112と、判別基準値格納用DB113と、を持たせるようにして構成することができる。また、スマートフォンなどの、GPS受信機と加速度センサと演算部と記憶部を持つような1台の端末で構成することもできる。更には、スマートフォンなどの端末と演算処理用の計算機を用いて、演算処理の一部のみをスマートフォン内で行うようにしても良い。
 なお、1台の端末(携帯端末装置を含む)でトリップ属性推定システム100を実現する場合、例えば図2のようなハードウェア構成の携帯端末200を用いることができる。図2において、中央演算処理装置203は、記憶装置204に格納されたプログラムを実行するプロセッサである。記憶装置204は、DRAM(Dynamic Random Access Memory)等の高速かつ揮発性の記憶装置(図示せず)と、フラッシュメモリ等の大容量かつ不揮発性の記憶装置(図示せず)とを含む。揮発性記憶装置は、オペレーティングシステム(OS)及びアプリケーションプログラムを格納する。中央演算処理装置203は、アプリケーションプログラムを実行することによって、移動手段推定部104、トリップ抽出部105、OD推定部106、経路推定部107、移動目的推定部108、補正部109の機能が実現される。この処理の詳細については後述する。
 記憶装置204に含まれる不揮発性記憶装置は、中央演算処理装置203が実行するプログラム及びプログラム実行時に使用されるデータを格納する。すなわち、中央演算処理装置203が実行するプログラムは、不揮発性記憶装置から読み出されて、揮発性記憶装置(DRAM)にロードされて、中央演算処理装置203によって実行される。通信インタフェース202は、無線回線(例えば、携帯電話回線、専用無線回線)と信号を送受信する無線送受信機を含む。入力装置201は、利用者が操作するキーボード、タッチパネルなどである。出力装置205は、利用者に情報を表示する表示装置(例えば、液晶表示パネル)である。
 GPS受信機101は、GPS衛星からの信号を受信して、信号を受信した時刻と、その時の位置情報(緯度、経度)を出力する。可能であれば、電波の発生源とその受信装置との相対速度によって観測される周波数が異なるというドップラーシフトの効果を測ることで算出できる端末の移動速度も同時に出力できるとなお良い。加速度センサ102は、3軸の加速度の値とその値が観測された時刻を出力する。これらのセンサの計測値は、記憶装置204の中のセンサデータ格納用DB103に格納される。この際、どの端末で収集したデータかを識別するために、例えばIMEI(International Mobile Equipment Identity)などの、端末固有のIDを付与しておくとよい。
 図3Aはセンサデータ格納用DB103に格納されるGPSデータの例を示し、図3Bは加速度センサデータの例(3軸の加速度センサ:それぞれ重力の大きさと方向を示す)を示す図である。時刻はUnix Time(Unixは登録商標)など、日付と時刻が一意に特定できるものが望ましい。
 図4は、GPS受信機101や加速度センサ102を有する端末とは別に、演算処理を行う計算機を用いる場合の計算機内部のハードウェア構成例を示す図である。中央演算処理装置(プロセッサ)402は、主記憶装置403に格納されたプログラムを実行する。主記憶装置404は、例えば、DRAMのような高速かつ揮発性の記憶装置であり、オペレーティングシステム及びアプリケーションプログラムを格納する。中央演算処理装置402が、オペレーティングシステムを実行することによって、計算機400の基本機能が実現され、アプリケーションプログラムを実行することによって、移動手段を判別する機能が実現される。補助記憶装置405は、例えば、磁気記憶装置、フラッシュメモリ等の大容量かつ不揮発性の記憶装置であり、中央演算処理装置402によって実行されるプログラム及びプログラム実行時に使用されるデータを格納する。すなわち、中央演算処理装置402が実行するプログラムは、補助記憶装置405から読み出されて、主記憶装置404にロードされて、中央演算処理装置402によって実行される。通信インタフェース403は、計算機400をネットワークに接続し、他の装置との通信を制御する。入力装置401は、例えばキーボード及びマウスである。出力装置406は、判別結果などを表示するための表示装置(例えば、液晶表示パネル)である。
 GPS受信機101や加速度センサ102から得られた計測値は、各々の通信インタフェース202及び通信インタフェース403を介して計算機400に送信してもよい。また、携帯端末200と計算機400を例えばUSB(Universal Serial Bus)ケーブルなどを用いて接続して計算機400に送信してもよい。さらに、CDやDVDなどの外部記憶媒体に一度書き出してから、それを計算機400が読み込むようにしてもよい。このような場合、計算機400は、USBを介してデータを送受信するためのインタフェースや記憶媒体(CD-ROM、フラッシュメモリ等)を読み込むインタフェースを備えるとよい。
 <トリップ属性推定プロセスの全体処理>
 次にトリップ属性を推定するプロセスについて説明をする。図5は。本発明の実施形態によるトリップ属性推定プロセスの全体処理を説明するためのフローチャートである。まず図5を用いて処理の全体の流れについて説明し、個々のステップにおける詳細な説明については別のフローチャートを用いて後述することとする。
 S501:当該ステップで変数が設定される。Nはセンサデータ格納用DB103に格納されている端末IDの数を表す。ここでは、端末ID毎に順次処理を行うものとする。
 S502:中央演算処理装置203或いは402(以下、「プロセッサ」ということもできる)は、処理対象となる端末IDに該当するデータだけをセンサデータ格納用DB103から読み込む。
 S503:移動手段推定部104は、移動手段を時刻ごとの該当端末保持者の移動手段を推定し、ラベルを付与していく。
 S504:トリップ抽出部105は、連続するセンサデータの中から移動している時間帯のみを抽出する。
 S505:OD推定部105は、抽出されたトリップごとのOD情報を推定する。
 S506:経路推定部107は、移動経路を推定する。
 S507:移動目的推定部108は、トリップごとの移動目的を推定する。
 S508:最後に、補正部は、トリップ属性間関連情報格納用DB110やPOI情報格納用DB112に格納されている情報を参照しながら、各トリップ属性の推定結果を必要に応じて補正する。
 <移動手段推定処理の詳細>
 図6は、移動手段推定部104が移動手段を推定する処理(S503)の詳細を説明するためのフローチャートである。
 S601:当該ステップで変数が設定される。ここで、Nは加速度センサのデータ数を表す。処理対象の端末IDのデータを時系列に並べ時間的に速いものから順に処理が実行される。
 S602:移動手段推定部104は、時刻iに端末保持者が歩行していたかどうかを判定する。この判定は、一般的に、端末保持者が歩行していた場合、加速度センサのデータが時刻iの前後所定時間(つまり、所定の時間ウインドウ幅のデータを用いる)において一定のリズムで上下する波形となることを利用する。具体的には、まず前処理として、3軸の加速度センサデータから、ノルム値を計算しておく。ここで、ノルム値とは式1で表される量である。以下、加速度センサデータと記述する場合には、このノルム値を指すものとする。次に、例えば、時刻iの前後1秒間の加速度センサデータを参照し、これらのデータにFFT(Fast Fourier Transform)を適用する。そして、FFTにより得られたデータのうち、例えば1Hzから3Hzに相当する区間のパワーを計算し、これが所定の閾値以上であれば歩行であると判断する。
Figure JPOXMLDOC01-appb-M000001
 S603:移動手段推定部104は、i番目のデータに対し、「歩行」を表すラベルを出力する。この歩行判定のための閾値は、予め判別基準値格納用DB113に格納しておくと良い。この処理は、歩行という動作が周期性を持った運動であり、多くの人が1秒間に2歩程度歩くことから、歩行時のデータには2Hz前後の周波数帯に強いピークが現れる傾向を利用した推定方法である。前後1秒間のデータが存在しない計測開始直後や計測終了直前のデータに対しては、それぞれ後1秒間のみ、前1秒間のみのデータを使用するとよい。
 S604:S602で歩行が検出されなかった場合は、移動手段推定部104は、時刻iに端末保持者が静止していたかどうかを判定する。このために、例えば、時刻iの前後1秒間の加速度センサデータを参照し、この区間の加速度センサデータの分散値を計算する。そして、この分散値が所定の閾値以下であれば静止であると判断する。
 S605:移動手段推定部104は、i番目のデータに対し、「静止」を表すラベルを出力する。この静止判定のための閾値は、予め判別基準値格納用DB113に格納しておくと良い。この処理は、移動時には、移動の動きに伴って振動が発生するのに対し、静止している際には、端末にはほとんど振動が発生しないという特徴を利用した推定方法である。前後1秒間のデータが存在しない計測開始直後や計測終了直前のデータに対しては、それぞれ後1秒間のみ、前1秒間のみのデータを使用するとよい。
 S606:S604で静止が検出されなかった場合、移動手段推定部104は、時刻iにおいて端末保持者は何らかの乗り物に乗っていたものとみなし、その乗り物の種類の判別を行う。乗り物の種類の判別には、例えば、移動速度を用いることができる。即ち、例えば、時刻iの前後10秒間に存在するGPSデータを参照し、このGPSデータから該当区間の端末の平均移動速度を計算する。ドップラーシフトの効果から計算される速度情報が各GPS点に付与されて得られている場合は、移動手段推定部104は、単にその値の平均値を用いることができる。一方、その情報が得られていない場合は、移動手段推定部104は、連続する2点の緯度・経度と時刻差からその2点間における移動速度を計算し、該当区間における平均値を算出すれば良い。そして、判別基準値格納用DB113に格納された乗り物ごとの移動速度帯を参照して、乗り物の種類を判別する。この基準値は、例えば図7のような値を予め手入力で判別基準値格納用DB113に格納しておくようにしても良い。また、実際に各乗り物に乗ってその速度を計測し、その値に基づいて決定するようにしておいてもよい。また、該当区間においてGPSデータが存在しない場合は、初期値として例えば車など、何らかの乗り物を割り当てておいてそれを出力するようにしても良いし、「不明」というラベルを出力するようにしても良い。
 以上のようにして、移動手段推定部104は、加速度センサデータの収集時刻ごとに移動手段ラベルを付与していき、その結果をトリップ属性推定結果格納用DB111に格納する。
 なお、図8は、トリップ属性推定結果格納用DB111に格納されるデータの例を示す図である。図8に示されるように、移動手段推定処理(図6)で算出された、各時刻における移動手段がそれぞれ特定されている。
 また、ここまで各時刻の移動手段を決定的に判定していく方法を説明したが、次のように各移動手段の確率から判定するようにしても良い。例えば、図9Aのように、各ステップにおいて計算する値の範囲と移動手段毎の確率を判別基準値格納用DB113に格納しておく。ここで、1~3Hzにおける加速度センサデータのパワー、分散、及び速度は条件を示し、対応する条件における各移動手段の確率がそれぞれ示されている。例えば、図9Aの1行目は、1~3Hzにおけるパワーが閾値θ1より小さく、加速度センサデータの分散が閾値θ2より小さく、平均移動速度がV~Vに含まれる場合に、移動手段が歩行乃至新幹線である確率はそれぞれP1,1乃至P1,7であることを示している。そして、図9Bのように最も高い確率を持つ移動手段を当該時刻の移動手段として出力すると共に、移動手段別の確率も出力するようにして、後の補正ステップで使用するようにしても良い。ここで、図9Bでは、各時刻において最も高い確率をもつ移動手段が強調して示されている。もちろん、このような方法の他に、予め各移動手段で移動している際のデータ収集をして、ここで説明した1~3Hzのパワー、加速度の分散、及び平均移動速度等の特徴量を計算しておく。そして、SVM(Support Vector Machine)、NN(Neural Network)などの機械学習の手法を用いてこれら特徴量の値と移動手段との間の関連を学習しておき、その学習結果を判別基準値格納用DB113に格納しておくようにしても良い。この場合、移動手段が未知のデータが得られた場合には、学習時に使用した機械学習の手法に応じた識別手法を用いて決定的、または確率的に移動手段の推定結果を出力するようにすればよい。
 <トリップ抽出処理>
 次に、S504において、トリップ抽出部105が連続するセンサデータの中から、端末保持者が移動していた時のデータだけを抽出する処理の詳細について説明をする。まず、本発明の実施形態における「トリップ」の定義について説明する。本発明の実施形態においては、「通勤」「買い物」「帰宅」など、1つの移動目的に対応する一連の移動をメイントリップと定義する。一方、「歩行」「バス」「電車」など、1つの移動手段に対応する移動をサブトリップと定義する。従って、メイントリップは1つまたは複数のサブトリップを含み得る概念である。例えば、通勤のために、自宅から最寄りの駅まで歩行で移動し、その後自宅の最寄駅から勤務先の最寄り駅まで電車で移動し、勤務先の最寄駅から勤務先まで歩行で移動した場合には、通勤を目的とする1つのメイントリップの中に、歩行・電車・歩行の3つのサブトリップが要素として含まれていることになる。つまり、トリップ抽出処理とは、端末を有するユーザが何らかの移動手段によって移動している部分を取り出すことをいうものである。図10は、本発明の実施形態におけるメイントリップ、サブトリップのイメージを示す図である。
 トリップ抽出部105では、このメイントリップ、サブトリップの開始時刻、終了時刻をそれぞれ推定する。図11はトリップ抽出処理の詳細を説明するためのフローチャートである。トリップ抽出部105は、トリップ属性推定結果格納用DB111に格納された移動手段ラベルの付与されたデータ(図8参照)を時刻順にスキャンしながら、トリップ抽出処理を行う。トリップ抽出処理では、加速度センサのデータのみが用いられる。
 S1100:トリップ抽出部105は、メイントリップごとに付与するIDを表す変数mainTripIDを初期化する。また、トリップ抽出部105は、移動手段ラベルの付与されたデータに対するインデックスを保持する変数iを0に初期化する。
 S1101:トリップ抽出部105は、初めのメイントリップ開始点(何番目のデータか)とそれに対応する時刻のサーチを行う。ここで、インデックスiは加速度センサデータのインデックスを示す。S1101の処理の詳細については図14を用いて後述する。メイントリップが見つからなかった場合は、ここで処理は終了する。メイントリップが見つかった場合は、処理はS1103に移行する。
 S1103:トリップ抽出部105は、開始点のインデックスをS、その時の時刻tsとおき、変数mainTripIDをインクリメントして、時刻tsとmainTripIDをトリップ属性推定結果格納用DB111の中のメイントリップ情報格納用DBに格納する。また、トリップ抽出部105は、後の参照のため、このメイントリップをcurrentMainTripとおく。図12Aはこの時のメイントリップ情報格納用DBの例を示す図である。この時点では、メイントリップ情報格納用DBには、現在処理対象の端末IDと、同一端末におけるメイントリップごとに一意に定まるメイントリップID、各メイントリップの開始時刻が記録される。終了時刻や、開始位置、終了位置、移動目的などの情報は後から登録される。
 S1104:トリップ抽出部105は、トリップ属性推定結果DB113を参照して、時刻tsにおける移動手段ラベルを取得し、これをpreviousModeとおく。
 S1105:ここからは、トリップ属性推定結果格納用DB111に格納された移動手段ラベルの付与されたデータをsから時刻順にスキャンしながら処理が進められる。ここで、図11のS1105におけるNは、トリップ属性推定結果格納用DB111に格納された移動手段ラベルの付与されたデータの数を表す。
 S1106:トリップ抽出部105は、i番目の点の移動手段がpreviousModeと等しいかどうかをチェックする。同じ移動手段が続いている場合(S1106でYesの場合)、処理はS1105に戻り、トリップ抽出部105はiをインクリメントする。別の移動手段に切り替わっている場合(S1106でNoの場合)、処理はS1107へ進む。
 S1107:トリップ抽出部105は、tsを開始時刻、ti-1を終了時刻、関連するメイントリップIDをmainTripID、移動手段をpreviousModeとするサブトリップを、トリップ属性推定結果格納用DB111の中のサブトリップ情報格納用DBに格納する。図12Bはこの時のメイントリップ情報格納用DBの例を示す図である。開始位置や終了位置については後から登録される。
 S1108:トリップ抽出部105は、previousModeをi番目のデータの移動手段ラベルに更新し、sにiを代入する。
 S1109:トリップ抽出部105は、時刻ti-1でメイントリップが終了しているかどうかを判定する。この方法の詳細については、図15を用いて後述する。ti-1がメイントリップの終了点ではない場合(例えば、通勤という1つの移動目的で移動している際に、徒歩から電車に移動手段が切り替わっただけで、まだ通勤トリップが続いている場合)、処理はS1105に戻り、トリップ抽出部105は、iをインクリメントして、次のサブトリップ情報の抽出処理を行う。一方、ti-1まででメイントリップが終了している場合、処理はS1110へ進む。
 S1110:トリップ抽出部105は、メイントリップIDがmainTripIdであるメイントリップの終了時刻として、メイントリップ情報格納用DBにti-1を記録する。図12Cは、この時のメイントリップ情報格納用DBの例を示す図である。
 S1111:最後に、トリップ抽出部105は、最終トリップの終了時刻が記録されないまま、S1105からのループを抜けた場合(即ち、最後の移動が終了した直後にデータ収集を終了したような場合(トリップが終了しないにも拘わらずデータ収集が終了してしまったような場合))、トリップ抽出部105は、tsを開始時刻、tN-1を終了時刻、関連するメイントリップIDをmainTripID、移動手段をpreviousModeとするサブトリップをサブトリップ情報格納用DBに記録する。また、トリップ抽出部105は、メイントリップの終了時刻としてtN-1をメイントリップ情報格納用DB(図12A参照)に記録して、処理を終了させる。
 図13A及びBは、それぞれ、ある1つの端末IDに対して、トリップ抽出処理S504を終えた後の、トリップ属性推定結果格納用DB111の中のメイントリップ情報格納用DBとサブトリップ情報格納用DBのデータの例を示す図である。
 <トリップ開始点探索処理>
 次に、S1101で実行される次のメイントリップの開始点を探す処理(トリップ開始点探索処理)について、図14を用いて詳細に説明する。図14は、トリップ開始探索処理の詳細を説明するためのフローチャートである。ここでの基本的な考え方は、一定の範囲内に一定の時間以上滞在している時間を「滞留」状態とみなし、逆に、その滞留している範囲から外れ始めたところから、次の滞留までの間を「移動」状態とみなすというものである。この移動状態の開始点(インデックス)を見つけることがS1101の処理の目的である。
 S1401:トリップ抽出部105は、各種初期化を行う。つまり、S1101の処理に入る際には、何番目のインデックス以降の次のメイントリップ開始点を探すかという情報が引数として与えられる。トリップ抽出部105は、このインデックスに対応する移動手段ラベルが付与されたデータ(加速度センサデータ)の時刻tsを参照し、当該端末のデータの中で、その時刻に最も近いGPSデータのインデックスを、センサデータ格納用DB103に格納されたデータの中から検索し、これをgpssとおく。また、このGPSデータの取得された時刻をtgpss とおく。さらに、滞留位置代表点の位置を時刻tgpssのGPSデータの位置に初期化する。ここで、滞留位置代表点とは、前記「滞留」状態の際に、滞留している場所を表す代表点の緯度・経度のことである。滞留代表点としては、例えば、滞留状態中に取得されるGPS点のうち、時間的に一番早い点の座標を用いても良いし、一番遅い点の座標を用いても良い。また、滞留状態中に取得されるGPS点の重心を用いても良いし、Geometric Medianを用いても良い。本発明の実施形態では、以下、重心を用いる方法を例にとって説明することとする。また、滞留している範囲から何データ分連続して外れたかをカウントするための変数threExceedCount、1つ前のGPS点の取得時刻を保持するための変数prevTime、重心を計算するのに用いる点の数を表す変数centCount、をそれぞれ0に初期化する。
 S1402:当該ステップからは、トリップ抽出部105は、GPSデータを時刻順にスキャンしながら処理を進める。尚、S1402におけるNは、当該端末のGPSデータの個数を表している。
 S1403:トリップ抽出部105は、まず、時刻tiに対応するGPSデータを取得する。
 S1404:トリップ抽出部105は、tiとprevTimeの差分を計算し、一定時間θより長く経過していた場合(S1404でYesの場合)、処理はS1406に移行する。経過時間が一定時間θ1以下である場合(S1404でNoの場合)、処理はS1407に移行する。
 S1406:トリップ抽出部105は、threExceedCountを0にリセットする。つまり、S1404及びS1406の処理は、一定期間(例えば1時間)以上の期間、GPSデータが電波障害等で取得できないときにはリセットし、新たにGPSデータを取得して改めてトリップ開始点を探索するために設けられたものである。
 S1407:トリップ抽出部105は、新たにGPSデータを取得するため、prevTimeに時刻tiをセットする。
 S1408:トリップ抽出部105は、i番目のGPS点と滞留位置代表点との距離dを計算する。これは、地球の半径をr、i番目のGPS点の緯度・経度を(lati, loni)、滞留位置代表点の緯度・経度を(latcentを, loncent)とすると、式2により研鑽することができる。
Figure JPOXMLDOC01-appb-M000002
 S1409:トリップ抽出部105は、dが所定の閾値θ2より小さいかどうかを判定する。dが所定の閾値θ2より小さい場合(S1409でYesの場合)、処理はS1410に移行する。dが所定の閾値θ2以上の場合(S1410でNoの場合)、処理はS1411に移行する。
 S1410:トリップ抽出部105は、滞留位置代表点の位置を更新し、centCountをインクリメントし、threExceedCountを0に初期化する。新しい滞留位置代表点の位置は、例えば、式3に従って算出することができる。
Figure JPOXMLDOC01-appb-M000003
 S1411:トリップ抽出部105は、threExceedCountをインクリメントする。
 S1412:トリップ抽出部105は、threExceedCountが所定の閾値θ3以上かどうかを判定する。つまり、代表点との距離が所定の閾値θよりも離れた点が連続して所定回数θ以上続いた場合に滞留状態を抜け、移動し始めたと判定することとしている。このようにすることにより、GPSデータにエラーがあったとしても誤判定する可能性を排除することができる。threExceedCountがθ3より小さい場合(S1412でYesの場合)、処理はS1402へ戻り、iをインクリメントして処理を続ける。threExceedCountがθ3以上の場合、即ち連続してθ3個以上所定の滞在範囲から出ているとき(S1412でYesの場合)、処理はS1413に移行する。
 S1413:トリップ抽出部105は、状態が「滞留」から「移動」に切り替わったものと判断し、時刻tiに最も近い、移動手段ラベルの付与されたデータのインデックスを取得する。
 S1414:トリップ抽出部105は、そのインデックスをreturnして処理を終了させる。
 尚、ここで閾値θ3を設け、θ3個以上の点が連続して滞留範囲から外れないと、滞留状態から移動状態に移行したと判断しない理由は、GPSデータにはしばしば測位誤差が含まれ、特に屋内にいる場合には、その誤差が大きくなる傾向があるため、1つのデータだけを見て判断すると、誤判別しやすくなってしまうためである。
 S1415:この後、全てのGPSデータをスキャンしても次のメイントリップの開始点が得られなかった場合は、トリップ抽出部105は、例えば-1などのエラーコードをreturnして処理を終了させる。尚、図14において、閾値θ1、θ2、θ3については、例えば15分、150m、5などの値を予め判別基準値格納用DB113に格納しておくと良い。後の実施形態では、θ2の値を動的に変更する方法について述べる。
 <トリップ終了判定処理>
 S1109で、時刻ti-1でメイントリップが終了しているかどうかを判定する処理について、図15を用いて詳細に説明する。トリップ終了判定処理は、移動手段の変わり目がメイントリップの終了添加否か判別するものである。図15は、トリップ終了判定処理の詳細を説明するためのフローチャートである。ここでの基本的な考え方は、時刻ti-1から所定の時間経過後までの時間帯が、「滞留」状態かどうかを判定し、「滞留」状態になっている場合は、時刻ti-1で移動が終了していると判断するというものである。
 S1501:トリップ抽出部105は、引数で与えられた時刻ti-1(加速度センサデータの取得時刻)に最も近いGPS点のインデックスgpssを取得する。
 S1502:トリップ抽出部105は、時刻ti-1から所定の時間t’だけ経過した時刻ti-1+t’に最も近いGPS点のインデックスgpseを取得する。ここで、所定の時間t’としては、例えば15分などの値を予め判別基準値格納用DB113に格納しておくと良い。
 S1503:トリップ抽出部105は、滞留位置代表点を計算するための変数latsum、lonsumと、ti-1からtgpseの間に存在するGPS点の数を保持するための変数centCountを0に初期化する。
 S1504:当該ステップからのループでは、gpssからgpseの間のGPS点に対して、順次処理を行う。
 S1505:トリップ抽出部105は、j番目のGPS点がti-1からti-1+t’の時間幅の間に入っているかどうかをチェックする。つまり、あまりに時間的に前のデータ(例えば1時間前のデータ)を用いても無意味であるので所定時間幅(例えば15分間隔)に含まれるデータを用いてトリップ終了か否か判定することとしている。この時間幅に入っていない場合(S1505でNoの場合)、処理はS1504に戻り、jをインクリメントして処理が続けられる。この時間幅に入っている場合(S1504でYesの場合)、処理はS1506に移行する。
 S1506:トリップ抽出部105は、j番目のGPSデータの緯度経度の値をlatsum、lonsumにそれぞれ加えるとともに、centCountをインクリメントする。
 S1507:トリップ抽出部105は、centCountが0かどうかを調べる。0の場合(S1507でYesの場合)、処理はS1508に移行する。0でない場合(S1507でNoの場合)、つまりcentCountが1以上の場合、処理はS1509に移行する。
 S1508:トリップ抽出部105は、滞留位置代表点をgpss番目のGPS点に設定し、true、即ち時刻ti-1でメイントリップが終了しているというフラグをreturnして処理を終了させる。これは、時刻ti-1の後、所定の時間の間GPSデータが取得できていないということが、端末保持者が屋内に入ったことを示すと仮定した処理である。屋内に入ってしばらくそこから出てこない場合は、その建物が目的地であった可能性が高い。
 S1509:トリップ抽出部105は、latsum、lonsumをcentCountで割ることによって、滞留位置代表点を計算する。
 S1510:当該ステップからのループで、トリップ抽出部105は、ti-1からti-1+t’の間のGPS点全てで、滞留位置代表点からの距離djを計算する。
 S1511:まず、トリップ抽出部105は、j番目のGPS点がti-1からti-1+t’の間に入っているかどうかをチェックする。入っていなければ(S1511でNoの場合)、処理はS1510に戻り、jをインクリメントする。入っていれば(S1511でYesの場合)、処理はS1512に移行する。
 S1512:トリップ抽出部105は、j番目のGPS点と滞留位置代表点との距離djを計算する。具体的には、上述の式2の(lati,loni)を(latj,lonj)に、(latcent,loncent)を(latsum,lonsum)に置きかえることで距離djが計算できる。
 S1513:トリップ抽出部105は、djをソートし、大きい方からθ番目の値を取得し、これをd’とする。
 S1514:トリップ抽出部105は、d’が所定の閾値θよりも小さいかどうかを判定する。ここで、θは、例えば150mなどの値を予め判別基準値格納用DB113に格納しておくと良い。後の実施形態では、動的にθの値を変更する方法について述べる。もし、d’がθよりも小さければ(S1514でYesの場合)、トリップ抽出部105は、「滞留」状態にあるとみなしてtrue、即ち、時刻ti-1でメイントリップが終了しているというフラグをreturnして処理を終了させる。d’がθ以上であれば(S1514でNoの場合)、トリップ抽出部105は、端末の保持者が時刻ti-1の後でもまだ移動を続けているとみなし、falseをreturnして処理を終了させる。
 <OD推定処理>
 続いて、OD推定処理(S505)の詳細について説明する。OD推定処理では、OD推定部106は、まず、トリップ抽出処理後のメイントリップ格納用DB(図13A参照)を参照して、メイントリップごとにODの位置情報を当該DBに記録していく。そして、OD推定部106は、あるメイントリップの開始時刻を参照し、その時刻以降一番初めに取得されたGPSデータの位置を開始位置(O)に記録する。
 次に、OD推定部106は、そのメイントリップの終了時刻以前の最後に取得されたGPSデータの位置を終了位置(D)に記録する。この処理を全てのメイントリップに対して行う。サブトリップについても同様の処理でODが記録できるので、ここでは説明を割愛する。
 図16A及びBは、それぞれ、OD推定処理後のメイントリップ情報格納用DB及びサブトリップ情報格納用DBの例を示す図である。
 <経路推定処理>
 次に、経路推定処理(S506)の詳細について説明する。経路推定処理では、経路推定部107は、各トリップに属するGPSデータの位置情報を、トリップ属性推定結果格納用DB111の中の経路情報格納用DBに格納する。ここで、各トリップに属するGPSデータとは、メイントリップ、サブトリップの別に関係なく、当該端末で、各トリップの開始時刻以降、終了時刻以前に取得された全GPSデータのことを指す。図17は、経路情報格納用DBに格納されるデータ例を示す図である。図17に示されるように、メイントリップとサブトリップとの関係、各サブトリップの対応する時刻における位置の情報が当該経路情報格納用DBに保持される。
 <移動目的推定処理>
 次に、移動目的推定処理(S507)について説明する。移動目的を推定するための手法は様々考え得るが、ここでは多項ロジットモデルを用いる例を説明する。また、移動目的として、例えば、「通勤・通学」「帰宅」「買物」「食事」「その他」の5種類に分類する例を説明する。さらに、特徴量として、例えば、「トリップ日が平日か休日かの属性」「トリップ開始時刻」「直後の滞留時の加速度センサデータの分散値」「1日の最終トリップかどうか」を用いる。これらの特徴量を用いる理由を定性的に説明すると、「トリップ日が平日か休日かの属性」については、トリップが平日か休日かによって通勤とそれ以外の移動目的との区別がつきやすくなるためである。「トリップ開始時刻」については、トリップの開始時刻が朝の7:00-9:00頃であると通勤の可能性が高く、夕方以降の場合買物か食事か帰宅である可能性が高く、11:00-13:00のお昼時や18:00-20:00の夕飯時ならば食事である可能性が高いと考えることができるためである。「直後の滞留時の加速度センサデータの分散値」については、買物の場合、滞留時にもスーパーなどの中で歩き回るため、加速度センサデータの分散が大きくなる傾向があるのに対し、食事中やデスクワーク中などは動きまわることはほとんどないため加速度センサデータの分散は小さいと考えられるためである。「1日の最終トリップかどうか」は、多くの場合、1日のうちの最終トリップは帰宅トリップとなるためである。
 多項ロジットモデルを用いて移動目的の推定を行うために、移動目的推定部108は、まず式4を用いて「通勤・通学」「帰宅」「買物」「食事」の4種類の移動目的ごとに効用値を計算する。
Figure JPOXMLDOC01-appb-M000004
 ここで、式4のxiは上述した各種特徴量を表す変数である。具体的には、x0はダミー変数で常に値は1である。x1は「トリップ日が平日か休日かの属性」を表す2値変数で、平日のとき0、休日のとき1とする。平日か休日かは、メイントリップの開始時刻から判断できる。例えばUnix Time(Unixは登録商標)であれば、適当なAPIを用いて日付と曜日を一意に特定できるので、これにより判断ができる。
 x2は「トリップ開始時刻」を表す変数である。これは例えば午前4時を基準としたときの、トリップ開始時刻までの経過秒などの形で表すことができる。ここで、午前4時を基準としているのは、午前0時時点ではまだ活動をしている人がいると考えられるためである。そのため、午前4時から翌日の午前4時までを便宜的に1日と考えた方が生活実態に近い分析が可能となる。
 x3は「直後の滞留時の加速度センサデータの分散値」を表す変数である。これは、対象となるメイントリップの終了時刻から次のメイントリップの開始時刻までの間の加速度センサデータをセンサデータ格納用DB103から取り出し、それらの分散値を計算すればよい。メイントリップがない場合は0が代入される。
 x4は「1日の最終トリップかどうか」を表す2値変数である。1日の最終トリップである場合にはx4に1を、そうでない場合には0を代入する。ここで、1日の定義は先に述べたように、午前4時から翌4時までを1日とすると良い。
 wi,purposeは移動目的purposeにおける変数xiに対する重みづけパラメータである。このパラメータは、予め学習しておくことが望ましいが、経験的な値を手入力して判別基準値格納用DB113に格納しておいても良い。予め学習しておく場合は、移動目的の正解値をメモした上でデータ収集を行い、最尤推定法などの既存手法を用いて重みパラメータの推定を行い、その値を判別基準値格納用DB113に格納しておく。このようにして効用値を計算した後、式5により、移動目的ごとの確率Ppurposeを計算する。
Figure JPOXMLDOC01-appb-M000005
 移動目的推定部108は、この中で最も確率の高いものを移動目的として、メイントリップ情報格納用DBに記録する。ただし、最も確率の高いものでも所定の閾値、例えば0.40よりも低い場合は「その他」を出力するようにすると良い。
 図18は、移動目的推定処理(S507)の後のメイントリップ情報格納用DBのデータの例を示す図である。ここで計算した移動目的ごとの確率は、後の補正処理(S508)で使用するために、トリップ属性推定結果格納用DB111の中に移動目的別確率値DBを作成し、ここに保持しておくと良い。
 図19は、移動目的別確率値DBのデータの例を示す図である。ただし、ここでは「その他」の確率は、便宜的に、他のどの移動目的も所定の閾値を超えなかったときにのみその閾値の値とし、それ以外の場合は0とする。尚、ここでは移動目的の推定手法として、多項ロジットモデルを用いる方法を例にとって説明したが、例えばSVMやNNなど他の機械学習の手法を用いても良い。また、「娯楽」や「通院」など他の移動目的も推定するようにしても良い。さらに、特徴量として他のものを用いても良い。
 <補正処理>
 S508の補正処理について詳細に説明する。まずは、図20を用いて補正処理の全体フローについて説明し、続いて各ステップの詳しい説明を行う。図20は、補正処理(S508)の内容を説明するためのフローチャートである。
 S2001:補正部109は、繰り返しのためのカウンタcountを0に初期化する。
 S2002:補正部109は、補正が行われたかどうかを表すフラグisModifiedをfalseにセットする。
 S2003乃至2007:補正部109は、必要に応じて、ODの補正(S2003)、移動手段の補正(S2004)、トリップ抽出の補正(S2005)、経路の補正(S2006)、移動目的の補正(S2007)をそれぞれ行う。補正を行った場合、補正部109は、isModifiedをtrueにセットする。
 S2008:補正部109は、isModifiedをチェックし、falseならば、つまりS2003からS2007の間で一度も補正が行われていなければここで処理を終了する。またはcountの値が所定の閾値θ以上であれば、即ち所定の回数以上繰り返し処理を行っても収束していない場合は、補正部109は、処理を終了させる。そのどちらでもなければS2002に戻り、補正部109は、処理を続ける。
 <OD補正処理>
 S2003のOD補正処理について詳細に説明する。OD補正処理は移動目的の上方に基づいてODを補正する処理である。例えば、移動目的が通勤であれば、Oは自宅で、Dは勤務先となる。GPSデータが十分に取得できていない場合であっても移動目的の情報からODを補正することができる。図21は、OD補正処理(S2003)の詳細を説明するためのフローチャートである。ただし、ここではO(Origin)の補正のみを例にとって説明するが、D(Destination)の補正についても同様にして行うことができる。ここでは移動目的からODの補正を行う例を説明する。また、ODの補正はメイントリップごとに行う。即ち、トリップ属性推定結果格納用DB111の中のメイントリップ情報格納用DB(図18)のデータを1レコードずつ読み出し、順次S2003の処理をする。以下では、1つのメイントリップを取り出した後の処理方法について述べる。
 S2101:補正部109は、メイントリップ情報格納用DB(図18)及び移動目的別確率値DB(図19)を参照して、当該メイントリップの移動目的とその推定確率を求める。そして、信頼度については閾値より大きいか否かで判断される。この確率が所定の閾値より小さい場合(S2101でNoの場合)は、補正部109は、補正を行わずに処理を終了させる。これは信頼度の低い情報に基づいて補正を行うことにより誤りを無くすためである。この閾値は、例えば0.7などの値を予め設定し、判別基準値格納用DB113に格納しておくと良い。推定された移動目的の確率が所定の閾値以上の場合(S2101でYesの場合)、処理はS2102に移行する。
 S2102:補正部1090は、トリップ属性間関連情報格納用DB110の中の移動目的-OD関連情報格納用DBを参照して、当該移動目的に対応するOの候補を抽出する。移動目的-OD関連情報格納用DBには、移動目的と、その移動目的で移動をする場合のあり得るODの組み合わせが格納されている。図22は、この移動目的-OD関連情報格納用DBのデータの例を示す図である。例えば、移動目的が買い物であれば、Oの候補としては、自宅と勤務先が挙げられる。移動目的-OD関連情報格納用DBは、例えば図22のような、経験的な組み合わせを、予め手入力しておくことで構築できる。
 S2103:補正部109は、S2102ステップで抽出されたOの候補を緯度・経度をPOI情報格納用DB112の中のPersonal POI用DB及びSocial POI用DBを参照して求める。Personal POI用DBは、自宅や勤務先など個人に紐づくような場所とその場所の緯度・経度情報を格納するDBである。図23Aは、Personal POI用DBに格納されているデータの例を示す図である。自宅や勤務先の他に、良く利用するスーパーやレストランの位置などを登録しても良い。Personal POI用DBは、端末保持者に予めアンケート調査をしておくなどして、手入力で作成することができる。また後の実施例で、これを、センサデータ格納用DBに格納されているGPSデータや加速度センサデータを用いて自動的に構築する方法についても述べる。一方、Social POI用DBは、スーパーや学校、病院など、地域の人がよく利用する場所とその緯度・経度情報を格納するDBである。図23Bは、Social POI用DBに格納されているデータの例である。Social POI用DBは、OpenStreetMap(http://www.openstreetmap.org/)などの無償で一般公開されている地図の中からデータを抽出することで作成することができる。また、自治体などが公共施設の位置情報を整備して公開している場合はそれらも用いることができる。アンケートなどを利用して、手入力で作成しても良い。後に説明する他の実施形態では、センサデータ格納用DBに格納されているGPSデータや加速度センサデータを用いて、Social POI用DBを自動的に構築する方法について説明する。
 S2104:補正部109は、現在のOの位置とS2103で得られたOの位置との距離を計算する。この計算は、上述の式2を用いて行うことができる。
 S2105:補正部109は、S2104で算出した距離が一番短い場所を抽出し、これをO’とおく。
 S2107:補正部109は、現在のOをO’に更新する。
 S2108:補正部109は、修正を行ったかどうかを示すフラグであるisModifiedをtrueにセットして処理を終了させる。
 尚、ここで説明したPersonal POI用DBやSocial POI用DBについては、必ずしもデータは完全でなくても良い。即ち、例えば全ての端末保持者の自宅や勤務地、あるいはスーパーや病院などの位置情報を格納しておかなければならないわけはない。Personal POI用DBやSocial POI用DBに所望のデータがない場合には、そのデータに関しては補正処理を行わずに終了しても良い。特に、アンケートなどで全ての端末保有者の自宅や勤務先を調査することが困難な場合は、調査可能な範囲の人の分とSocial POI用DBのデータのみを用いて、これで補正できるトリップのみを対象として補正することにしても良い。もちろん情報が豊富にあるほど、補正できる可能性が高く、推定の精度も良くなる可能性が高いことは言うまでもない。
 <移動手段補正処理>
 次に、移動手段補正処理(S2004)の詳細について説明する。図24は、移動手段補正処理の詳細を説明するためのフローチャートである。移動手段の補正は、サブトリップごとに行われる。移動手段はサブトリップ毎に特定されているからである。即ち、補正部109は、トリップ属性推定結果格納用DB111の中のサブトリップ情報格納用DB(図16B)のデータを1レコードずつ読み出し、順次移動手段の補正処理を実行する。以下では、1つのサブトリップを取り出した後の処理方法について述べる。
 S2401:補正部109は、サブトリップ情報格納用DB(図16B)から当該サブトリップのOD(開始位置と終了位置)の情報を取得する。ODの情報は緯度・経度の形で与えられている。
 S2402:補正部109は、POI情報格納用DB112を参照して、POI情報格納用DB112に格納されている各地点と、S2401で求めたODとの距離をそれぞれ計算し、その中で最も短いものをそれぞれ抽出する。これは、当該ODの緯度・経度と、POI情報格納用DB112の中のPersonal POI格納用DBやSocial POI格納用DBに登録されている各データの緯度・経度の値を用いて、式2によって計算することができる。
 S2403:補正部109は、ODそれぞれと最も近い地点との距離(それぞれdO,dDとおく)のいずれか一方が所定の閾値θ以上であるか判定する。そのいずれか一方が閾値θ以上の場合(S2403でNoの場合)、補正部109は、当該サブトリップについては移動手段の補正を行わず、処理を終了させる。一方、距離dO,dDのいずれもが閾値θ未満の場合(S2403でYesの場合)、処理はS2404に移行する。なお、閾値θについては、例えば150mなどの値を、予め判別基準値格納用DB113に格納しておくと良い。
 S2404:補正部109は、POI情報格納用DB112を参照して、S2401で求めたODの最近傍の点の属性を抽出する。
 S2405:補正部109は、トリップ属性間関連情報格納用DB111の中のOD-移動手段間関連情報格納用DB(図25)を参照して、当該ODに対応する移動手段の中から、出現確率が最も高いものを抽出する。この移動手段をm’とし、このときの確率をp1とおく。図25は、OD-移動手段間関連情報格納用DBに格納されているデータの例を示す図である。これは、端末保持者ごとにアンケートを行うなどして、予め作成をしておくことができる。また、日々の行動データから自動的に推定をして、構築することもできる。この方法については、他の実施形態で後述する。例えば、図25のようなデータが格納されており、当該サブトリップのIDがIDで、Oが自宅、Dが勤務先であった場合、その間の移動手段として最も確率の高い自転車がm’となり、その確率0.70がp1となる。
 S2406:補正部109は、トリップ属性推定結果格納用DB111を参照して、移動手段推定処理(S503)で求めておいた現在の移動手段判別結果とそれに対応する確率p2を求める。これは、図9Bのように各時刻のデータごとに計算しておいた移動手段ごとの確率を用いて計算できる。即ち、例えば、当該サブトリップの移動手段判別結果をmとし、図9Bのように計算された時刻tiのデータに対するmの確率をpm,iとしたとき、当該サブトリップの開始時刻から終了時刻までのpm,iの平均値を取ればよい。
 S2407:補正部109は、p1とp2を比較する。p1がp2以下の場合(S2407でNoの場合)、補正部109は、もともとの判別結果の信頼度の方が高いと判断して補正を行わず処理を終了させる。一方、p1がp2より大きい場合(S2407でYesの場合)、処理はS2408に移行する。
 S2408:補正部109は、当該サブトリップの推定結果をm’に補正する。
 S2409:補正部109は、補正が行われたかどうかを判定するためのフラグisModifiedをtrueにセットして処理を終了する。
 なお、ここでは、p1として、OD-移動手段間関連情報格納用DB(図25)の値をそのまま利用する方法について説明したが、例えば、S2402において計算した距離に基づいて、S2404でOやDに付与した属性の尤もらしさを現すような値を計算し、これをp1の計算に用いるようにしてもよい。例えば、現在のOとPOI情報格納用DB112に格納されている地点の中で最も距離の近い場所(これをO’とおく)との距離をdとしたとき、その尤もらしさは、式6によって求めることができる。
Figure JPOXMLDOC01-appb-M000006
 また、DについてもOと同様にして求めることができる。そして、これらを用いて、p2は式7に従って求めることができる。
Figure JPOXMLDOC01-appb-M000007
 さらに、POI情報格納用DB112に格納されている地点の中で最も距離の近い場所のペアのみを考えて補正を行ったが、N番目に距離の近い場所のペアまで考えて、式8に従ってp2を算出しても良い。
Figure JPOXMLDOC01-appb-M000008
 <トリップ抽出補正処理>
 次に、トリップ抽出補正処理(S2005)の詳細について説明する。トリップ抽出補正処理(S2005)では、再度トリップ抽出処理S504を実行する。ただし、移動手段の識別結果がS2004で補正されている可能性があるので、抽出されるトリップに変化がある場合がある。トリップ抽出補正処理(S2005)でなされうる補正としては(i)これまでに抽出されていなかったトリップが出現、(ii)これまでに抽出されていたトリップが消滅、(iii)これまでに抽出されていたトリップの開始や終了時刻が変更になる、の3つのパターンがあり得る。(i)に関しては、新たに抽出されたトリップに対してのみ、OD推定処理(S505)、経路推定処理(S506)、及び目的推定処理(S507)が実行される。(ii)に関しては、単にそのトリップがトリップ属性推定結果格納用DB111から削除される。(iii)に関しては、トリップ属性推定結果格納用DB111に格納されているトリップの開始・終了時刻が新しいものに更新される。
 <経路補正処理>
 次に、経路補正処理(S2006)の詳細について説明をする。図26は、経路補正処理の概念を示す図である。GPSの測位点は例え屋外にいるときでも、常時取得できるとは限らない。例えば、地域や時刻によって、上空に存在するGPS衛星の配置は様々であり、その数が少ないときは位置を算出できないことがある。また、ビル街など背の高い建物が周囲に存在するときはGPS信号が届きにくくなるし、電車やバスなどに乗車しているときもGPS信号は受信しにくくなる。さらに、屋内などに滞在していてGPS信号が取得できていないときに、続けて屋外に出てもすぐには位置を算出できないという、一般にcold startと呼ばれている現象により、出発後しばらく測位点が得られないという現象もしばしば発生する。このようなときでも、OD補正の処理により、正しいODに補正が行われていれば、その間の経路を補間することによって、GPS信号が受信できていないときの情報を復元することができる。
 当該処理の具体的な手順を、Oとトリップ開始後の始めの測位点との間の経路を補間するケースを例にとって説明する。まず、補正部109は、対象トリップの開始時刻以降の点で一番早い時刻の点の座標を、メイントリップ情報格納用DB(図18)、あるいは、サブトリップ情報格納用DB(図16B)と、センサデータ格納用DB103を参照して取得する。
 次に、補正部109は、Oの座標をメイントリップ情報格納用DB(図18)、あるいは、サブトリップ情報格納用DB(図16B)を参照して、取得する。そして、補正部109は、これら2点の間を補間する。補間の方法は、2点間を直線補間しても良いが、より望ましくは、地図情報などを参照して、実在する経路に沿った補間をすると良い。この際、複数の経路が存在する場合は、2点間の最短経路検索を活用するなどすると良い。また、この際、サブトリップ情報格納用DBに格納されている、補間対象の時間帯の移動手段に鑑みた経路の補間をすると尚良い。即ち、移動手段が電車であれば線路に沿った補間をする。バスならば、バス路線に沿った補間をする。車や自転車、歩行などなら、道路に沿った補間をする。補間の点数は、例えば100mに一点などとし、補間された点に対する時刻はトリップ開始時刻から、最初の測位点の計測時刻までの間を線形に割り当てれば良い。
 <移動目的補正処理>
 次に、移動目的の推定結果を補正する処理(S2007)の詳細について説明する。図27は、移動目的補正処理の詳細を説明するためのフローチャートである。移動手段の補正は移動目的の推定が正確でないときにメイントリップごとに行われる。即ち、補正部109は、トリップ属性推定結果格納用DB111の中のメイントリップ情報格納用DB(図18)のデータを1レコードずつ読み出し、順次移動目的補正処理(S2007)を実行する。以下では、1つのメイントリップを取り出した後の処理方法について述べる。
 S2701:補正部109は、トリップ属性推定結果格納用DB111の中の移動目的別確率値DB(図19)を参照して、当該メイントリップの推定された移動目的に対応する確率を求める。この確率は、移動目的推定処理(S507)の結果登録された情報である。そして、補正部109は、この確率が所定の閾値以下であるか判定する。当該確率が閾値以下であれば(S2701でYesの場合)、処理はS2702に移行する。一方、当該確率が閾値より大きければ(S2701でNoの場合)、処理は終了する。
 S2702:補正部109は、POI情報格納用DB112を参照して、POI情報格納用DB112に格納されている各地点と、当該メイントリップのODとの距離をそれぞれ計算し、その中で最も短いものをそれぞれ抽出する。これは、当該ODの緯度・経度と、Personal POI格納用DBやSocial POI格納用DBに登録されている各データの緯度・経度の値を用いて、上記式2に基づいて計算することができる。
 S2703:補正部109は、ODそれぞれ最も近い地点との距離(それぞれdO,dDとおく)の何れも所定の閾値θより小さいか判定する。いずれか一方でも、所定の閾値θ以上である場合(S2703でNoの場合)、当該メイントリップについては、移動目的の補正を行わずに処理を終了する。閾値θについては、例えば150mなどの値を、予め判別基準値格納用DB113に格納しておくと良い。距離dO,dDともに閾値より小さい場合(S2703でYesの場合)、処理はS2704に移行する。
 S2704:補正部109は、当該メイントリップのO及びDの最近傍の点の属性を、POI情報格納用DB112を参照して抽出する。
 S2705:補正部109は、トリップ属性間関連情報格納用DB110の中の移動目的-OD関連情報格納用DBを参照して、当該ODの属性に対応する移動目的が1つ以上登録されているかどうかをチェックする。移動目的-OD関連情報格納用DBの例は図22で既に示している通りである。対応する移動目的が1つも見つからない場合(S2705でNoの場合)、処理は終了する。対応する移動目的が1つ以上見つかった場合(S2705でYesの場合)、処理はS2706に移行する。
 S2706:補正部109は、S2705で見つかった対応する移動目的郡の中から、元々の推定結果である移動目的別確率値DB(図19)に登録されている確率が最も高いものを最終的な移動目的推定結果として出力する。例えば、移動目的別確率値DBのデータが図19のようであり、端末ID=IDのMainTripID=3のメイントリップについて移動目的の補正処理を行っているとする。このとき、S2705で、当該メイントリップのODに対応する移動目的として、「買物」と「食事」が抽出されたとすると、買物(0.29)の方が食事(0.28)よりも移動目的の推定時の確率が高い。このため、補正部109は、買物を補正結果とし、メイントリップ情報格納用DBの情報を書き換える。
 S2707:補正部109は、補正が行われたかどうかを示すフラグisModifiedをtrueにセットし、処理を終了する。
 <補正処理の変形例>
(i)以上のようにして、一連の処理の中で、各トリップ属性の推定及び補正を行うことができる。尚、ここでは補正処理を行うための処理の一例を示したが、補正処理の順番は、必ずしも図20の通りである必要はない。例えば、推定精度の高いトリップ属性から順に確定していき、推定精度の高いトリップ属性の推定結果を利用して、他の推定精度の低いトリップ属性の推定結果を補正するなどの工夫を行うとより効果的である。また、例えば、加速度センサデータやGPSデータなどの携帯端末から得られるセンサデータの他に、携帯端末のIDと対応付けてIC乗車券などの乗降情報が入手できるときは、そのIC乗車券情報を利用した時間帯の移動手段の推定結果の信頼度は非常に高いものとなり、先にその部分の移動手段を確定させた上で、他のトリップ属性情報を補正すればよい。IC乗車券情報としては、携帯端末のIDと関連付けられたID情報と、ある駅の改札への入場時刻t、ある駅からの改札からの退場時刻tがあればよい。電車の乗降データであった場合、このtからtの間は、電車に乗っていたことが分かる。
(ii)また、補正のために用いる情報についても、これまでに説明したものは補正処理を実現するための一例であり、これに限るものではない。例えば、移動目的の推定結果を用いてから移動手段の推定結果を補正することもできる。具体的には、各メイントリップの移動目的の推定結果を、トリップ属性推定結果格納用DB111から読み出し、その移動目的に対応した移動手段の列を、トリップ属性間関連情報格納用DB110の中の、移動目的-移動手段関連情報格納用DBから読み出す。図28は、移動目的-移動手段関連情報格納用DBのデータの例を示す図である。この移動目的-移動手段関連情報格納用DBは、日ごろの通勤路などに関するアンケートをベースに手入力で作成しても良い。また、一定期間に渡って収集されたGPSデータや加速度センサデータの列から自動的に情報を抽出して作成するようにしても良い。この具体的な方法については、後の実施形態において後述する。そして、ここに格納されている移動手段列の数と、対象のメイントリップのMainTripIDを持つサブトリップの数が等しく、かつ、ここに格納されている確率が、移動手段を推定した際に求めた確率よりも高ければ、そのメイントリップのMainTripIDを持つサブトリップの移動手段の推定結果を、移動目的-移動手段関連情報格納用DB(図28)に格納されている移動手段列に補正する。
(iii)経路情報からODを補正することもできる。これは、メイントリップごとに行っても良いし、サブトリップごとに行っても良い。ここでは、サブトリップごとに行う例を説明するが、メイントリップの場合でも同様の処理で補正が可能である。まず、補正部109は、対象のサブトリップの端末ID、MainTripID及びSubTripIDを用いて、経路情報格納用DBからそのサブトリップ中に計測された測位点を抽出する。次に、補正部109は、トリップ関連情報格納用DB110内のOD-経路関連情報格納用DBを参照して、今回の測位点列(これを{pi}とおく。{pi}は具体的には、緯度・経度の点列である。)にマッチする経路があるかどうかを探索する。図29は、OD-経路関連情報格納用DBに格納されているデータの例を示す図である。具体的には、補正部109は、式9で計算できる距離dが所定の閾値よりも小さい場合はマッチする経路が存在すると判断する。この所定の閾値は、例えば50mなどの値を予め判別基準値格納用DB113に格納しておくと良い。
Figure JPOXMLDOC01-appb-M000009
 ここで、di,jは、式10によって算出される、{pi}とOD-経路関連情報格納用DB(図29)の各データレコードjの経路との距離を表す情報である。
Figure JPOXMLDOC01-appb-M000010
 式10におけるqj,kは、OD-経路関連情報格納用DBのj番目のレコードの経路のk番目の点の緯度・経度情報である。また、d(pi, qj,k)は、点piと点qj,kとの距離である。これは、上記式2を用いて計算できる。
 図30は、当該補正処理の概念を示す図である。計算して得られた距離dに基づき、マッチする経路が存在した場合には、OD-経路関連情報格納用DBに格納されているODに対応する位置情報を読み出し、さらにPOI情報格納用DB112を参照して、当該サブトリップのODを更新する。このOD情報がPOI情報格納用DB112にない場合は、補正を行わない。なお、図29で例示したOD-経路関連情報格納用DBは、過去の移動履歴情報から作成することができる。即ち、これまでに説明した手順でOD推定、経路推定を行い、そのODに対応する地点の属性情報がPOI情報格納用DBに格納されていた場合は、それらをOD-経路関連情報格納用DBに格納しておけば良い。このようにすることで、例えば、GPS受信状況が悪く、データ欠損が生じているような状況でも、補正により、OD情報を正しく推定することが可能となる。
(iv)逆に、OD情報から経路情報を補正することも可能である。即ち、OD-経路関連情報格納用DB(図29)を参照して、対象のトリップのODに対応する経路があるかどうかをチェックし、この経路が登録されている場合に、推定された経路をこの経路に補正することが考えられる。その場合も、式9で計算される距離が所定の閾値以下の場合のみに補正するなどすると良い。このようにすれば、あまりGPSの受信状況が悪く、移動中にあまり測位点が得られていないような場合でも、例えば時刻情報から移動目的が推定でき、移動目的からODが推定でき、そのODから経路が推定できるような場合がある。
 また、同様の枠組みで、移動目的-経路関連情報格納用DBを用意しておくことで、移動目的から経路を補正することや、経路から移動目的を補正することも可能になる。
 さらに、補正処理(S508)において、補正を行うトリップ属性の順番をGUI(Graphical User Interface)などを利用して、システムのユーザが指定できるようにすると、ユーザの知識に基づいた柔軟な補正処理が可能になる。また、補正処理(S508)の繰り返し処理のループ中の、例えば、S2008のタイミングなどで補正前の推定結果と補正後の推定結果を表示し、その補正を受け入れるかどうかをユーザに選択させるようにしても良い。ユーザが補正結果を受け入れなければ、その時点で補正処理を終了する。
(2)第2の実施形態
 第2の実施形態は、トリップ属性の補正の際に、交通行動に特有の制約を用いることで、より信頼度の高い補正を行うことができる、トリップ属性推定システムに関するものである。第1の実施形態によるトリップ属性推定システム100では、トリップ属性の補正を行う際に、闇雲に補正を行うと、誤った補正を行うことがある。その際に、交通行動に関する制約を加味し、その制約の下で、最も合理的な補正を行うようにすると、より高信頼な補正を行うことができる。第2の実施形態はこのような観点で慣れたものである。
 図31は、本発明の第2の実施形態における、交通行動制約条件付トリップ属性推定システム3100の構成例を示す図である。本交通行動制約条件付トリップ属性推定システム3100は、第1の実施形態のトリップ属性推定システム100の構成に加え、交通行動制約条件格納用DB3101をさらに有している。
 交通行動上の制約の例としては、移動手段ごとの移動速度や、移動手段の遷移確率、1日の中の特定のトリップの発生頻度などが挙げられる。ここでは、これらを用いることで、第1の実施形態で説明した補正処理がどのように変わるか、説明をする。
 <移動手段の移動速度を用いた補正処理>
 まず、移動手段ごとの移動速度を用いる場合の補正処理について説明する。具体的には、OD補正処理(S2003)の内容が変わる。
 図32は、交通行動制約を用いる場合のOD補正処理を説明するためのフローチャートである。図32において、図21で示したOD補正処理と同じ符号を付された処理は、第1の実施形態による処理と同様であるので、ここでは説明を割愛する。
 図32の処理において、S2105で補正を行う候補O’を求めた後、補正部109は、そのO’が現実的に到達可能であるかどうかを判定する(S3206)。具体的には、まず、OからO’までの距離dを上述の式2を用いて算出する。また、補正部109は、サブトリップ情報格納用DBを参照して、当該時間帯の移動手段の推定結果を読み出し、その移動手段ごとに予め定められた最高速度(これをvmaxとおく)を求める。この移動手段ごとの最高速度は、交通行動制約条件格納用DB3101の中の、移動手段別最高速度情報格納用DBに予め登録しておく。その値は、例えば、図33のように、経験的に合理的な値を定めておけばよい。そして、補正部109は、当該トリップの開始時刻tsと、現在のOに対応する点の計測された時刻tの間に、読み出された移動手段で移動可能な最大距離dmaxを求める。具体的には、dmax= vmax・(t-ts)で求めることができる。ここで、トリップの開始時刻は、静止から歩行へ変わる際など、加速度センサ情報のみを用いて判別できる移動手段の変化点に基づいて決定されることがあるため、一般には必ずしも同時刻とは限らないことに注意が必要である。そして、d<dmaxであれば、このO’は到達可能であると判断し、処理はS2107に移行し、補正部109は実際に補正を行う。そうでなければ、補正は行わずに、ここで処理は終了する。これにより誤った補正を実施してしまう可能性を排除することができるようになる。
 <移動手段の遷移確率を用いた補正処理>
 次に、移動手段の遷移確率を用いる場合の補正処理について説明する。具体的には、移動手段補正処理(S2004)が変わる。これは、定性的には、例えば、歩行からバスに移動手段が遷移することはあり得ても、バスから途中に歩行等他の移動手段をはさまずに、バイクに移動手段が遷移することはほとんどない、というような交通行動に関する知識に基づいている。
 図34は、交通行動制約を用いる場合の移動手段補正処理を説明するためのフローチャートである。図24で示した移動手段補正処理と同じ符号を付された処理については、第1の実施形態で説明した処理と同様であるので、ここでは説明を割愛する。
 図34の処理では、S2407において、補正候補の移動手段の確率p1が補正前の移動手段の確率p2よりも大きいと判定された場合、さらにS3401において、補正部109は、その補正が移動手段の遷移から考えて妥当かどうか(有り得る遷移か否か:例えば、自転車で駅まで移動し、そこから電車でさらに移動するという遷移は有り得るが、バイクで駅まで移動し、そこから車に乗り換え、さらに途中で再度バイクに乗り換えるという遷移はほとんど有り得ない。)を判定する。具体的には、補正部109は、交通行動制約条件格納用DB3101の中の移動手段遷移確率格納用DBを参照して、補正対象のサブトリップの直前の移動手段から補正候補の移動手段へ遷移する確率を求める。図35Aは、移動手段遷移確率格納用DBに格納されているデータの対応関係例を示す図である。図35Bは、実際にDBに格納されているデータの例である。そして、補正部109は、この遷移確率が所定の閾値よりも低い場合は補正を行わないようにする。この閾値の値としては、例えば、1/Nなどの値を予め設定して、判別基準値格納用DB113に格納しておくと良い。ここで、Nは識別対象となる移動手段の数である。図35Aのようなケースの場合、N=5であり、閾値は0.20となる。この移動手段遷移確率格納用DBの作成に当たっては、例えば図35Aに示したような値を、経験的に決定して予め登録しておいても良いし、学習用にデータを収集し、そのデータの中で実際に起こった遷移の数を数えて確率を計算するようにしても良い。
 <特定トリップ発生頻度を用いた補正処理>
 最後に、1日の中の特定のトリップの発生頻度を用いる場合の補正処理について説明する。具体的には、移動目的補正処理(S2007)が変わる。
 図36は、交通行動制約を用いる場合の移動目的補正処理を説明するためのフローチャートである。図36の処理において、図27に示した移動目的補正処理と同じ符号を付された処理は、第1の実施形態による処理と同様であるので、ここでは説明を割愛する。
 図36の処理では、補正部109は、S2706において補正の候補となる新しい移動目的m’を求めた後、S3601で、1日のうちのトリップ発生頻度に鑑み、そのm’が現実的かどうかを判定する。これは、例えば、1日の中で、通常「通勤」は一度のみである(出張からの帰社は除く)、「食事」は3回以内である、などの交通行動に関する知識を元にしている。具体的には、補正部109は、交通行動制約条件格納用DB3101の中のトリップ発生頻度情報格納用DBのデータを参照し、補正しようとしている移動目的m’の1日の中での発生回数が、ここに登録された最大数よりも大きくなる場合は、補正をしないようにする。図37は、トリップ発生頻度情報格納用DBに格納されているデータ例を示す図である。トリップ発生頻度情報格納用DBは、図37のような経験的な値を予め設定して入力しておくと良い。
 このように、補正の際に交通行動上の制約条件を加味することで、より信頼度の高いトリップ属性の推定ができる。
(3)第3の実施形態
 第3の実施形態は、トリップ属性の推定の際に利用する各種DBに登録される情報を、携帯端末によって収集されるGPSデータや加速度センサデータなどから自動的に抽出してDBを自動的に構築する、DB自動構築機能付トリップ属性推定システムに関するものである。
 第1の実施形態によるトリップ属性推定システム100では、各種推定処理、補正処理の中で、トリップ属性間関連情報格納用DB110やPOI情報格納用DB112の情報を参照している。これらは、経験的な値を予め入力しておく、アンケートなどを元にした情報を手入力する、などの様々な方法で構築することができる。しかし、これらの方法はしばしば、適切な値を人手で設定することが難しく、大きな手間がかかることがある。
 一方で、例えば一週間分など、まとまった量のセンサデータがあれば、これらを用いて、自動的にDBに登録する値を抽出することができ、DB構築のコストを削減できると共に、実データに基づいた信頼度の高い値を設定することが可能となる。以下では、POI情報格納用DB112を自動的に構築する方法をまず説明し、次に、トリップ属性間関連情報格納用DB110を自動的に構築する方法を説明する。
 <POI情報格納用DBの自動的構築>
 まず、POI情報格納用DB112を自動的に構築する方法について説明する。図38はPOI情報格納用DB自動構築機能付トリップ属性推定システム3800の構成例を示す図である。POI情報格納用DB自動構築機能付トリップ属性推定システム3800は、第1の実施形態によるトリップ属性推定システム100の構成に加えて、POI情報自動抽出部3801を有している。
 以下では、POI情報自動抽出部3801の処理について説明をする。Social POI情報格納用DBは、第1の実施形態で説明したように、地図情報などを用いて構築できるので、ここでは主にPersonal POI情報格納用DBを自動構築する方法について説明をする。なお、以下では、Personal POIの情報として、自宅・勤務先・よく行くスーパーの情報を抽出する例を説明するが、同様の考え方を用いることで、訪問頻度の高い箇所の属性を推定することが可能である。Personal POIは個人に紐づくものなので、以下では、ある端末IDのデータに対して、Personal POI情報を抽出する処理について説明する。
 図39は、自宅の位置を推定する処理を説明するためのフローチャートである。ここで、自宅とは、外泊する場合を除いて、平日や休日に限らず必ず滞在する場所であり、かつ、1日の最後のトリップのDであり、1日の最初のトリップのOとなることが多い。
 S3901:当該端末IDのデータに対し、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、さらに、トリップ抽出部105がトリップ抽出処理(S504)を実行する。
 S3902:POI情報自動抽出部3801は、メイントリップ情報格納用DB(図18)を参照し、1日の始めのトリップのO及び1日の最終トリップのDを抽出し、それらの緯度・経度情報を取得する。尚、この1日の区切りは、0時よりも午前4時などとする方が、人々の活動実態に合致しやすく好ましい。これ以後の処理についても同様である。
 S3903:POI情報自動抽出部3801は、S3902で抽出された位置を任意のクラスタリング手法を用いてクラスタリングする。クラスタリングの手法としては、例えばウォード法などを用いることができる。この場合、あるクラスタに属する点群の重心からそのクラスタに属する各点までの距離の平均が所定の閾値以上になると、それ以上クラスタの結合を行わないようにするなどして、クラスタの数を決定できる。所定の閾値としては、例えば300mなどの値を用いれば良い。
 S3904:POI情報自動抽出部3801は、S3903で作成されたクラスタの中から、最も要素数の多いクラスタを抽出し、そのクラスタの重心の座標を自宅位置としてPersonal POIに登録する。このようにして、自宅の位置を推定することができる。
 一方、勤務先については、平日の日中の滞在時間が最も長いような場所と解釈することができる。そこで、図40のような処理により勤務先の位置を抽出することができる。図40は、勤務先の位置を推定する処理を説明するためのフローチャートである。
 S4001:当該端末IDのデータに対し、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、さらに、トリップ抽出部105がトリップ抽出処理(S504)を実行する。
 S4002:POI情報自動抽出部3801は、1日のメイントリップのうち、i番目のメイントリップの終了時刻と、(i+1)番目のメイントリップの開始時刻の差が最も大きくなるようなインデックスiを抽出し、i番目のメイントリップのDを抽出する。この処理は、日ごとに行う。
 S4003:POI情報自動抽出部3801は、S4002で抽出された位置を任意のクラスタリング手法を用いてクラスタリングする。クラスタリングの手法としては、例えばウォード法などを用いることができる。この場合、あるクラスタに属する点群の重心からそのクラスタに属する各点までの距離の平均が所定の閾値以上になると、それ以上クラスタの結合を行わないようにするなどして、クラスタの数を決定できる。所定の閾値としては、例えば300mなどの値を用いれば良い。
 S4004:POI情報自動抽出部3801は、で、S4003で作成されたクラスタの中から、最も要素数の多いクラスタを抽出し、そのクラスタの重心の座標を勤務先の位置としてPersonal POIに登録する。このようにして、勤務先の位置を推定することができる。
 良く行くスーパーの位置は、移動目的が買物であるトリップのDを抽出することにより、推定することができる。即ち、当該端末IDのデータに対し、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、トリップ抽出部105がトリップ抽出処理(S504)を実行し、移動目的推定部108が移動目的推定処理(S507)を実行する。
 POI情報自動抽出部3801は、その中で、移動目的が買物であるトリップのみを抜き出し、そのDの位置を抽出する。
 そのDの位置をS3903で述べたように、POI情報自動抽出部3801は、クラスタリングし、S3904のようにして、最も要素数の多いクラスタの重心位置を計算し、これを良く行くスーパーの位置として登録すればよい。尚、この処理の後、複数の端末IDに対して、同一位置(距離が例えば300mなど所定の閾値以下のもの)が抽出されていれば、その位置をSocial POI情報格納用DBに登録しておいても良い。
 <トリップ属性間関連情報格納用DBの自動構築>
 次に、トリップ属性間関連情報格納用DB110を自動的に構築する方法について説明する。図41は、トリップ属性間関連情報格納用DB自動構築機能付トリップ属性推定システム4100の構成例を示す図である。トリップ属性間関連情報格納用DB自動構築機能付トリップ属性推定システム4100は、第1の実施形態によるトリップ属性推定システム100の構成に加え、属性間の関連情報を自動抽出するトリップ属性間関連情報自動抽出部4101を有している。
 以下では、図25のOD-移動手段間関連情報格納用DB及び、図28の移動目的-移動手段関連情報格納用DBを自動的に構築する手法を例にとって説明をする。
 <OD-移動手段間関連情報格納用DBの自動構築>
 まず、OD-移動手段間関連情報格納用DBを自動的に構築する方法を説明する。ここでは、端末IDごとに情報を登録するので、処理対象の端末IDのデータだけを抽出した後の処理について述べる。図42は、OD-移動手段間関連情報格納用DB(図28)を自動的に構築する処理を説明するためのフローチャートである。
 S4201:当該端末IDのデータに対し、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、トリップ抽出部105がトリップ抽出処理(S504)を実行する。
 S4202:トリップ属性間関連情報自動抽出部4101は、全サブトリップのODを抽出し、ODともに対応する場所がPOI情報格納用DB112に登録されているもののみを抽出する。ここで対応する場所とは、O(D)との距離が300mなど、所定の閾値以下の場所を表す。
 S4203:トリップ属性間関連情報自動抽出部4101は、S4202で抽出されたODの属性が同じものを同一グループにまとめ、そのグループに属するサブトリップの移動手段別の頻度を計算し、これを正規化して確率とし、OD-移動手段間関連情報格納用DBへ登録する。
 <移動目的-移動手段関連情報格納用DBの自動構築>
 次に、移動目的-移動手段関連情報格納用DB(図28)を自動的に構築する方法について説明する。ここでは、端末IDごとに情報を登録するので、処理対象の端末IDのデータだけを抽出した後の処理について述べる。図43は、移動目的-移動手段関連情報格納用DBを自動的に構築する処理を説明するためのフローチャートである。
 S4301:処理対象の端末IDのデータに対し、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、トリップ抽出部105がトリップ抽出処理(S504)を実行し、移動目的推定部108が移動目的推定処理(S507)を実行する。
 S4302:トリップ属性間関連情報自動抽出部4101は、推定された移動目的ごとにグループを作り、そのグループの各メイントリップと同じMainTripIDを持つサブトリップ列から移動手段の列を抽出する。
 S4303:トリップ属性間関連情報自動抽出部4101は、S4302で求めた移動手段列別の頻度を計算し、これを正規化して確率とし、移動目的-移動手段関連情報格納用DBへ登録する。
 このようにして、トリップ属性間関連情報格納用DB110を、計測データから自動的に構築することができる。
(4)第4の実施形態
 第4の実施形態は、トリップ抽出処理の際に利用する滞留判定のための閾値を、場所や計測時間帯によって動的に変更することができる、滞留判定閾値自動調整機能付トリップ属性推定システムに関する。
 第1の実施形態によるトリップ属性推定システム100で実行されるトリップ抽出処理(S504)では、滞留を判定する際に、所定の値θを半径とする一定範囲内に一定時間以上滞在している場合に「滞留」状態にあると判定している。ところが、例えば、地域や時刻によって、上空に存在するGPS衛星の配置は様々であり、その条件によってGPS信号の受信状況は異なる。そのため、測位点に対する位置の測位誤差も条件によって様々である。このため、前記所定の値θとして、1つの固定値を用いると、この様々な状況に対応ができず、滞留判定において誤判定が生じてしまう可能性がある。例えば、測位誤差に対してθが小さい値の場合は、GPSの位置測位誤差が大きい場合に、本当は一箇所に滞留していたとしても誤差のために所定の範囲から外れることが多く、正しく滞留が判定できなくなる。逆に測位誤差に対してθが大きい値の場合は、移動を始めていても、しばらくは範囲内に留まっていると誤判定され、正確なトリップ開始時刻が抽出できない。第4の実施形態は、このような事情に鑑みてなされたものであり、以下このθの値を動的に変更する方法について説明をする。
 <滞留判定閾値自動調整処理>
 第4の実施形態では、GPSデータの分散値(バラツキの程度)に応じて滞留判定用の閾値を動的に変更する処理を提案する。より具体的には、GPSの受信状況が良いときには、滞留している場合には密にGPSデータが計測できるが、受信状況が悪い時には計測されるGPSデータにバラツキが出て安定的に滞留判定を実行することができない。そこで、GPSデータのバラツキ(受信状況の良さ)に応じて滞留していると考えられる範囲を動的に変更するものである。図44は、第4の実施形態による滞留判定閾値自動調整機能付トリップ属性推定システム4400の構成例を示す図である。滞留判定閾値自動調整機能付トリップ属性推定システム4400は、第1の実施形態によるトリップ属性推定システム100の構成に加え、滞留判定閾値計算部4401を有している。
 以下、滞留判定閾値計算部4401の処理について説明する。図45は、次のメイントリップの開始点を探す処理(図14:S1101の詳細)において、滞留判定用の閾値θ2を動的に変更できるようにした処理を説明するためのフローチャートである。図14のフローチャートと同じ符号を付された処理については、第1の実施形態で説明した処理と同様であるので、ここでは説明を割愛する。
 第4の実施形態による処理では、まず閾値θ2の初期値として、所定の値、例えば150mなどを設定しておく。そして、S4503において、滞留判定閾値計算部4401は、その閾値を状況に応じて更新していく。具体的には、S1410の処理の後、処理はS4501に移行する。
 S4501:滞留判定閾値計算部4401は、後で閾値θ2の計算の際に使用するために、i番目のGPS点の位置を一時配列に保存する。
 S4502:滞留判定閾値計算部4401は、重心を計算するのに用いる点の数を表す変数centCountが所定の値θ4より大きいかどうかを判定する。centCountがθ4以下である場合は、θ2の更新は行わず、S1412へ進み処理を続ける。centCountがθ4より大きい場合は、S4503へ進む。
 S4503:滞留判定閾値計算部4401は、θ2の更新を行う。具体的には、例えば、S4501において保存された点列を読み出し、それらと重心との距離をガウス分布で近似したときの共分散行列Σの値に基づいてθ2を決定する。なお、例えば、Σの(1,1)成分と(2,2)成分のうち小さい方を用いても良いし、大きい方を用いても良いし、それらの平均値を用いても良い。また、ここまでユークリッド距離に基づいて滞留判定を行う例を説明したが、このΣを用いて、マハラノビス距離を計算し、これに基づいて滞留判定を行うようにしても良い。ここで、マハラノビス距離とは、式11で与えられる距離である。
Figure JPOXMLDOC01-appb-M000011
 ここで、式11におけるxは、GPS測位点の緯度・経度を表すベクトルであり、μは重心の緯度・経度を表すベクトルである。マハラノビス距離を用いると、建物の形状などによってGPSの測位誤差の生じ方が等方性ではないような場合にも、正確な滞留判定ができることが期待できる。マハラノビス距離を用いる場合、S1408では、式11に従って距離を計算するようにする。マハラノビス距離の計算の際に、距離は正規化されるので、この場合、閾値θ2は例えば2などの値に固定すると良い。
 図46は、滞留判定用の閾値θを動的に変更しながら時刻ti-1でメイントリップが終了しているかどうかを判定する処理を説明するためのフローチャートである。図46では、図15の処理(S1109の詳細)にS4601及びS4602の処理が追加されている。図46において、図15のフローチャートと同じ符号を付された処理については、第1の実施形態における処理と同様であるので、ここでは説明を割愛する。
 S4601:第4の実施形態では、S1505でj番目のGPS点の計測時刻がti-1からti-1+t’の間であった場合に、S1506の処理を行った後、滞留判定閾値計算部4401は、後に閾値θを計算する際に用いるためにj番目のGPS点の位置情報を一時配列に保存しておくようにする。
 S4602:滞留判定閾値計算部4401は、一時配列に保存されたGPS点を用いて、閾値θを計算する。この計算方法は図45(S4503)を用いて説明した例と同じであるので、ここでは説明を割愛する。ここでもマハラノビス距離を用いるようにしても良い。
 以上のようにして動的に滞留のための閾値を決定すれば、たとえ地域や時間帯によってGPSの測位誤差が異なっていても、そのときの誤差の水準に応じた閾値を自動的に決定できるため、滞留判定の精度を向上させることができる。
(5)第5の実施形態
 第5の実施形態は、生活行動パターンに従って携帯端末保持者をクラスタリングしてからトリップ属性の推定を行うことによって、より精度良くトリップ属性の推定を行うための、生活行動パターン別クラスタリング機能付トリップ属性推定システムに関するものである。
 人々の日々の生活行動パターンには、ある程度の規則性があり、その生活行動パターンに基づいていくつかのグループに分類することができると考えられる。例えば、月曜日から金曜日には朝9時前後から夕方もしくは夜まで仕事をし、土日は休みである会社員パターンや、自宅に滞在している時間が長く、かつ、平日の10時頃~夕方までの間に買物に出かける回数の多い主婦パターンなどがその例として挙げられる。例えば、移動目的の推定の際に、このような生活パターンまで考慮に入れることができるとより高精度な推定が可能になる。例えば、昼過ぎの同じ時間帯に始まるトリップであっても、会社員パターンの場合は、出張である可能性が高いのに対し、主婦パターンの場合は買物である可能性が高い、など生活行動パターンに応じた判別が可能になる。ただし、ここで会社員パターンや主婦パターンなどを例に挙げたのは、説明を簡単にするためであり、各グループに対する意味づけを行う必要はない。以下では、具体的な処理方法を、移動目的推定の場合を例にとって説明する。
 <システムの構成>
 図47は、第5の実施形態による、生活行動パターン別クラスタリング機能付トリップ属性推定システム4700の構成例を示す図である。生活行動パターン別クラスタリング機能付トリップ属性推定システム4700は、第1の実施形態によるトリップ属性推定システム100の構成に加え、生活行動パターンクラスタリング部4701と、生活行動パターンDB4702と、生活行動パターンクラス計算部4703と、生活行動パターン別判別基準値DB4704と、を有している。
 生活行動パターン別クラスタリング機能付トリップ属性推定システム4700は、予め学習フェーズとして、いくつかの端末を用いてGPSデータや加速度センサデータを収集しておき、生活行動パターンクラスタリング部によってそれらのデータからいくつかの代表的な生活行動パターンのクラスタを抽出して、生活行動パターンDB4702に格納しておく。この際、各メイントリップの開始時刻・終了時刻とその移動目的について、メモ(記録)などを残しておくようにする。そして、そのグループごとに、トリップ属性推定の際に使用する判別基準値を求め、生活行動パターン別判別基準値DB4704に格納しておく。トリップ属性推定時には、生活行動パターンクラス計算部4703によって、推定対象のデータをまずいくつかのパターンに分類した後、その分類に応じた判別基準値を用いてトリップ属性の抽出を行う。以下、具体的な処理について説明をする。
 <生活行動パターンクラスタリング処理>
 図48は、生活行動パターンクラスタリング部4701による処理を説明するためのフローチャートである。
 S4801:学習用データを端末IDごとに順次、移動手段推定部104がトリップ移動手段推定処理(S503)を実行し、トリップ抽出部105がトリップ抽出処理(S504)を実行し、移動目的推定部108が移動目的推定処理(S507)を実行する。
 S4802:生活行動パターンクラスタリング部4701は、特徴量に基づいて、IDをクラスタリングする。クラスタリングの特徴量としては、例えば、平日の第1トリップの平均開始時刻、平日の最終トリップの平均終了時刻、平日の第1トリップの平均開始時刻と休日の第1トリップの平均開始時刻の差、1日当たりの平均トリップ数、などが挙げられる。クラスタリングの手法としては、例えば、K-means法やウォード法などを用いることができる。この場合、想定する生活行動パターンの数に応じて、クラスタリングの際のクラスタ数を設定すればよい。
 S4803:生活行動パターンクラスタリング部4701は、クラスタ毎のラベルと特徴量を生活行動パターンDB4702に格納する。例えば、K-means法を用いる場合は、特徴量空間における各クラスの重心位置を格納しておけばよい。図49は、この場合の生活行動パターンDB4702に格納されるデータの例である。ここで、Nはクラスタリングに使用する特徴量の数である。例えば、ここで、特徴量として、(i)1日の最初のトリップの開始時刻、(ii)1日の平均トリップ回数、及び(iii)1日のトリップの平均距離を考える。ユーザAが(i)8:30、(ii)5回、(iii)2km、ユーザBが(i)22:15、(ii)2回、(iii)5km、ユーザCが(i)8:32、(ii)6回、(iii)1.9km、ユーザDが(i)22:01、(ii)3回、(iii)4km、ユーザEが(i)8:19、(ii)5回、(iii)2.3kmであったとすると、ユーザA、C及びEは行動パターンが類似しており、同一クラスに分類することができる。また、ユーザB及びDも行動パターンが類似しており、同一クラスに分類することができる。
 このようにして、生活行動パターンごとのクラスタが作成できたら、次に、生活行動パターンクラスタリング部4701は、トリップ属性推定の際に利用する判別基準値をクラスタ毎に決定し、生活行動パターン別判別基準値DB4704に格納する。例えば、第1の実施形態で説明したような「トリップ日が平日か休日かの属性」「トリップ開始時刻」「直後の滞留時の加速度センサデータの分散値」「1日の最終トリップかどうか」という特徴量を用いる場合には、移動目的ごとのこれらの重みの値を学習し、生活行動パターン別判別基準値DB4704に格納する。ここで、図50は、生活行動パターン別判別基準値DB4704に格納されるデータの例を示す図である。図50に示されるように、重みの掛け方をクラスと移動目的に応じて変更する。例えば、移動目的p1を出張、p2を買い物とすると、クラスAのユーザは出張のときの重みを大きくしたり、クラスBのユーザの場合には逆に買い物の重みを大きくしたりするといった具合である。従って、同じ1時におけるトリップであったとしてもクラスが異なれば、移動目的(例えば、買い物)の特定されやすさが異なってくる。
 <トリップ属性推定処理>
 最後に、生活行動パターン別判別基準値DB4704を用いてトリップ属性の推定を行う方法について説明をする。生活行動パターンクラス計算部4703は、推定対象データを端末ID毎に処理し、各端末IDのデータを用いて、生活行動パターンクラスタリング部4701でクラスタリングの際に使用した特徴量と同じ特徴量を計算する。この結果は、特徴量の数がN個の場合、N次元の特徴量ベクトルとして与えられる。
 次に、生活行動パターンクラス計算部4703は、生活行動パターンDB4702を参照して、その特徴量ベクトルの属するクラスを求める。具体的には、生活行動パターンDB4702に格納されている、各クラスの重心との距離を計算し、最も距離の小さいものを、その端末IDの属するクラスと判定する。そして、生活行動パターンクラス計算部4703は、そのクラスの判別基準値を、生活行動パターン別判別基準値DB4704から読み出し、その基準値を用いて各メイントリップの移動目的の推定を行う。
 このようにトリップ属性の推定を行うことにより、トリップ属性を精度高く推定することが可能となる。
(6)第6の実施形態
 第6の実施形態は、第1乃至第5の実施形態で示したトリップ属性推定システムを用いて、トリップ属性の推定を行い、そのデータを統計的に処理することで、ある都市や地域内の人々の交通行動特性を簡単に調査するための交通行動特性調査システムに関するものである。
 図51は、第6の実施形態による交通行動特性調査システム5100の構成例を示す図である。交通行動特性調査システム5100は、第1の実施形態によるトリップ属性推定システム100に加え、推定されたトリップ属性に対して統計処理を行う交通行動特性データ作成部5101と、その結果を表示するための交通行動特性可視化部5102と、を有している。
 交通行動特性調査システム5100は、まず、トリップ属性推定システム(第1乃至第5のトリップ属性推定システムの何れを用いても良い)を用いて複数の携帯端末で収集したデータのトリップ属性推定を行う。
 次に、交通行動特性データ作成部5101は、トリップ属性の推定結果を統計処理して、交通行動特性データを作成する。そして、交通行動特性可視化部5102は、この交通行動特性データを可視化して、ユーザに提示する。
 交通行動データの提示例としては、対象地域を図52のようにグリッドに区切って、ユーザに統計処理を行いたいグリッドを選択させ、選択されたグリッドに関する統計データ(例えば、各グリッドから特定の地域へ移動したユーザの人数)を表示することが可能である。また、統計データの提示例としては、図53のように、当該地域へ流入しているトリップ・当該地域から流出しているトリップ、当該地域内で滞留しているトリップ、当該地域を通過しているトリップ、のそれぞれについて、使用されている主な交通手段の割合を表示することがありうる。ここで、主な交通手段とは、1つのメイントリップに含まれるサブトリップの中で、最も移動距離の長いものと定義する。最も移動時間が長いものと定義しても良い。また、流入トリップとはOが当該地域外でDが当該地域内のトリップをいい、流出トリップとはOが当該地域内でDが当該地域外のトリップをいう。また、滞留トリップとはOもDも当該地域内のトリップをいい、通過トリップとはOもDも当該地域外であるが、移動経路上の点が一点以上当該地域内にあるトリップを指すものとする。これらはいずれも、トリップ属性推定結果格納用DB111を参照することで抽出することができる。
 また、交通手段の代わりに、移動目的の割合を表示するようにしても良い。さらに、流入の際の出発地域がどこであるかの分布を出力しても良いし、流出の際の到着地域がどこであるかの分布を出力しても良い。ユーザに2地点を選択させ、その2地点間の移動に用いられている交通手段の割合を示しても良い。
 なお、ここでは対象地域をグリッドに区切って、ユーザに選択させる例について説明したが、円形や四角形など、任意の図形を地図上でユーザが描けるようにし、その図形の範囲内の点について、上記した統計処理を行うようにしても良い。
 また、上述した統計量を1日の中の時間帯ごとに区切って表示するようにしても良いし、平日と休日や、通常時と災害時、あるいは何らかのイベント開催時など、2つの日の交通行動特性の違いを比較できるように並べて表示をするなどとしても良い。
 さらに、統計処理の対象はメイントリップ単位であっても良いし、サブトリップ単位でもよい。
 以上のような交通行動特性調査システムを用いることにより、都市計画や交通計画の際に、従来はアンケートなど手作業で行っていた交通行動特性の調査を安価かつ簡易に、しかも高頻度に実施することができ、よりきめ細かな計画を行うことが可能となる。
 また、これまでの実施形態において説明したGPSデータや加速度センサデータに関しては、スマートフォンなどで動作するアプリケーションを端末にインストールして収集するようにすると良い。この際、第6の実施形態で説明したような交通行動特性の調査結果を活用する事業者、例えば地域内の商店や交通事業者などと提携し、このアプリケーションをインストールしてデータ提供を行ってくれた人には、地域の商店で使用可能なクーポンを配布したり、交通機関に割引運賃で乗車することができるなどの特典を設けることで、アプリケーションの利用を促すことができる。
(7)その他
 以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。例えば、前述した実施例は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除及び置換をすることが可能である。 
 また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、記憶装置(メモリ)や、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の非一時的な記録媒体に格納することができる。
 また、制御線や情報線は説明上必要と考えられるものを示しており、製品に実装する上で必要な全ての制御線及び情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
100・・・トリップ属性推定システム
101・・・GPS受信機
102・・・加速度センサ
103・・・センサデータ格納用DB
104・・・移動手段推定部
105・・・トリップ抽出部
106・・・OD推定部
107・・・経路推定部
108・・・移動目的推定部
109・・・補正部
110・・・トリップ属性間関連情報格納用DB
111・・・トリップ属性推定結果格納用DB
112・・・POI情報格納用DB
113・・・判別基準値格納用DB
200・・・携帯端末
201・・・入力装置
202・・・通信インタフェース
203・・・中央演算処理装置(プロセッサ)
204・・・記憶装置(メモリ)
205・・・出力装置
400・・・計算機
401・・・入力装置
402・・・中央演算処理装置
403・・・通信インタフェース
404・・・主記憶装置
405・・・補助記憶装置
406・・・出力装置
4100・・・トリップ属性間関連情報格納用DB自動構築機能付トリップ属性推定システム
4101・・・トリップ属性間関連情報自動抽出部
4400・・・滞留判定閾値自動調整機能付トリップ属性推定システム
4401・・・滞留判定閾値計算部
4700・・・生活行動パターン別クラスタリング機能付トリップ属性推定システム
4701・・・生活行動パターンクラスタリング部
4702・・・生活行動パターンDB
4703・・・生活行動パターンクラス計算部
4704・・・生活行動パターン別判別基準値DB
5100・・・交通行動特性調査システム
5101・・・交通行動特性データ作成部
5102・・・交通行動特性可視化部

Claims (15)

  1.  携帯端末から取得するGPSデータ及び加速度センサデータを格納する記憶装置と、
     前記記憶装置から前記GPSデータ及び前記加速度センサデータを読み出し、当該GPSデータ及び加速度センサデータを用いて、前記携帯端末を保持するユーザの移動の特徴を規定する、複数のトリップ属性を推定するプロセッサと、を有し、
     前記記憶装置は、前記複数のトリップ属性間の関連性を定義するトリップ属性間関連情報を保持し、
     前記プロセッサは、前記複数のトリップ属性の推定結果に含まれる第1のトリップ属性の推定結果と前記トリップ属性間関連情報とを用いて、前記第1のトリップ属性とは異なる第2のトリップ属性の推定結果を補正することを特徴とするトリップ属性推定システム。
  2.  請求項1において、
     前記記憶装置は、トリップ属性を推定する際に用いられる制約条件を示す交通行動制約情報を保持し、
     前記プロセッサは、前記記憶装置から前記交通行動制約情報を読み出し、当該制約情報をさらに用いて前記第2のトリップ属性の推定結果を補正することを特徴とするトリップ属性推定システム。
  3.  請求項2において、
     前記交通行動制約情報は、前記ユーザが移動する際に用いる移動手段毎の移動速度に基づく制約であることを特徴とするトリップ属性推定システム。
  4.  請求項2において、
     前記交通行動制約情報は、前記ユーザが移動する際に用いる移動手段の遷移確率であることを特徴とするトリップ属性推定システム。
  5.  請求項1において、
     前記推定される複数のトリップ属性は、前記ユーザが移動する際に用いる移動手段と、移動経路と、出発地と、到着地と、移動目的と、を含むことを特徴とするトリップ属性推定システム。
  6.  請求項1において、
     前記プロセッサは、前記複数のトリップ属性を推定する際に推定精度を計算し、トリップ属性の推定結果を補正する際には補正を行うトリップ属性の順番を前記推定精度に応じて動的に決定することを特徴とするトリップ属性推定システム。
  7.  請求項6において、
     前記プロセッサは、前記携帯端末に対応付けられたIC乗車券の乗降履歴情報を利用して、前記ユーザが移動する際に用いる移動手段の推定を行い、前記IC乗車券の乗降履歴情報が存在する区間の前記移動手段の推定結果を用いて、前記移動手段以外の他のトリップ属性の推定結果を補正することを特徴とするトリップ属性推定システム。
  8.  請求項1において、
     前記複数のトリップ属性は、前記ユーザが移動の際に用いる移動手段と移動経路を含み、
     前記プロセッサは、前記移動手段の情報に基づいて、前記移動経路の少なくとも一部の区間のデータを補間することを特徴とするトリップ属性推定システム。
  9.  請求項1において、
     前記プロセッサは、前記GPSデータ及び前記加速度センサデータを用いて前記携帯端末を保持するユーザの滞在場所を決定し、前記GPSデータ及び前記加速度センサデータを用いて前記滞在場所の種類を特定するPOI情報自動抽出処理を実行することを特徴とするトリップ属性推定システム。
  10.  請求項1において、
     前記プロセッサは、前記推定された複数のトリップ属性を統計処理することにより、前記トリップ属性間関連情報を抽出し、前記記憶装置に登録するトリップ属性間関連情報自動抽出処理を実行することを特徴とするトリップ属性推定システム。
  11.  請求項1において、
     前記プロセッサは、前記GPSデータにおける座標値の分散値に応じて、前記複数のトリップ属性のうちトリップ開始時刻及び終了時刻を推定するために用いる滞留判定用閾値を動的に変更することを特徴とするトリップ属性推定システム。
  12.  請求項1において、
     前記記憶装置は、さらに、複数のユーザの生活行動を分類する複数の生活行動パターンに対し、当該複数の生活行動パターンのそれぞれが前記GPSデータ及び前記加速度センサデータを用いて算出するための複数の特徴量で表現される生活行動パターン情報を保持し、
     前記プロセッサは、
      前記ユーザの処理対象のデータについて前記生活行動パターン情報と同じ特徴量を算出し、当該算出した特徴量と前記生活行動パターン情報の特徴量とを比較して比較結果である生活行動パターンの分類を取得し、
      前記生活行動パターンの分類を参照して前記トリップ属性を推定することを特徴とするトリップ属性推定システム。
  13.  請求項1に記載のトリップ属性推定システムと、
     前記トリップ属性の推定結果を統計処理して、交通行動特性データを作成する交通行動特性データ作成部と、
     前記作成された交通行動特性データを可視化する交通行動特性可視化部と、
     を有することを特徴とする交通行動調査システム。
  14.  コンピュータシステムにおいて、携帯端末から取得するGPSデータ及び加速度センサデータを用いて、前記携帯端末を保持するユーザの移動の特徴を規定する、複数のトリップ属性を推定するトリップ属性推定方法であって、
     前記コンピュータシステムのプロセッサが、記憶装置から前記複数のトリップ属性間の関連性を定義するトリップ属性間関連情報を読み出すことと、
     前記プロセッサが、前記複数のトリップ属性の推定結果に含まれる第1のトリップ属性と前記トリップ属性間関連情報とを用いて、前記第1のトリップ属性とは異なる第2のトリップ属性の推定結果を補正することと、
    を含むトリップ属性推定方法。
  15.  携帯端末から取得するGPSデータ及び加速度センサデータを用いて、コンピュータシステムに前記携帯端末を保持するユーザの移動の特徴を規定する、複数のトリップ属性を推定させるプログラムであって、
     前記コンピュータシステムに、
     記憶装置から前記複数のトリップ属性間の関連性を定義するトリップ属性間関連情報を読み出す処理と、
     前記複数のトリップ属性の推定結果に含まれる第1のトリップ属性の推定結果と前記トリップ属性間関連情報とを用いて、前記第1のトリップ属性とは異なる第2のトリップ属性の推定結果を補正する処理と、
    を実行させるためのプログラム。
PCT/JP2014/063320 2014-05-20 2014-05-20 トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム WO2015177858A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/063320 WO2015177858A1 (ja) 2014-05-20 2014-05-20 トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/063320 WO2015177858A1 (ja) 2014-05-20 2014-05-20 トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム

Publications (1)

Publication Number Publication Date
WO2015177858A1 true WO2015177858A1 (ja) 2015-11-26

Family

ID=54553556

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/063320 WO2015177858A1 (ja) 2014-05-20 2014-05-20 トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム

Country Status (1)

Country Link
WO (1) WO2015177858A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170241786A1 (en) * 2016-02-19 2017-08-24 Yahoo Japan Corporation Estimation device, estimation method, and non-transitory computer readable storage medium
CN108062857A (zh) * 2017-12-22 2018-05-22 西南交通大学 用于出租车乘客出行目的的预测方法
JP2019074802A (ja) * 2017-10-12 2019-05-16 トヨタ自動車株式会社 サーバ装置、経路情報のマスキング処理方法およびそのプログラム
JP2019096288A (ja) * 2017-11-24 2019-06-20 日本電信電話株式会社 移動手段推定装置、方法、及びプログラム
JP2020086712A (ja) * 2018-11-20 2020-06-04 株式会社Niコンサルティング 勤務地推定システム、場所推定装置、場所推定方法及びそのプログラム
CN111444245A (zh) * 2020-04-22 2020-07-24 南京工业职业技术学院 一种基于智能移动终端的人体运动数据综合处理方法、介质及数据处理装置
JP7430835B1 (ja) 2023-04-19 2024-02-13 パシフィックコンサルタンツ株式会社 プログラム、方法、およびシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008152655A (ja) * 2006-12-19 2008-07-03 Ntt Docomo Inc 情報サービス提供システム、対象行動推定装置、対象行動推定方法
JP2009238196A (ja) * 2008-03-05 2009-10-15 Kddi Corp 携帯端末装置の移動状態を推定する方法及びシステム
WO2011036754A1 (ja) * 2009-09-24 2011-03-31 株式会社 東芝 交通情報提示装置及びプログラム
JP2013239007A (ja) * 2012-05-15 2013-11-28 Fujitsu Ltd 利用状況算出プログラム、利用状況算出方法、及び利用状況算出装置
JP2014055834A (ja) * 2012-09-12 2014-03-27 Sony Corp 情報処理装置と情報処理方法とプログラムおよび情報処理システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008152655A (ja) * 2006-12-19 2008-07-03 Ntt Docomo Inc 情報サービス提供システム、対象行動推定装置、対象行動推定方法
JP2009238196A (ja) * 2008-03-05 2009-10-15 Kddi Corp 携帯端末装置の移動状態を推定する方法及びシステム
WO2011036754A1 (ja) * 2009-09-24 2011-03-31 株式会社 東芝 交通情報提示装置及びプログラム
JP2013239007A (ja) * 2012-05-15 2013-11-28 Fujitsu Ltd 利用状況算出プログラム、利用状況算出方法、及び利用状況算出装置
JP2014055834A (ja) * 2012-09-12 2014-03-27 Sony Corp 情報処理装置と情報処理方法とプログラムおよび情報処理システム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170241786A1 (en) * 2016-02-19 2017-08-24 Yahoo Japan Corporation Estimation device, estimation method, and non-transitory computer readable storage medium
JP2019074802A (ja) * 2017-10-12 2019-05-16 トヨタ自動車株式会社 サーバ装置、経路情報のマスキング処理方法およびそのプログラム
JP2019096288A (ja) * 2017-11-24 2019-06-20 日本電信電話株式会社 移動手段推定装置、方法、及びプログラム
JP7147293B2 (ja) 2017-11-24 2022-10-05 日本電信電話株式会社 移動手段推定装置、方法、及びプログラム
CN108062857A (zh) * 2017-12-22 2018-05-22 西南交通大学 用于出租车乘客出行目的的预测方法
JP2020086712A (ja) * 2018-11-20 2020-06-04 株式会社Niコンサルティング 勤務地推定システム、場所推定装置、場所推定方法及びそのプログラム
CN111444245A (zh) * 2020-04-22 2020-07-24 南京工业职业技术学院 一种基于智能移动终端的人体运动数据综合处理方法、介质及数据处理装置
CN111444245B (zh) * 2020-04-22 2023-05-02 南京工业职业技术学院 基于智能移动终端的人体运动数据处理方法、介质及装置
JP7430835B1 (ja) 2023-04-19 2024-02-13 パシフィックコンサルタンツ株式会社 プログラム、方法、およびシステム

Similar Documents

Publication Publication Date Title
WO2015177858A1 (ja) トリップ属性推定システム、トリップ属性推定方法、トリップ属性推定プログラム、及び交通行動調査システム
Zhao et al. A trajectory clustering approach based on decision graph and data field for detecting hotspots
Zheng et al. Detecting collective anomalies from multiple spatio-temporal datasets across different domains
Jiang et al. A review of urban computing for mobile phone traces: current methods, challenges and opportunities
CN104380293B (zh) 基于位置从地图历史提供相关元素信息的方法和计算装置
US8612134B2 (en) Mining correlation between locations using location history
US8838586B2 (en) Relevancy ranking for map-related search
Krueger et al. Visual analysis of movement behavior using web data for context enrichment
Ghaemi et al. A visual segmentation method for temporal smart card data
Hu et al. Detecting and analyzing mobility hotspots using surface networks
CN105893537B (zh) 地理信息点的确定方法和装置
CN106462627A (zh) 根据多个位置数据报告分析语义地点和相关数据
US9785897B2 (en) Methods and systems for optimizing efficiency of a workforce management system
Marković et al. Applications of trajectory data from the perspective of a road transportation agency: Literature review and maryland case study
US8713045B2 (en) Location-type tagging using collected traveler data
CN107124695A (zh) 基于联系人信息来标注被访问的位置的方法和系统
CN101889294A (zh) 酒店费率分析系统
Stipancic et al. Measuring and visualizing space–time congestion patterns in an urban road network using large-scale smartphone-collected GPS data
Zhang et al. Identifying primary public transit corridors using multi-source big transit data
CN111475746B (zh) 兴趣点位置挖掘方法、装置、计算机设备和存储介质
CN111159583B (zh) 用户行为分析方法、装置、设备及存储介质
Chen et al. An analysis of movement patterns between zones using taxi GPS data
CN113159457A (zh) 一种智能路径规划的方法、系统及电子设备
WO2016067460A1 (ja) 交通行動推定システム、交通シミュレーションシステム、交通行動推定方法
Kawasaki et al. Choice set generation from GPS data set for grocery shopping location choice modelling in canton Zurich: Comparison with the Swiss Microcensus 2005

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: 14892355

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14892355

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP