WO2012096175A1 - 行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム - Google Patents

行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム Download PDF

Info

Publication number
WO2012096175A1
WO2012096175A1 PCT/JP2012/000140 JP2012000140W WO2012096175A1 WO 2012096175 A1 WO2012096175 A1 WO 2012096175A1 JP 2012000140 W JP2012000140 W JP 2012000140W WO 2012096175 A1 WO2012096175 A1 WO 2012096175A1
Authority
WO
WIPO (PCT)
Prior art keywords
position information
time
positioning
information log
log
Prior art date
Application number
PCT/JP2012/000140
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 US13/977,386 priority Critical patent/US9497584B2/en
Priority to JP2012552685A priority patent/JP5966930B2/ja
Priority to EP12734268.1A priority patent/EP2664999A4/en
Publication of WO2012096175A1 publication Critical patent/WO2012096175A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • G06F16/287Visualization; Browsing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/35Constructional details or hardware or software details of the signal processing chain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position

Definitions

  • the present invention relates to an action pattern analysis device, an action pattern analysis method and an action pattern analysis program for analyzing an action pattern from position information measured irregularly.
  • LBS Location Based Service
  • an application that uses the GPS (Global Positioning System) function installed in mobile phones etc. as LBS and an application that adds location information logs to photos taken with a mobile terminal with a camera function, and "Tweet" with location information logs Twitter (registered trademark) is widely used.
  • LBS there is a recommendation service that performs content distribution in accordance with a user's action pattern that can be obtained from personal position information.
  • Patent Document 1 describes an action management device capable of managing an action of an individual from position information.
  • the behavior management device described in Patent Document 1 searches for information for performing behavior management and estimates behavior from position information measured at predetermined time intervals using a GPS function.
  • the positioning interval of the position information using the terminal with the position information acquisition function may be long, or the positioning of the position information may be irregular.
  • the behavior management device described in Patent Document 1 has a problem that the behavior management can not be performed with high accuracy.
  • the positioning interval of the position information is long and the positioning of the position information is irregular, the location where the user often stays and the stay time zone, the moving route and the moving time where the user frequently moves It is desirable that the user's daily behavior patterns, such as bands, be accurately obtained.
  • the present invention provides an action pattern analysis device, an action pattern analysis method, and an action that can analyze the action pattern of the user with high accuracy even when the positioning interval of the position information is long and positioning of the position information is irregular.
  • the purpose is to provide a pattern analysis program.
  • a behavioral pattern analysis device plots a positional information log, which is information including a user's positioning position and positioning date and time, in a multidimensional space defined by numerical information representing the positioning position and time.
  • the position information log is weighted so that it is easily determined that the Euclidean distance in the time direction with respect to the position information space, which is a space defined by the numerical value information representing the positioning position in the multidimensional space
  • a retention point cluster extraction unit that extracts a retention point that is a position at which a user frequently stays by clustering information logs, and a position information log extracted as a retention point from the position information log plotted by the position information plotting unit
  • Non-dwelling point positional information log extracting means for extracting a set of positional information logs excluding a point as a non-dwelling point
  • the moving route of the user is extracted by performing weighting on the position information log of the non-staying point, which makes it easy to determine that the Euclidean distance in the time direction to the position information space is
  • Another behavior pattern analysis device is a difference value between two adjacent position information logs sorted in the order of positioning date and time included in the position information log which is information including the user's positioning position and positioning date and time.
  • the attribute of the position information log is based on the time difference between the positioning dates and times included in the position information log, the movement vector function value calculating means for calculating the distance between the positioning positions, and the time difference between the positioning dates and times and the distance between the positioning positions
  • Attribute determination means for determining whether a retention attribute indicates a retention point at which the user frequently stagnates or a non-retention attribute indicates a non-retention point at a position on the user's travel route;
  • a position information plotting means for plotting on a multidimensional space defined by numerical information representing the positioning position and time, and an sky defined by the numerical information representing the positioning position in the multidimensional space
  • the position information log is weighted so that it is easily determined that the Euclidean distance in the time direction to the position information space is short, and the position information log
  • a behavioral pattern analysis method plots a position information log, which is information including a user's positioning position and positioning date and time, in a multidimensional space defined by numerical information representing the positioning position and time, and multidimensional A weighting is applied to the position information log to easily determine that the Euclidean distance in the time direction is close to the position information space which is a space defined by the numerical information representing the positioning position in space, and the weighted position information log is clustered.
  • the retention point which is the position where the user frequently dwells
  • a set of position information logs excluding the position information log extracted as the retention point from the position information log plotted on the multidimensional space is not It is extracted as a retention point, and it is not possible to determine the weighting that makes it easy to determine that the Euclidean distance in the time direction to the position information space is far Performed on the position information log boiling point, by clustering the weighted location information log, and extracts the movement path of the user.
  • Another action pattern analysis method is a difference value between two adjacent position information logs sorted in the order of positioning date and time included in the position information log which is information including the user's positioning position and positioning date and time.
  • the time difference between positioning dates and times included in the position information log and the distance between positioning positions are calculated, and the attribute of the position information log is frequently stagnated by the user based on the time difference between positioning dates and times and the distance between positioning positions It is determined whether it is a staying attribute that indicates the staying point that is the position to be located or a non-dwelling attribute that indicates the non-dwelling point that is the position on the user's moving route, and the position information log is defined by numerical information And the Euclidean distance in the time direction to the position information space, which is a space defined by numerical information representing the positioning position in the multidimensional space, is determined to be close.
  • Weighting is performed on the position information log, and by clustering the position information logs determined to have the holding attribute among the weighted position information logs, the holding point is extracted, and the time direction relative to the position information space is extracted.
  • the moving route of the user is performed by performing weighting on the position information log that makes it easy to determine that the Euclidean distance is far, and clustering the position information logs determined to have the non-staying attribute among the weighted position information logs. To extract.
  • a behavioral pattern analysis program plots on a computer a position information log, which is information including a user's positioning position and positioning date and time, in a multidimensional space defined by numerical information representing the positioning position and time.
  • Position information plotting processing, weighting is applied to the position information log to make it easy to determine that the Euclidean distance in the time direction is close to the position information space which is a space defined by numerical information representing a positioning position in a multidimensional space.
  • a retention point cluster extraction process for extracting retention points, which are locations where users frequently stay, by clustering the position information logs, and a position extracted as a retention point from the position information log plotted in the position information plot process A non-dwelling point for extracting a set of position information logs excluding the information log as a non-dwelling point
  • Another behavioral pattern analysis program is a computer configured to compare the difference between two adjacent position information logs sorted in the order of positioning date and time included in the position information log which is information including the user's positioning position and positioning date and time. Based on the time difference between positioning dates and times included in the position information log as a value, movement vector function value calculation processing for calculating the distance between positioning positions, the time difference between positioning dates and times, and the distance between positioning positions, Attribute determination processing to determine whether the attribute is a residence attribute indicating a residence point where the user frequently resides, or a non-dwelling attribute indicating a non-dwelling point that is a position on the user's travel route, position information log Position information plotting processing for plotting on a multi-dimensional space defined by numerical information representing the positioning position and time, to numerical information representing the positioning position in the multi-dimensional space A position where the Euclidean distance in the time direction with respect to the position information space, which is a space defined as described above, is determined to be close to the position information log,
  • the user's action pattern can be analyzed with high accuracy.
  • the life log service is such that location information and acquisition time of location information are recorded using sensor information based on GPS or the like mounted on a portable terminal.
  • FIG. 1 is a block diagram showing a configuration example of a first embodiment of the behavior pattern analysis device according to the present invention.
  • the behavior pattern analysis device in the present embodiment includes a position information log input unit 10, a behavior pattern analysis reference input unit 11, a behavior pattern analysis unit 20, and a behavior pattern storage unit 30.
  • the position information log is information including numerical value information indicating the position of a terminal that has acquired a position such as latitude, longitude, and altitude, and date and time information indicating the date and time when the numerical value information (position information) is acquired.
  • the position information log is information including the positioning position of the terminal user and the positioning date and time.
  • the position information log may include an identifier of a terminal that has acquired the position information, and an identifier of the terminal user (hereinafter referred to as a user identifier).
  • FIG. 2 is an explanatory view showing an example of the position information log. The example illustrated in FIG. 2 indicates that the location information log includes the user identifier, the date and time, the latitude and the longitude.
  • the action pattern analysis reference input unit 11 performs action information (hereinafter, also simply referred to as a reference) as a reference when the action pattern analysis unit 20 described later analyzes the action pattern based on the position information log. Input to the pattern analysis unit 20.
  • the behavior pattern analysis standard input unit 11 is a standard of the day to be analyzed (such as "Thursday", "all days") (hereinafter referred to as a day standard) or "3 am"
  • the reference of the time to be an analysis target such as (hereinafter referred to as a time reference) is input to the behavior pattern analysis unit 20. That is, the reference here is information specifying the date and time information of the position information log to be analyzed.
  • the action pattern analysis unit 20 is a position information where a terminal user frequently stays (hereinafter referred to as a staying point) and a route where the terminal user frequently travels (hereinafter referred to as a movement route) are position information. Extract by analyzing the log. Hereinafter, these extracted information may be collectively referred to as action pattern data.
  • the action pattern analysis unit 20 includes a clustering space plotting unit 21, a staying point cluster extracting unit 22, a staying point position information log removing unit 23, and a movement path cluster extracting unit 24.
  • the clustering space plotting unit 21 plots location information logs to be analyzed in a clustering space.
  • the clustering space means a super space in which a time axis representing time is added to a numerical value representing a position such as latitude, longitude, or altitude.
  • the clustering space is a multidimensional space defined by position information and date and time information, and is a three-dimensional space defined by at least latitude, longitude, and time.
  • plotting the position information log in the clustering space means indicating the position information log in the coordinates of the clustering space.
  • the positional information log plotted in the clustering space may be referred to as data plotted in the clustering space or clustering spatial data.
  • FIG. 3 is an explanatory view showing an example of a clustering space.
  • the clustering space illustrated in FIG. 3 is a three-dimensional space defined by the latitude axis, the longitude axis, and the time axis, and corresponds to the x axis, the y axis, and the z axis, respectively. The details of FIG. 3 will be described later.
  • the clustering space plotting unit 21 holds the day of the week reference and the time reference value input from the action pattern analysis reference input unit 11. The clustering space plotting unit 21 then performs position information logging in the clustering space based on the held day of the week reference and time reference values, and the position information log of the user input from the position information log input unit 10. Plot The clustering space plotting unit 21 sets, for example, the position information log acquired within a predetermined period from the reference when analyzing the action pattern as an analysis target. Thereafter, the clustering space plotting unit 21 inputs the data plotted in the clustering space to the staying point cluster extracting unit 22.
  • FIG. 4 is an explanatory view showing an example of the position information log plotted in the clustering space.
  • FIG. 4 shows an example where position information logs are plotted in a clustering space in which a latitude-longitude plane is divided for each date, and the position information logs are integrated.
  • the clustering space plotting unit 21 is a position information log from Thursday, September 2 from 3 am to September 3, 3 am, and September 9, Thursday from 3 am to September 10, 3 am Extract location information logs up to Then, the clustering space plotting unit 21 removes the date of the extracted position information log, and adds the time axis aligned on the time series from 3 am to 3 am the next day to the clustering space where the time axis is added to the latitude-longitude plane The position information log is plotted (see FIGS. 4 (a) and (b)). Then, the clustering space plotting unit 21 generates a clustering space in which the position information logs for these two days are integrated (see FIG. 4C).
  • the clustering space plotting unit 21 plots position information logs for each date on a two-dimensional plane defined by latitude and longitude, and then integrates the position information logs.
  • the clustering space plotting unit 21 may plot the position information log directly in a three-dimensional clustering space defined by latitude, longitude and time.
  • the clustering space plotting unit 21 plots the position information log in a four-dimensional clustering space defined by the latitude, longitude, altitude and time. You may
  • the staying point cluster extraction unit 22 performs clustering of clustering spatial data, and extracts a position where the terminal user is staying frequently (that is, a staying point).
  • the staying point cluster extraction unit 22 is a general-purpose generalization such as EM (Expectation Maximization) algorithm or hierarchical clustering, which is a set of position information logs having close Euclidean distance in space consisting of three variables of latitude, longitude and time.
  • EM Extractation Maximization
  • hierarchical clustering which is a set of position information logs having close Euclidean distance in space consisting of three variables of latitude, longitude and time.
  • the dwell point is extracted by using the clustering method of
  • the extracted retention points may be referred to as retention point pattern data.
  • the space in which the staying point cluster extraction unit 22 performs clustering is not limited to a space defined by three variables of latitude, longitude, and time.
  • the space for clustering may be a space defined by four or more variables.
  • the staying point cluster extraction unit 22 performs clustering on the location information log in the space defined by the four variables of latitude, longitude, altitude, and time. It is also good.
  • the position information log is plotted on the space defined by the three variables of latitude, longitude and time will be specifically described.
  • the position information log the latitude at the coordinates indicated by X i, longitude Y i, if the time and Z i, 2 squared value of the Euclidean distance between certain two points, (X 1 -X 2) 2 + ( It is defined by Y 1 -Y 2 ) 2 + (Z 1 -Z 2 ) 2 .
  • time Z is different in unit system. Therefore, it is necessary to define a distance function that is strongly related to the location (latitude-longitude) with respect to the time in space. Therefore, a distance function is defined in which the value of (Z 1 -Z 2 ) 2 is multiplied by a predetermined weight value k 1 . That is, this function is defined as (X 1 -X 2 ) 2 + (Y 1 -Y 2 ) 2 + k 1 (Z 1 -Z 2 ) 2 .
  • the weight value k 1 is the difference between the distance between the points on the latitude-longitude plane and the distance between the points on the latitude-longitude plane and the points along the time axis. It can be said that it is a weighting value to be attached.
  • the value of k 1 is decreased, when the position information logs are compared, the difference in time becomes smaller than the difference in distance. Therefore, it is easy to determine that the Euclidean distance of the time axis with respect to the latitude-longitude plane is close by reducing the value of k 1 , so in the position information log, a log close to a place (that is, a position determined from latitude and longitude) It is possible to generate clusters that are likely to be in the same set.
  • This weight value k 1 the result that the user has been previously tuned so that the size of the intended retention point of service is specified. For example, when time Z is an hour unit, when it is desired to extract a staying point having a radius of about 1 km in Japan, it is desirable to set the weight value k 1 to about 1/1200.
  • the weight values set in advance are compared with the latitude and longitude in the data plotted in the clustering space. And multiply each.
  • the weight value may be any value as long as it is determined that the Euclidean distance on the time axis is close to the latitude-longitude plane.
  • the retention point cluster extraction unit 22 performs a clustering operation on the clustering spatial data in order to extract the retention points using the clustering spatial data multiplied by the weight value.
  • the operation of clustering may be performed using any generally known clustering method.
  • the case where the clustering operation is performed using the centroid method will be described as an example.
  • the retention point cluster extraction unit 22 sets all data plotted in the clustering space as initial clusters, and integrates clusters having the shortest Euclidean distance between two points selected from all clusters into one cluster. At this time, the staying point cluster extraction unit 22 obtains the value of the center of gravity from the value included in the original cluster, and sets the obtained value as a new data value of the integrated cluster. The retention point cluster extraction unit 22 also holds the number of clustering spatial data forming the integrated cluster.
  • the staying point cluster extraction unit 22 repeatedly performs the above calculation within a range in which the Euclidean distance does not exceed a preset threshold (hereinafter, referred to as a first Euclidean distance threshold).
  • a preset threshold hereinafter, referred to as a first Euclidean distance threshold.
  • the staying point cluster extraction unit 22 determines a cluster whose number of clustering spatial data obtained by the operation up to this point exceeds a preset threshold (hereinafter referred to as a first cluster number threshold) as the staying point.
  • a preset threshold hereinafter referred to as a first cluster number threshold
  • An appropriate value is set to this first cluster number threshold value by a test or the like.
  • the position at which the position information of the number exceeding the first cluster number threshold value can be said to be the position where the user frequently stays.
  • the retention point cluster extraction unit 22 determines that the clusters 301a and 301b are retention points. Then, the staying point cluster extraction unit 22 identifies the staying point of the earliest time and the latest time of the data in the cluster, and the value of the center of gravity of the position information (latitude and longitude) in the data in the cluster.
  • the identifier is stored in the retention point pattern storage unit 31 together with an identifier (hereinafter, referred to as a retention point identifier).
  • the staying point position information log removing unit 23 extracts, from the data passed from the clustering space plotting unit 21, a position information log that the staying point cluster extracting unit 22 has not determined as a staying point.
  • the set of position information logs is referred to as a non-staying point.
  • the movement path cluster extraction unit 24 performs clustering of clustering spatial data, and extracts a time zone and movement path in which the terminal user is moving frequently.
  • the extracted travel route may be referred to as travel route pattern data.
  • the movement route cluster extraction unit 24 generates movement by using a general-purpose clustering method to generate a set of position information logs having close Euclidean distance in space consisting of three variables of latitude, longitude, and time. Extract the route.
  • the space where the movement path cluster extraction unit 24 performs clustering is not limited to the space defined by the three variables of latitude, longitude, and time, but is defined by four or more variables, as described in the retention point cluster extraction unit 22. It may be a space to be
  • the distance function for the three variables of latitude, longitude and time is (X 1 -X 2 ) 2 + (Y 1 -Y 2 ) 2 + k 2 (Z 1 -Z) 2) 2 and is defined, latitude, longitude, distance function for 4 variable altitude and time, (X 1 -X 2) 2 + (Y 1 -Y 2) 2 + (W 1 -W 2) 2 + k 2 It is defined as (Z 1 -Z 2 ) 2 .
  • Weight value k 2 Here also, as a result of the user has been pre-tuned so that the size of the intended retention point of service is specified.
  • the relationship of k 1 ⁇ k 2 is established between the weight value k 1 when clustering the staying points and the weight value k 2 when calculating the movement path.
  • the movement path cluster extraction unit 24 first receives clustering spatial data that has not been determined as a retention point from among data plotted in the clustering space from the retention point position information log removal unit 23. Then, the movement path cluster extraction unit 24 multiplies the latitude and the longitude of the data plotted in the clustering space with the weight value set in advance.
  • the weight may be any value as long as it is determined that the Euclidean distance on the time axis is far from the latitude-longitude plane.
  • the movement path cluster extraction unit 24 performs a clustering operation on the clustering space data in order to extract a place indicating the movement path using the clustering space data multiplied by the weight value.
  • the operation of clustering may be performed using any generally known clustering method.
  • the case where the clustering operation is performed using the centroid method will be described as an example.
  • the movement path cluster extraction unit 24 sets clustering space data received from the retention point position information log removal unit 23 as initial clusters, and selects one cluster among the clusters having the shortest Euclidean distance between two points selected from all clusters. Consolidate into two clusters. At this time, the movement path cluster extraction unit 24 obtains the value of the center of gravity from the value included in the original cluster, and sets the obtained value as a new data value of the integrated cluster. The movement route cluster extraction unit 24 also holds the number of clustering spatial data forming the integrated cluster.
  • the movement path cluster extraction unit 24 repeatedly performs the above-described calculation in a range in which the Euclidean distance does not exceed a preset threshold (hereinafter referred to as a second Euclidean distance threshold). In addition, what is necessary is just to set a value comparable to a weight value to a 2nd Euclidean distance threshold value.
  • the movement path cluster extraction unit 24 determines a cluster whose number of clustering spatial data obtained by the operation up to this point exceeds a preset threshold (hereinafter referred to as a second cluster number threshold) as a movement path.
  • a preset threshold hereinafter referred to as a second cluster number threshold
  • An appropriate value is set to this second cluster number threshold value by a test or the like. For example, in the case of clustering space data illustrated in FIG. 4C, the movement route cluster extraction unit 24 determines that the cluster 302 is a movement route.
  • the movement path cluster extraction unit 24 extracts the earliest time and the latest time of the data in the cluster. Furthermore, the movement path cluster extraction unit 24 determines the clustering spatial data (that is, the value of the center of gravity of the cluster) included in the cluster and the position information of all the retention points stored by the retention point pattern storage unit 31 (that is, A dwell point with the shortest Euclidean distance between two points with and a center of gravity value of longitude and a dwell point second shortest are determined as the start and end points of the movement path. Then, the movement route cluster extraction unit 24 stores the extracted time and start and end points and the determined retention point in the movement route pattern storage unit 32 together with an identifier for identifying the movement route (hereinafter referred to as a movement route identifier). Let Hereinafter, information for identifying the staying point with the shortest Euclidean distance and the staying point with the second shortest distance will be referred to as a first adjacent staying point identifier and a second adjacent staying point identifier.
  • the clusters 101a, 101b, and 101c indicate the clusters determined to be retention points, and the clusters 102a and 102b indicate the clusters determined to be movement paths.
  • the action pattern analysis unit 20 (more specifically, the clustering space plot unit 21, the retention point cluster extraction unit 22, the retention point position information log removal unit 23, and the movement path cluster extraction unit 24) It is realized by the CPU of the computer operating according to the analysis program).
  • the program is stored in a storage unit (not shown) of the behavior pattern analysis device, and the CPU reads the program, and according to the program, the behavior pattern analysis unit 20 (more specifically, the clustering space plotting unit 21, A retention point cluster extraction unit 22, a retention point position information log removal unit 23, and a movement route cluster extraction unit 24 may be operated.
  • the clustering space plotting unit 21, the staying point cluster extracting unit 22, the staying point position information log removing unit 23, and the movement path cluster extracting unit 24 may be respectively realized by dedicated hardware.
  • the action pattern storage unit 30 stores the action pattern data analyzed by the action pattern analysis unit 20 as a database.
  • the action pattern storage unit 30 includes a retention point pattern storage unit 31 and a movement route pattern storage unit 32.
  • the retention point pattern storage unit 31 stores the retention point pattern data extracted by the retention point cluster extraction unit 22 as a database.
  • FIG. 5 is an explanatory view showing an example of staying point pattern data.
  • the retention point pattern storage unit 31 stores the user identifier, the retention point identifier, the retention start time, the retention end time, the latitude and the longitude as retention point pattern data.
  • the position information log includes information indicating the altitude
  • the retention point pattern storage unit 31 stores retention point pattern data to which the altitude is added.
  • the movement route pattern storage unit 32 stores the movement route pattern data extracted by the movement route cluster extraction unit 24 as a database.
  • FIG. 6 is an explanatory view showing an example of movement route pattern data.
  • the moving route pattern storage unit 32 includes a user identifier, a moving route identifier, a moving start time, a moving end time, a first proximity staying point identifier, and a second proximity staying point identifier as moving route pattern data.
  • the action pattern storage unit 30 (more specifically, the staying point pattern storage unit 31 and the movement path pattern storage unit 32) is realized by, for example, a magnetic disk or the like.
  • FIG. 7 and 8 are flowcharts showing an operation example of the behavior pattern analysis device.
  • FIG. 9 is a flowchart showing an example of an operation of setting a reference day and a reference time.
  • the position information log input unit 10 inputs the position information log to the clustering space plotting unit 21 (step A1 in FIG. 7).
  • the clustering space plotting unit 21 plots the position information log in the clustering space based on the reference day of the week and the reference time already set, and retains the data plotted in the clustering space Input to the point cluster extraction unit 22 (step A2). The method of setting the reference day and the reference time will be described later.
  • the retention point cluster extraction unit 22 receives the data plotted in the clustering space from the clustering space plotting unit 21, the weight values set in advance are compared with the latitude and longitude of the data plotted in the clustering space. And multiply each (step A3). Note that the staying point cluster extraction unit 22 may multiply the time by a preset weight value.
  • the staying point cluster extraction unit 22 plots all the data plotted in the clustering space and multiplied by the weight value as an initial cluster (step A4). Then, the staying point cluster extraction unit 22 determines whether the Euclidean distance between two points selected out of all the clusters exceeds the set first Euclidean distance threshold (step A5). If the Euclidean distance between the two points does not exceed the first Euclidean distance threshold (No in step A5), the process proceeds to step A6. If it exceeds (Yes in step A5), the process proceeds to step A7.
  • the staying point cluster extraction unit 22 integrates clusters having the shortest Euclidean distance between two points selected from among all clusters into one cluster. Do. At this time, the retention point cluster extraction unit 22 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Furthermore, the staying point cluster extraction unit 22 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . The retention point cluster extraction unit 22 also holds the number of pieces of clustering spatial data included in the integrated cluster (step A6). After the process of step A6, the processes of step A5 and subsequent steps are performed.
  • the retention point cluster extraction unit 22 stores the clusters including the clustering spatial data whose number exceeds the set first cluster number threshold. I will judge. Next, the retention point cluster extraction unit 22 sets the earliest time of the data in the cluster as the retention start time, and the latest time as the retention end time. Then, the retention point cluster extraction unit 22 stores the retention start time, the retention end time, and the value of the center of gravity of the position information (latitude and longitude) in the data in the cluster in the retention point pattern storage unit 31 (step A7).
  • the retention point cluster extraction unit 22 inputs the data plotted in the clustering space received in step A2 and the retention point pattern data determined in step A7 into the retention point position information log removal unit 23 (step A8).
  • the retention point position information log removal unit 23 receives the data plotted in the clustering space and the retention point pattern data from the retention point cluster extraction unit 22, the retention point pattern data is included in the retention point pattern data from the data plotted in the clustering space Subtract the data determined to be the retention point. Then, the staying point position information log removing unit 23 inputs the remaining data subtracted from the data plotted in the clustering space to the movement route cluster extracting unit 24 (step A9 in FIG. 8).
  • the movement route cluster extraction unit 24 receives data which is data plotted in the clustering space and from which the position information log determined to be the retention point has been removed from the retention point position information log removal unit 23,
  • the set weight value is respectively multiplied to the latitude and longitude of the received data (step A10).
  • the movement route cluster extraction unit 24 may multiply the time by a preset weight value.
  • the movement path cluster extraction unit 24 plots all the data plotted in the clustering space and multiplied by the weight value in step A10 as an initial cluster (step A11). Then, the movement route cluster extraction unit 24 determines whether or not the Euclidean distance between two points selected out of all the clusters exceeds the set second Euclidean distance threshold (step A12). If the Euclidean distance between the two points does not exceed the second Euclidean distance threshold (No in step A12), the process proceeds to step A13, and if it exceeds (Yes in step A12), the process proceeds to step A14.
  • the movement path cluster extraction unit 24 combines clusters having the shortest Euclidean distance between two points selected from among all clusters into one cluster. Do. At this time, the movement path cluster extraction unit 24 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Further, the movement route cluster extraction unit 24 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . In addition, the movement route cluster extraction unit 24 also holds the number of clustering spatial data included in the integrated cluster (step A13). After the process of step A13, the processes of step A12 and subsequent steps are performed.
  • the movement path cluster extraction unit 24 moves the clusters including the clustering spatial data of the number exceeding the set second cluster number threshold. I will judge. Next, the movement route cluster extraction unit 24 sets the earliest time of the data in the cluster as the movement start time, and the latest time as the movement end time. Furthermore, the movement route cluster extraction unit 24 compares the position information (latitude and longitude) of the cluster with the position information (latitude and longitude) of the staying point included in the staying point pattern data received in step A9.
  • the movement path cluster extraction unit 24 determines, as the first adjacent staying point identifier and the second adjacent staying point identifier, the staying point having the first Euclidean distance with the position of the cluster and the second shortest staying point, respectively. . Then, the movement route cluster extraction unit 24 causes the movement route pattern storage unit 32 to store the movement start time, the movement end time, the first proximity dwell point identifier, and the second proximity dwell point identifier (step A14).
  • Step B2 when the user inputs the values of the reference day and the reference time, the behavior pattern analysis reference input unit 11 inputs the values of the input reference day and the reference time into the clustering space plotting unit 21 (see FIG. Step B1 in 9).
  • the clustering space data plotting unit 21 holds the values of the reference day and the reference time in the clustering space data plotting unit 21.
  • the clustering space plotting unit 21 plots the position information log on the three-dimensional space defined by at least the latitude, the longitude, and the time. Then, the retention point cluster extraction unit 22 performs weighting on the position information log so that it is easily determined that the Euclidean distance in the time direction with respect to the latitude-longitude plane is close, and the retention point is extracted by clustering the position information log. Do. Further, the staying point position information log removing unit 23 extracts the non-staying point excluding the position information log extracted as the staying point from the position information log plotted in the space.
  • the movement route cluster extraction unit 24 performs weighting on the position information log of the non-staying point by making it easy to determine that the Euclidean distance in the time direction with respect to the latitude-longitude plane is far, and clustering the position information log. , Extract the user's travel route. With such a configuration, even when the positioning interval of the position information is long and the positioning of the position information is irregular, the user's action pattern can be analyzed with high accuracy.
  • FIG. 10 is a block diagram showing a configuration example of a second embodiment of the behavior pattern analysis device according to the present invention.
  • the behavior pattern analysis apparatus in the present embodiment includes a position information log input unit 10, a behavior pattern analysis reference input unit 11, a behavior pattern analysis unit 50, a behavior pattern storage unit 30, and a movement vector calculation analysis unit 40. ing.
  • the contents of the action pattern analysis reference input unit 11 and the action pattern storage unit 30 are the same as in the first embodiment, and thus the description thereof is omitted.
  • the positional information log input unit 10 When the positional information log input unit 10 receives a positional information log having [latitude, longitude, time] as one record, the positional information log input unit 10 inputs the positional information log to the movement vector function value calculating unit 41.
  • the time can be referred to as a positioning date and time, and the latitude and longitude can be referred to as a positioning location.
  • the movement vector operation analysis unit 40 includes a movement vector function value operation unit 41 and a staying / movement route attribute determination unit 42.
  • the movement vector function value operation unit 41 sorts the records of the input position information log in chronological order of time included in the position information log. Then, the movement vector function value calculation unit 41 calculates difference values before and after the records sorted in time series order as a vector function value.
  • the vector function value may be referred to as a movement vector function value.
  • before and after the record means two adjacent records when the records of the position information log are sorted.
  • the difference value includes the time difference between the positioning dates and times included in the position information log, and the distance between the positioning locations.
  • the difference value may include a traveling direction angle representing a traveling direction between positioning locations.
  • the vector function value can be defined as (t 1 , t 2 , r, ⁇ ).
  • t 1 indicates the time when the record was recorded.
  • t 2 represents a difference (time difference positioning time) from the time when the record was recorded to the time that the next record is recorded.
  • r indicates the distance from the position where the record is recorded to the position where the next record is recorded (the distance between positioning locations).
  • indicates a traveling direction angle representing a traveling direction from the position where the record is recorded to the position where the next record is recorded.
  • FIG. 11 is an explanatory view showing an example of movement vector function values.
  • the example shown in FIG. 11 indicates that there are positional information logs recorded at 8:30, 9:00, 9:15, 9:30, 10:30 and 11:30 in chronological order.
  • the movement vector function value calculation unit 41 calculates the vector function value of the position information log recorded at 11:30 as (9, 0.25, 10, 315 °).
  • the unit of time and the difference of time is "hour”.
  • the movement vector function value calculation unit 41 may calculate the values of r and ⁇ based on the above-described equation. In the position information log recorded at 11:30, the vector function value for the position information log recorded at 11:30 is not calculated because there is no record recorded next.
  • each record is a record representing a residence, a record representing a movement route, or a residence and movement It is determined which of the routes represents a record that can not be determined.
  • the record representing the retention means the record included in the retention point
  • the record representing the movement path means the record included in the non-retention point.
  • an attribute of a record representing retention is referred to as a retention attribute.
  • an attribute of a record representing a moving route is indicated as a moving attribute.
  • the staying / moving route attribute determining unit 42 determines the attribute of each record indicating the vector function value received from the moving vector function value calculating unit 41, the staying point allowable distance R set in advance, and the effective record threshold time Determine using T.
  • the staying / moving route attribute determination unit 42 determines whether the value of t 2 (that is, the difference until the time when the next record is recorded) included in the movement vector function value of the record is larger than the effective record threshold time T. If the value of t 2 (that is, the difference until the time when the next record is recorded) included in the movement vector function value of the record is larger than the effective record threshold time T, the staying / moving route attribute determination unit 42 It is impossible to judge the attribute of. On the other hand, if the t 2 value included in the movement vector function value of the record is smaller than the effective record threshold time T, the residence / movement route attribute determination unit 42 further determines the r value and the residence point included in the movement vector function value. The value of the allowable distance R is compared.
  • the staying / moving route attribute determination unit 42 determines that the target record is a record having the staying attribute.
  • the staying / moving route attribute determination unit 42 determines that the target record is a record having the moving route attribute. Then, the staying / moving route attribute determination unit 42 inputs a record determined to be the staying attribute or the moving attribute to the clustering space plotting unit 21.
  • the action pattern analysis unit 50 includes a clustering space plot unit 21, a retention point cluster extraction unit 22, and a movement route cluster extraction unit 24. That is, the behavior pattern analysis unit 50 in the present embodiment is different from the behavior pattern analysis unit 20 in the first embodiment in that the retention point position information log removal unit 23 is not included.
  • the clustering space plotting unit 21 plots the position information log to be analyzed in the clustering space. Specifically, first, the clustering space plotting unit 21 sets a preset time (that is, time reference) as a date break, and extracts a position information log of the set day (that is, day reference). The method of extracting the position information log based on the time reference and the day of the week reference is the same as the method described in the first embodiment.
  • the clustering space plotting unit 21 may directly receive the position information log from the position information log input unit 10. Alternatively, the staying / moving route attribute determining unit 42 may input the position information log input to the moving vector operation analysis unit 40 to the clustering space plotting unit 21.
  • the clustering space plotting unit 21 plots, in the clustering space, a record in which the traveling direction angle received from the staying / moving route attribute determining unit 42 is added to the position information log including latitude, longitude, and time. .
  • the traveling direction angle is a value corresponding to the time included in the position information log. That is, the clustering space plotting unit 21 plots a record including [latitude, longitude, time, traveling direction angle] in a four-dimensional clustering space. Note that the method by which the clustering space plotting unit 21 plots the records in the clustering space is the same as that in the first embodiment. Then, the clustering space plotting unit 21 inputs the plotted data to the staying point cluster extracting unit 22.
  • the retention point cluster extraction unit 22 performs clustering of clustering spatial data as in the first embodiment, and extracts retention points. However, in the present embodiment, when the retention point cluster extraction unit 22 receives the data plotted in the clustering space from the clustering space plotting unit 21, only the records determined as the retention attribute by the retention / movement route attribute determination unit 42 are Perform clustering as a target.
  • the staying point cluster extraction unit 22 multiplies each value indicating the latitude and longitude of the data plotted in the clustering space by a preset weight value.
  • data determined as the stagnation attribute is set as an initial cluster.
  • the staying point cluster extraction unit 22 determines whether the Euclidean distance between two points selected from the clusters does not exceed a preset Euclidean distance threshold. If the Euclidean distance does not exceed the Euclidean distance threshold, the staying point cluster extraction unit 22 integrates clusters having the shortest Euclidean distance between two points selected from all clusters into one cluster.
  • the retention point cluster extraction unit 22 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Furthermore, the staying point cluster extraction unit 22 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . The retention point cluster extraction unit 22 also holds the number of pieces of clustering spatial data included in the integrated cluster.
  • the staying point cluster extraction unit 22 determines that a cluster including clustering spatial data whose number exceeds the set cluster number threshold is a staying point. Then, the retention point cluster extraction unit 22 sets the earliest time among the data in the cluster as the retention start time, and the latest time as the retention end time. Then, the retention point cluster extraction unit 22 causes the retention point pattern storage unit 31 to store the retention start time, the retention end time, and the values of the centers of gravity of latitude and longitude in the data in the cluster.
  • the staying point cluster extraction unit 22 inputs the data received from the clustering space plotting unit 21 to the movement path cluster extraction unit 24.
  • the method by which the staying point cluster extraction unit 22 performs clustering in the present embodiment is the same as that in the first embodiment.
  • the present embodiment is different from the first embodiment in that clustering is performed only on records determined to be the retention attribute by the retention point cluster extraction unit 22.
  • the movement path cluster extraction unit 24 performs clustering of clustering spatial data as in the first embodiment, and extracts a time zone and movement path in which the terminal user is moving frequently. However, it differs from the first embodiment in that data determined as a movement attribute is processed as an initial cluster.
  • the retention point position information log removing unit 23 subtracts the data determined to be the retention point included in the retention point pattern data from the data plotted in the clustering space. Then, the staying point position information log removing unit 23 inputs the remaining data subtracted from the data plotted in the clustering space to the moving route cluster extracting unit 24.
  • a record in which the attribute of residence or movement route is determined by the residence / movement route attribute determination unit 42 is input to the clustering space plotting unit 21. Therefore, even if the data determined to be the retention point by the retention point position information log removal unit 23 is not subtracted from the data plotted in the clustering space, the movement path cluster extraction unit 24 identifies the data determined as the movement attribute It will be possible to
  • the staying point position information log removing unit 23 in the first embodiment is also the moving vector computing unit 40 in the present embodiment (more specifically, the moving vector function value computing unit 41 and the staying / moving route attribute determining unit 42) Also has the function of extracting non-dwelling points. Furthermore, in the movement vector computing unit 40 in the present embodiment, since data is narrowed down, in addition to the effects in the first embodiment, even if the position information log becomes large, The determination accuracy can be improved.
  • the movement route cluster extraction unit 24 multiplies the latitude and longitude of the received data by the preset weight value.
  • the traveling direction of the moving route is considered. Therefore, the distance function is defined as Equation 1 below using four variables: latitude, longitude, time, and travel direction angle.
  • k 2 and k 3 are respectively determined for the time and the traveling direction angle with reference to the latitude and the longitude.
  • the movement path cluster extraction unit 24 determines whether the Euclidean distance between two points selected from the clusters does not exceed the set Euclidean distance threshold. When the Euclidean distance does not exceed the threshold value, the movement path cluster extraction unit 24 integrates clusters having the shortest Euclidean distance between two points selected from among the clusters into one cluster.
  • the movement path cluster extraction unit 24 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Further, the movement route cluster extraction unit 24 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . In addition, the movement path cluster extraction unit 24 also holds the number of clustering spatial data included in the integrated cluster.
  • the movement path cluster extraction unit 24 determines that a cluster including the clustering spatial data whose number exceeds the set cluster number threshold is a movement path. Then, the movement route cluster extraction unit 24 sets the earliest time of the data in the cluster as the movement start time, and the latest time as the movement end time.
  • the movement path cluster extraction unit 24 may be configured to include position information (latitude and longitude) of the cluster and position information (latitude and longitude) of the staying point included in the staying point pattern data received from the staying point cluster extracting unit 22. Compare. Then, the movement path cluster extraction unit 24 determines, as the first adjacent staying point identifier and the second adjacent staying point identifier, the staying point having the first Euclidean distance with the position of the cluster and the second shortest staying point, respectively. . Then, the movement path cluster extraction unit 24 causes the movement path pattern storage unit 32 to store the movement start time, the movement end time, the first proximity dwell point identifier, and the second proximity dwell point identifier.
  • the present embodiment differs from the movement route cluster extraction unit 24 in the first embodiment in that the movement route cluster extraction unit 24 performs clustering in consideration of the difference in the traveling direction angle.
  • the moving route cluster extraction unit 24 may perform clustering based on the positioning position of the user and the positioning date and time, as in the first embodiment.
  • the movement vector function value calculation unit 41 is sorted in the order of positioning date and time included in the position information log.
  • the time difference between the positioning dates and times included in the position information log, the distance between the positioning locations, and the traveling direction angle representing the traveling direction between the positioning locations are calculated.
  • the staying / moving route attribute determination unit 42 determines whether the attribute of the position information log has the staying attribute, based on the time difference between the positioning dates and times and the distance between the positioning locations.
  • the retention point cluster extraction unit 22 extracts a retention point by clustering the position information logs determined to have the retention attribute.
  • the staying / moving route attribute determining unit 42 determines whether the attribute of the position information log has the moving attribute, based on the time difference between the positioning dates and times and the distance between the positioning locations.
  • the clustering space plotting unit 21 defines a record obtained by adding the traveling direction angle to the position information log including the user's positioning position and positioning date and time. Plot to Then, the movement route cluster extraction unit 24 extracts the movement route of the user by clustering the position information logs determined to have the movement route attribute.
  • the determination accuracy of the staying point cluster and the movement route cluster can be improved even when the position information log is large.
  • the record which can not be determined which record indicates the retention or the movement path (that is, the record having neither the retention attribute nor the movement attribute) is excluded from the clustering target. In this way, by reducing the records targeted for clustering, the accuracy of clustering can be improved.
  • FIG. 12 is an explanatory diagram of an example of aggregation of position information logs.
  • dotted arrows indicate the traveling directions included in the position information log.
  • the position information log 401a included in the position information log group 401 surrounded by the broken line and the position information log 401b have the same traveling direction but use different routes. Indicates Further, in the example shown in FIG.
  • the position information log 402a included in the position information log group 402 surrounded by the broken line and the position information log 402b indicate that the traveling direction is largely changed on the same movement route.
  • another route is classified as another movement route cluster included in the position information log group 401, and the process of improving the accuracy of classifying the same movement route included in the position information log group 401 as the same movement route cluster Will be explained.
  • FIG. 13 is a block diagram showing a configuration example of a third embodiment of the behavior pattern analysis device according to the present invention.
  • the behavior pattern analysis device in the present embodiment includes a position information log input unit 10, a behavior pattern analysis reference input unit 11, a behavior pattern analysis unit 60, a behavior pattern storage unit 30, and a movement vector calculation analysis unit 40. ing.
  • Movement vector calculation analysis unit 40 including position information log input unit 10, action pattern analysis standard input unit 11, action pattern storage unit 30, movement vector function value calculation unit 41 and stagnation / movement route attribute determination unit 42 Is the same as that of the second embodiment, and thus the description thereof is omitted.
  • the action pattern analysis unit 60 includes a clustering space plot unit 21, a staying point cluster extraction unit 22, a movement route cluster extraction unit 24, and a traveling direction distance coefficient calculation unit 25. That is, the behavior pattern analysis unit 60 in the present embodiment is different from the behavior pattern analysis unit 50 in the second embodiment in that the movement direction distance coefficient calculation unit 25 is included.
  • the clustering space plotting unit 21 plots the position information log to be analyzed in the clustering space, as in the second embodiment. Specifically, first, the clustering space plotting unit 21 sets a preset time (that is, time reference) as a date break, and extracts a position information log of the set day (that is, day reference). The method of extracting the position information log based on the time reference and the day of the week reference is the same as the method described in the second embodiment.
  • the clustering space plotting unit 21 may directly receive the position information log from the position information log input unit 10. Alternatively, the staying / moving route attribute determining unit 42 may input the position information log input to the moving vector operation analysis unit 40 to the clustering space plotting unit 21.
  • the clustering space plotting unit 21 plots position information logs including latitude, longitude and time in a clustering space.
  • the method of the clustering space plotting unit 21 plotting the above records in the clustering space is the same as that of the first embodiment. Then, the clustering space plotting unit 21 inputs the plotted data to the staying point cluster extracting unit 22.
  • the retention point cluster extraction unit 22 performs clustering of clustering spatial data as in the second embodiment to extract retention points.
  • the retention point cluster extraction unit 22 receives data plotted in the clustering space from the clustering space plotting unit 21, only the records determined as the retention attribute by the retention / movement route attribute determination unit 42 are targeted. Perform clustering.
  • the staying point cluster extraction unit 22 multiplies each value indicating the latitude and longitude of the data plotted in the clustering space by a preset weight value.
  • data determined as the stagnation attribute is set as an initial cluster.
  • the staying point cluster extraction unit 22 determines whether the Euclidean distance between two points selected from the clusters does not exceed a preset Euclidean distance threshold. If the Euclidean distance does not exceed the Euclidean distance threshold, the staying point cluster extraction unit 22 integrates clusters having the shortest Euclidean distance between two points selected from all clusters into one cluster.
  • the retention point cluster extraction unit 22 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Furthermore, the staying point cluster extraction unit 22 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . The retention point cluster extraction unit 22 also holds the number of pieces of clustering spatial data included in the integrated cluster.
  • the staying point cluster extraction unit 22 determines that a cluster including clustering spatial data whose number exceeds the set cluster number threshold is a staying point. Then, the retention point cluster extraction unit 22 sets the earliest time among the data in the cluster as the retention start time, and the latest time as the retention end time. Then, the retention point cluster extraction unit 22 causes the retention point pattern storage unit 31 to store the retention start time, the retention end time, and the values of the centers of gravity of latitude and longitude in the data in the cluster.
  • the staying point cluster extraction unit 22 inputs the data received from the clustering space plotting unit 21 to the movement path cluster extraction unit 24.
  • the method by which the staying point cluster extraction unit 22 performs clustering in the present embodiment is the same as that in the second embodiment.
  • the clustering space plotting unit 21 plots the record including [latitude, longitude, time, traveling direction angle] in the four-dimensional clustering space
  • the clustering space plotting unit 21 differs from the second embodiment in that the plotting unit 21 performs clustering by plotting records including [latitude, longitude, time] in a three-dimensional clustering space.
  • the movement path cluster extraction unit 24 performs clustering of clustering spatial data, and extracts a time zone and movement path in which the terminal user is moving frequently.
  • the present embodiment differs from the second embodiment in that the movement route cluster extraction unit 24 performs clustering in consideration of the relationship between the traveling direction indicated by the position information log and the azimuth angle between the position information logs. .
  • FIG. 14 is an explanatory view showing an example of the relationship between the traveling direction indicated by the position information log and the azimuth angle of the position information log.
  • arrows 501a and 501b indicate the traveling directions of the points P1 and P2 indicating the position information log.
  • the traveling direction distance coefficient calculation unit 25 calculates the traveling direction distance coefficient w 12 from the traveling direction angle ⁇ 1 of P 1 and the azimuth angle ⁇ 12 to P 2 having P 1 as the origin, and moves The path cluster extraction unit 24 multiplies w 12 by the value of the Euclidean distance described above. Similarly, the traveling direction distance coefficient calculation unit 25 calculates the traveling direction distance coefficient w 21 from the traveling direction angle ⁇ 2 of P 2 and the azimuth angle ⁇ 21 to P 2 with P 1 as the origin, and the movement path cluster extraction unit 24 multiplies w 21 by the aforementioned Euclidean distance value.
  • the traveling direction distance coefficient is a coefficient whose value is smaller as the value of the angle formed by the traveling direction from the positioning position indicated by the position information log and the direction connecting the two positioning positions is smaller, which will be described later. Calculated by the method. Then, using the calculated value, the movement route cluster extraction unit 24 performs processing in which the data determined as the movement attribute is set as the initial cluster. The method of calculating the azimuth will also be described later.
  • the traveling direction distance coefficient calculation unit 25 determines the angle between the traveling direction from the positioning position indicated by each position information log and the direction connecting the positioning positions indicated by the two position information logs.
  • a coefficient that is, a traveling direction distance coefficient
  • the traveling direction distance coefficient calculation unit 25 sets the vector to another point whose origin is one point to the position information log of two points (specifically, the direction between two positioning positions is Calculation of the angle formed by the moving vector function value calculating unit 41 and the moving direction vector (specifically, the vector indicating the moving direction from the positioning position), the value of the moving direction distance coefficient Decide.
  • the traveling direction distance coefficient calculation unit 25 receives the position information log from the moving route cluster extraction unit 24 and calculates the traveling direction distance coefficient.
  • the movement direction vectors of the two position information logs are usually different. Therefore, the traveling direction distance coefficient calculation unit 25 performs calculation of the angle to be formed, with each position information log as an origin.
  • the vector to P2 with the origin of the P1 is defined by the formula 3 below.
  • the traveling direction distance coefficient calculation unit 25 uses the theta 1to2 calculated by Equation 2 and Equation 3, obtains the traveling direction distance factor w 12.
  • the formula used to calculate the traveling direction coefficients w 12 is not limited to Equation 4 above.
  • any other equation may be used as long as the value of the traveling direction distance coefficient always takes a positive value regardless of the angle between the two.
  • the traveling direction distance coefficient is formed by the traveling direction included in the movement vector function value calculated by the movement vector function value calculator 41 and the azimuth angle of the two position information logs. It can be said that the coefficient is determined from the value of the corner.
  • Equation 5 the azimuth angle of P1 with P2 as the origin is defined as Equation 5 below.
  • ⁇ 21 arg ((Y 1 -Y 2 ) / (X 1 -X 2 )) (Equation 5)
  • angle ⁇ 2 to 1 between the vector to P 1 having the origin at P 2 and the movement direction vector 501 b of P 2 calculated by the movement vector function value calculator 41 is also defined by the following expression 6 as in expression 3. Be done.
  • ⁇ 2 to 1 min ⁇
  • the traveling direction distance coefficient calculation unit 25 obtains the traveling direction distance coefficient w 21 using ⁇ 2 to 1 calculated by Equation 5 and Equation 6.
  • the traveling direction distance coefficient calculation unit 25 may calculate the traveling direction distance coefficient w 21 using, for example, the following Expression 7.
  • the traveling direction distance coefficient calculation unit 25 notifies the travel route cluster extraction unit 24 of the calculated traveling direction distance coefficients w 12 and w 21 .
  • the movement route cluster extraction unit 24 Upon receiving the data from the staying point cluster extraction unit 22, the movement route cluster extraction unit 24 passes the position information log including at least [latitude, longitude, movement direction angle] to the movement direction distance coefficient calculation unit 25, and the movement direction The traveling direction distance coefficient is received from the distance coefficient calculating unit 25.
  • the calculation when calculating a value indicating the distance between two points (P1, P2) of the position information log, the case where the distance is calculated based on P1 and the case where the distance is calculated based on P2 When considering the traveling direction of the movement path, the calculation is performed so that the value indicating the distance between the two is different.
  • a distance function is defined like the following formula 8 using four variables of latitude, longitude, time, and a traveling direction distance coefficient.
  • Equation 8 based on the latitude and longitude, relative to time, k 2 are respectively determined.
  • movement route cluster extraction unit 24 by multiplying the weighting value k 2 respectively the latitude and longitude included in the position information log, calculates the Euclidean distance between the position information log. Furthermore, the movement route cluster extraction unit 24 performs weighting by multiplying the calculated Euclidean distance by the traveling direction distance coefficient.
  • the movement route cluster extraction unit 24 determines whether or not the Euclidean distance between two points selected from the above clusters exceeds the set Euclidean distance threshold. When the Euclidean distance does not exceed the threshold value, the movement path cluster extraction unit 24 integrates clusters having the shortest Euclidean distance between two points selected from among the clusters into one cluster.
  • the movement path cluster extraction unit 24 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Further, the movement route cluster extraction unit 24 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . In addition, the movement path cluster extraction unit 24 also holds the number of clustering spatial data included in the integrated cluster.
  • the movement path cluster extraction unit 24 determines that a cluster including the clustering spatial data whose number exceeds the set cluster number threshold is a movement path. Then, the movement route cluster extraction unit 24 sets the earliest time of the data in the cluster as the movement start time, and the latest time as the movement end time.
  • the movement path cluster extraction unit 24 may be configured to include position information (latitude and longitude) of the cluster and position information (latitude and longitude) of the staying point included in the staying point pattern data received from the staying point cluster extracting unit 22. Compare. Then, the movement path cluster extraction unit 24 determines, as the first adjacent staying point identifier and the second adjacent staying point identifier, the staying point having the first Euclidean distance with the position of the cluster and the second shortest staying point, respectively. . Then, the movement path cluster extraction unit 24 causes the movement path pattern storage unit 32 to store the movement start time, the movement end time, the first proximity dwell point identifier, and the second proximity dwell point identifier.
  • the movement route cluster extraction unit 24 of the present embodiment performs Euclidean distance calculation on records including [latitude, longitude, time], and performs clustering of these, the movement route in the second embodiment. It differs from the cluster extraction unit 24.
  • the movement route cluster extraction unit 24 according to the present embodiment calculates the Euclidean distance between two position information logs using each position information log as a start point, and further multiplying this value by the traveling direction distance coefficient. Define the distance between two points.
  • the second embodiment differs from the movement route cluster extraction unit 24 in the second embodiment in that clustering is performed in consideration of two values defined for each point. The other processes are similar to those of the second embodiment.
  • the movement direction vectors do not point in the direction of each other position information log. Therefore, the Euclidean distance (see Equation 2 above) multiplied by the traveling direction distance coefficient is far regardless of which of the position information log 401a and the position information log 401b is used as the traveling direction distance coefficient. Therefore, position information logs of two points are less likely to be clustered.
  • the movement direction vector of the position information log 402a is directed to the position information log 402b.
  • the movement direction vector of the position information log 402b is directed away from the direction of the position information log 402a. Therefore, although the value of the traveling direction distance coefficient calculated based on the position information log 402b increases, the value of the traveling direction distance coefficient calculated based on the position information log 402a decreases.
  • the movement path cluster extraction unit 24 performs clustering in the order of small values of Euclidean distance multiplied by the traveling direction distance coefficient, and as a result, positional information logs of two points are easily clustered.
  • the traveling direction distance coefficient calculation unit 25 calculates the traveling direction distance coefficient for each position information log based on the two position information logs.
  • the movement route cluster extraction unit 24 performs weighting on the position information log that makes it easy to determine that the Euclidean distance in the time direction is far based on the latitude and longitude, and the Euclidean distance coefficient to the Euclidean distance Perform weighting by multiplication. Then, the movement route cluster extraction unit 24 extracts the movement route of the user by clustering the position information logs determined to have the non-staying attribute among the weighted position information logs. Therefore, in addition to the effect of the first embodiment, it is possible to improve the accuracy of classifying the movement route cluster.
  • the position information log input unit 10 inputs the position information log to the clustering space plotting unit 21.
  • the clustering space plotting unit 21 takes a preset time as a date break, and extracts a position information log of the set day of the week. Then, the clustering space plotting unit 21 plots a record including [latitude, longitude, time] in a three-dimensional clustering space, and inputs the plotted data to the staying point cluster extracting unit 22.
  • values indicating latitude and longitude of the data plotted in the clustering space are respectively multiplied by preset weight values.
  • all data plotted in the clustering space and multiplied by the set weight value is set as an initial cluster.
  • the staying point cluster extraction unit 22 determines whether the Euclidean distance between two points selected from all clusters does not exceed the Euclidean distance threshold set in advance. When the Euclidean distance does not exceed the threshold value, the staying point cluster extraction unit 22 integrates clusters having the shortest Euclidean distance between two points selected from among all clusters into one cluster.
  • the retention point cluster extraction unit 22 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Furthermore, the staying point cluster extraction unit 22 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . The retention point cluster extraction unit 22 also holds the number of pieces of clustering spatial data included in the integrated cluster.
  • the retention point cluster extraction unit 22 determines a cluster including clustering spatial data whose number exceeds the set cluster number threshold as the retention point. Then, the retention point cluster extraction unit 22 sets the earliest time among the data in the cluster as the retention start time, and the latest time as the retention end time. Then, the retention point cluster extraction unit 22 causes the retention point pattern storage unit 31 to store the retention start time, the retention end time, and the values of the centers of gravity of latitude and longitude in the data in the cluster.
  • the retention point cluster extraction unit 22 retains the data received from the clustering space plotting unit 21 (that is, the data plotted in the clustering space) and the data determined to be a retention point (retention point pattern data) from the retention point position information log removal unit Enter 23
  • the retention point position information log removing unit 23 subtracts the data determined to be the retention point included in the retention point pattern data from the data plotted in the clustering space. Then, the staying point position information log removing unit 23 inputs the remaining data subtracted from the data plotted in the clustering space to the movement route cluster extracting unit 24.
  • the movement route cluster extraction unit 24 receives data from the staying point position information log removal unit 23
  • the movement route cluster extraction unit 24 multiplies the latitude and longitude of the received data by the preset weight value.
  • all data to which the weight value has been multiplied is taken as an initial cluster.
  • the movement path cluster extraction unit 24 determines whether the Euclidean distance between two points selected out of all the clusters exceeds the set Euclidean distance threshold. When the Euclidean distance does not exceed the threshold value, the movement path cluster extraction unit 24 integrates clusters having the shortest Euclidean distance between two points selected from among all clusters into one cluster. At this time, the movement path cluster extraction unit 24 integrates the clusters so as to include the time, latitude, and longitude of each position information log that configures the clusters. Further, the movement route cluster extraction unit 24 calculates the value of the gravity center of latitude and longitude from the position information log included in the cluster separately from each position information log, and uses the value as a new cluster data value. . In addition, the movement path cluster extraction unit 24 also holds the number of clustering spatial data included in the integrated cluster.
  • the movement route cluster extraction unit 24 determines a cluster including the clustering spatial data of the number exceeding the set cluster number threshold as the movement route. Then, the movement route cluster extraction unit 24 sets the earliest time of the data in the cluster as the movement start time, and the latest time as the movement end time.
  • the movement route cluster extraction unit 24 receives position information (latitude and longitude) of the cluster and position information (latitude and longitude) of the staying point included in the staying point pattern data received from the staying point position information log removing unit 23. Compare with. Then, the movement path cluster extraction unit 24 moves the moving path by the first short staying point and the second shortest staying point with the Euclidean distance to the position of the cluster, the first near staying point identifier and the second near staying point identifier, respectively. Decide. Then, the movement path cluster extraction unit 24 causes the movement path pattern storage unit 32 to store the movement start time, the movement end time, the first proximity dwell point identifier, and the second proximity dwell point identifier.
  • FIG. 15 is a block diagram showing an example of the minimum configuration of the behavior pattern analysis device according to the present invention.
  • the behavioral pattern analysis device according to the present invention is a numerical value information (for example, a position information log representing a position information log which is information including a user's positioning position (for example, latitude, longitude, altitude) and positioning date and time (for example, time).
  • Position information plotting means 81 (eg, clustering space plotting unit 21) plotting on a multidimensional space (eg, three-dimensional space defined by latitude, longitude, and time) defined by The Euclidean distance in the time direction (for example, the time axis direction) with respect to the position information space (for example, the latitude-longitude plane) which is a space defined by the numerical information representing the positioning position in the multidimensional space Weighting (for example, processing of multiplying time by weight value k) is performed on the position information log, and the weighted position information log is A dwelling point cluster extracting unit 82 (for example, a dwelling point cluster extracting unit 22) which extracts a dwelling point which is a position where the user frequently dwells by tumbling, and the position information log plotted by the position information plotting unit 81
  • Non-dwelling point position information log extracting means 83 (for example, staying point position information log removing unit 23) for extracting a set of position information logs excluding position information logs extracted as staying points
  • FIG. 16 is a block diagram showing an example of another minimum configuration of the behavior pattern analysis device according to the present invention.
  • Another behavior pattern analysis device according to the present invention is sorted in the order of positioning date and time included in the position information log, which is information including the user's positioning position (for example, latitude, longitude, altitude) and positioning date and time (for example, time).
  • movement vector function value calculation means 91 for example, movement vector function value for calculating the time difference between positioning dates and times included in the position information log and the distance between positioning positions Whether the attribute of the position information log indicates the staying point indicating the staying point which is the position at which the user frequently stays or the moving route of the user, based on the operation unit 41), the time difference between the positioning date and time, and the distance between the positioning positions
  • Attribute determination means 92 for example, residence / movement route attribute determination unit 42
  • positioning position Position information plotting means 93 eg, plotting on a multi-dimensional space (eg, three-dimensional space defined by latitude, longitude and time) defined by numerical information (eg, latitude, longitude, altitude) representing time The Euclidean distance in the time direction (for example, the time axis direction)
  • the movement vector function value calculation unit 91 may calculate, as a difference value between two position information logs, a difference value of a traveling direction angle (for example, ⁇ ) representing a traveling direction between positioning positions. Then, the position information plotting means 93 adds a traveling direction angle to the position information log including the user's positioning position and positioning date and time (for example, a record including [latitude, longitude, time, traveling direction angle]), It may be plotted on a multidimensional space (eg, a four-dimensional space defined by latitude, longitude, altitude, and time) defined by numerical information representing a positioning position, time, and a traveling direction angle. Furthermore, the movement route cluster extraction unit 95 may extract the movement route of the user by clustering records obtained by adding the traveling direction angle to the position information log determined to have the movement route attribute.
  • a traveling direction angle for example, ⁇
  • a position information plotting means for plotting a position information log which is information including a user's positioning position and positioning date and time, in a multidimensional space defined by numerical information representing the positioning position and time.
  • a weighting is performed on the position information log to make it easy to determine that the Euclidean distance in the time direction is close to the position information space which is a space defined by the numerical information representing the positioning position in a two-dimensional space.
  • a retention point cluster extraction means for extracting a retention point which is a position where the user frequently stays by clustering the position information log extracted as the retention point from the position information log plotted by the position information plotting means
  • a non-dwelling point positional information log extracting means for extracting a set of excluded positional information logs as a non-dwelling point; The moving path of the user is extracted by performing weighting on the position information log of the non-dwelling point, which makes it easy to determine that the Euclidean distance in the time direction to the information space is long, and clustering the weighted position information log.
  • a movement pattern analysis device characterized by comprising movement route cluster extraction means.
  • the positional information plotting means plots a positional information log including values indicating latitude and longitude as a user's positioning position on a three-dimensional space defined by latitude, longitude and time, and extracts a stay point cluster
  • Analysis device is used to analyze the position information log.
  • the positional information plotting means plots a positional information log including values indicating latitude, longitude and altitude as a user's positioning position on a four-dimensional space defined by latitude, longitude, altitude and time
  • the retention point cluster extraction means adds weight to the position information log which makes it easy to determine that the Euclidean distance in the time direction is close to the latitude, longitude, and altitude space which is a space defined by the latitude, longitude, and altitude in the four-dimensional space.
  • the action pattern analyzer according to appendix 1, which is performed.
  • the movement route cluster extraction unit determines the retention point having the shortest Euclidean distance with the clustered position information log and the second shortest retention point as the start point or the end point of the movement route.
  • the action pattern analyzer according to any one of the four.
  • the movement route cluster extraction means compares the value of the center of gravity of the position information in the clustered position information log with the distance of the value of the center of gravity of the position information at the retention point,
  • the behavior pattern analyzer according to any one of appendices 1 to 5, wherein the point and the second shortest dwell point are determined as the start point or the end point of the movement path.
  • a difference value between two adjacent position information logs sorted in the order of the positioning date and time included in the position information log that is information including the user's positioning position and positioning date and time is included in the position information log
  • the attribute of the position information log is a user based on the time difference between the positioning dates and times, the movement vector function value calculating means for calculating the distance between the positioning positions, and the time difference between the positioning dates and times and the distance between the positioning positions
  • Attribute determination means for determining whether it is a staying attribute indicating a staying point at which the user frequently dwells or a non-dwelling attribute indicating a non-staying point indicating a position on the moving path of the user
  • Position information plotting means for plotting in a multidimensional space defined by numerical information representing a positioning position and time, and defined by numerical information representing the positioning position in the multidimensional space
  • a position information log which is determined to have the retention attribute among the weighted position information logs by performing weighting on the position information log which makes it easy to determine that the
  • the movement pattern cluster extraction means for extracting the movement path of the user by clustering the position information logs determined to have the non-staying attribute among the position information logs .
  • the movement vector function value calculation means calculates, as a difference value between two position information logs, a difference value of an advancing direction angle representing an advancing direction between positioning positions, and the position information plotting means A record obtained by adding the traveling direction angle to the position information log including the positioning position and the positioning date and time is plotted on a multidimensional space defined by numerical information representing the positioning position, time, and the traveling direction angle.
  • the activity pattern analysis device according to appendix 7, wherein the means extracts the moving route of the user by clustering records obtained by adding the traveling direction angle to the position information log determined to have the moving route attribute.
  • the traveling direction distance coefficient calculating means is provided for calculating, for each position information log, an advancing direction distance coefficient which is a coefficient whose value decreases, and the movement route cluster extracting means determines that the Euclidean distance in the time direction to the position information space is far Weighting is performed on the position information log so as to be easily performed, and weighting is performed by multiplying the Euclidean distance by the traveling direction distance coefficient calculated by the moving direction distance coefficient calculating means, and weighting of the weighted position information log Addendum 7 of extracting user's moving route by clustering position information logs determined to have non-dwelling attribute among them. Of behavior pattern analysis apparatus.
  • a position information log which is information including a user's positioning position and positioning date and time, is plotted on a multidimensional space defined by numerical information representing the positioning position and time, and the positioning in the multidimensional space
  • weighting on the position information log, which makes it easy to determine that the Euclidean distance in the time direction is close to the position information space which is a space defined by numerical information representing position
  • clustering the weighted position information logs Extracting a retention point which is a position at which the user frequently dwells, and removing a set of position information logs excluding the position information log extracted as the retention point from the position information log plotted on the multidimensional space.
  • a position information log including values indicating latitude and longitude as the user's positioning position is plotted on a three-dimensional space defined by latitude, longitude and time, and defined by the latitude and longitude in the three-dimensional space 10.
  • a position information log including values indicating latitude, longitude and altitude as the user's positioning position is plotted on a four-dimensional space defined by the latitude, longitude, altitude and time, and the latitude in the four-dimensional space 10.
  • a difference value between two adjacent position information logs sorted in the order of the positioning date and time included in the position information log that is information including the user's positioning position and positioning date and time is included in the position information log
  • the time difference between the positioning dates and times, and the distance between the positioning positions are calculated, and based on the time difference between the positioning dates and times and the distance between the positioning positions It is determined whether it is a staying attribute indicating a certain staying point or a non-dwelling attribute indicating a non-dwelling point indicating a position on the moving route of the user, and the position information log is defined by numerical information representing the positioning position and time.
  • the Euclidean distance in the time direction to the position information space which is a space defined by the numerical information representing the positioning position in the multidimensional space
  • the retention point is extracted by performing weighting with respect to the position information log to facilitate the process and clustering the position information log determined to have the retention attribute among the weighted position information logs, thereby extracting the retention point, and the position information Performing weighting on the position information log to easily determine that the Euclidean distance in the time direction with respect to space is far, and clustering the position information log determined to have the non-dwelling attribute among the weighted position information logs
  • An action pattern analysis method characterized by extracting a movement route of a user by
  • the position information log is weighted so that it is easily determined that the Euclidean distance in the time direction is close to the position information space which is a space defined by numerical information representing the positioning position in the multidimensional space.
  • a retention point cluster extraction process for extracting a retention point which is a position at which a user frequently stays by clustering information logs, and position information extracted as the retention point from a position information log plotted by position information plot processing
  • Non-dwelling point location information log extraction that extracts a set of location information logs excluding logs as non-dwelling points
  • a user is weighted by performing processing and weighting that makes it easy to determine that the Euclidean distance in the time direction with respect to the position information space is far from the position information log of the non-staying point, and clustering the weighted position information log
  • route cluster extraction process which extracts the movement path
  • position information logs including values indicating latitude and longitude as the user's positioning position are plotted on a three-dimensional space defined by latitude, longitude, and time
  • the point cluster extraction process performs weighting on the position information log that makes it easy to determine that the Euclidean distance in the time direction with respect to the latitude and longitude plane which is a plane defined by the latitude and longitude in the three-dimensional space is short. Behavior pattern analysis program described.
  • a location information log including values indicating latitude, longitude, and altitude as a user's positioning location in location information plotting processing.
  • the position information log is weighted to make it easy to determine that Euclidean distance in the time direction is close to the latitude, longitude, and altitude space, which is a space defined by the latitude, longitude, and altitude in the four-dimensional space.
  • the positional information log is a difference value between two adjacent positional information logs sorted in the order of the positioning date and time included in the positional information log that is information including the user's positioning position and positioning date and time on the computer.
  • the attribute of the position information log is based on the time difference of the positioning date and time included in the movement vector, the movement vector function value calculation processing for calculating the distance between the positioning positions, the time difference of the positioning date and time, and the distance between positioning positions; Attribute determination processing for determining whether a residence attribute indicates a residence point at which a user frequently resides or a non-dwelling attribute indicates a non-dwelling point at a position on the user's movement route; Position information plotting processing for plotting on the multidimensional space defined by the numerical information representing the positioning position and the time, the numerical information representing the positioning position in the multidimensional space It is determined that the position information log is weighted so that the Euclidean distance in the time direction with respect to the position information space which is a defined space is likely to be close, and that the position attribute log has the retention attribute among the weighted position information logs.
  • a retention point cluster extraction process for extracting the retention point by performing clustering on the position information log, and weighting for making it easy to determine that the Euclidean distance in the time direction with respect to the position information space is long are performed on the position information log
  • the difference value of the traveling direction angle representing the advancing direction between the positioning positions is calculated as the difference value between the two position information logs, and the position information plotting process is performed.
  • the traveling direction distance coefficient calculation processing is performed to calculate, for each position information log, a traveling direction distance coefficient, which is a coefficient whose value decreases as the distance is smaller, and Euclidean distance in the time direction to the position information space in the movement route cluster extraction processing. Is given to the position information log, and weighting is performed by multiplying the Euclidean distance by the traveling direction distance coefficient calculated in the movement direction distance coefficient calculation processing, and the weighting is performed.
  • Behavioral pattern analysis program note 21 wherein for the extraction path.
  • the present invention is suitably applied to an action pattern analysis device that analyzes an action pattern from position information measured irregularly. For example, even when the positioning interval of the position information using the terminal with the position information acquisition function is wide or when the position information is irregularly measured, it is possible to grasp the user's action pattern. Therefore, the accuracy of the recommendation service for the purpose of content distribution matching the user's behavior pattern is improved.

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

 位置情報プロット手段81は、利用者の測位位置及び測位日時を含む位置情報ログを、その測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする。滞留点クラスタ抽出手段82は、位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する。移動経路クラスタ抽出手段84は、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する。

Description

行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム
 本発明は、不定期に測定された位置情報から行動パタンを解析する行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラムに関する。
 近年、位置情報を利用したライフログやコミュニケーションツールなどのLBS(Location Based Service)が拡っている。LBSとして、例えば、携帯電話機などに搭載されるGPS(Global Positioning System)機能を利用し、カメラ機能付きモバイル端末で撮影した写真に位置情報ログを付与するアプリケーションや、位置情報ログ付きの「つぶやき」が可能なTwitter(登録商標)などが広く利用されている。また、他にも、LBSの例として、個人の位置情報から得ることができる利用者の行動パタンに合わせてコンテンツ配信を行うレコメンドサービスが存在する。
 また、特許文献1には、位置情報から個人の行動を管理できる行動管理装置が記載されている。特許文献1に記載された行動管理装置は、GPS機能を用いて所定時間ごとに測定される位置情報から、行動管理を行うための情報の検索や行動の推定を行う。
特開2003-76818号公報
 LBSを提供する際、サービスの精度を向上させるには、短い間隔で位置情報を定期測位できることが望ましい。しかし、位置情報はプライバシー情報であるため、利用者は、定期測位した位置情報をサービス事業者に提供したくないと思う場合がある。そのため、位置情報を定期測位してサービスを利用することを敬遠する利用者も多数存在する状況である。
 このような状況から、例えば、位置情報取得機能付端末を利用した位置情報の測位間隔が長かったり、位置情報の測位が不定期になったりする場合がある。このように、位置情報が不定期に測位される場合、特許文献1に記載された行動管理装置では、精度良く行動管理を行うことができないという問題がある。
 そのため、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合にも、利用者が頻繁に滞在する場所や滞在時間帯、利用者が頻繁に移動する移動経路や移動時間帯など、利用者の日常の行動パタンを精度よく得られることが望まれる。
 そこで、本発明は、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合にも、利用者の行動パタンを精度良く解析できる行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラムを提供することを目的とする。
 本発明による行動パタン解析装置は、利用者の測位位置及び測位日時を含む情報である位置情報ログを、その測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出手段と、位置情報プロット手段がプロットした位置情報ログから滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出手段と、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えたことを特徴とする。
 本発明による他の行動パタン解析装置は、利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれるその測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、その位置情報ログに含まれる測位日時の時間差、および、測位位置間の距離を算出する移動ベクトル関数値算出手段と、測位日時の時間差及び測位位置間の距離に基づいて、位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定手段と、位置情報ログを、測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、滞留点を抽出する滞留点クラスタ抽出手段と、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えたことを特徴とする。
 本発明による行動パタン解析方法は、利用者の測位位置及び測位日時を含む情報である位置情報ログを、その測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出し、多次元空間上にプロットされた位置情報ログから滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出し、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出することを特徴とする。
 本発明による他の行動パタン解析方法は、利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれるその測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、その位置情報ログに含まれる測位日時の時間差、および、測位位置間の距離を算出し、測位日時の時間差及び測位位置間の距離に基づいて、位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定し、位置情報ログを、測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、滞留点を抽出し、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出することを特徴とする。
 本発明による行動パタン解析プログラムは、コンピュータに、利用者の測位位置及び測位日時を含む情報である位置情報ログを、その測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出処理、位置情報プロット処理でプロットされた位置情報ログから滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出処理、および、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理を実行させることを特徴とする。
 本発明による他の行動パタン解析プログラムは、コンピュータに、利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれるその測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、その位置情報ログに含まれる測位日時の時間差、および、測位位置間の距離を算出する移動ベクトル関数値算出処理、測位日時の時間差及び測位位置間の距離に基づいて、位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定処理、位置情報ログを、測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、滞留点を抽出する滞留点クラスタ抽出処理、および、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理を実行させることを特徴とする。
 本発明によれば、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合にも、利用者の行動パタンを精度良く解析できる。
本発明による行動パタン解析装置の第1の実施形態の構成例を示すブロック図である。 位置情報ログの例を示す説明図である。 クラスタリング空間の例を示す説明図である。 クラスタリング空間にプロットされた位置情報ログの例を示す説明図である。 滞留点パタンデータの例を示す説明図である。 移動経路パタンデータの例を示す説明図である。 行動パタン解析装置の動作例を示すフローチャートである。 行動パタン解析装置の動作例を示すフローチャートである。 基準曜日及び基準時刻を設定する動作の例を示すフローチャートである。 本発明による行動パタン解析装置の第2の実施形態の構成例を示すブロック図である。 移動ベクトル関数値の例を示す説明図である。 位置情報ログの集合例を示す説明図である。 本発明による行動パタン解析装置の第3の実施形態の構成例を示すブロック図である。 位置情報ログが示す進行方向と位置情報ログの方位角との関係の例を示す説明図である。 本発明による行動パタン解析装置の最小構成の例を示すブロック図である。 本発明による行動パタン解析装置の他の最小構成の例を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。以下の説明では、携帯端末に搭載されるGPSなどによるセンサ情報を利用して、位置情報および位置情報の取得時刻を記録するようなライフログサービスを想定する。
実施形態1.
 図1は、本発明による行動パタン解析装置の第1の実施形態の構成例を示すブロック図である。本実施形態における行動パタン解析装置は、位置情報ログ入力部10と、行動パタン解析基準入力部11と、行動パタン解析部20と、行動パタン記憶部30とを備えている。
 位置情報ログ入力部10は、GPS機能を搭載した携帯電話機などが取得した利用者の位置情報ログが入力されると、その位置情報ログを行動パタン解析部20に入力する。位置情報ログとは、緯度、経度、高度などの位置を取得した端末の位置を表す数値情報と、その数値情報(位置情報)を取得した日時を示す日時情報とを含む情報である。言い換えると、位置情報ログは、端末利用者の測位位置及び測位日時を含む情報である。また、位置情報ログは、位置情報を取得した端末の識別子や、その端末利用者の識別子(以下、利用者識別子と記す。)を含んでいてもよい。図2は、位置情報ログの例を示す説明図である。図2に例示する例では、位置情報ログが、利用者識別子、日時、緯度および経度を含んでいることを示す。
 行動パタン解析基準入力部11は、後述する行動パタン解析部20が位置情報ログをもとに行動パタンの解析を行う際の基準とする情報(以下、単に基準と記すこともある。)を行動パタン解析部20に入力する。具体的には、行動パタン解析基準入力部11は、「木曜日」、「全ての曜日」のような解析の対象とする曜日の基準(以下、曜日基準と記す。)や、「午前3時」のような解析の対象とする時刻の基準(以下、時刻基準と記す。)を行動パタン解析部20に入力する。すなわち、ここでの基準とは、解析の対象とする位置情報ログの日時情報を指定する情報である。
 行動パタン解析部20は、端末利用者が頻繁に滞留する位置(以下、滞留点と記す。)、及び、端末利用者が頻繁に行き来する経路(以下、移動経路と記す。)を、位置情報ログを解析することにより抽出する。以下、抽出されたこれらの情報をあわせて、行動パタンデータと記すこともある。
 行動パタン解析部20は、クラスタリング空間プロット部21と、滞留点クラスタ抽出部22と、滞留点位置情報ログ除去部23と、移動経路クラスタ抽出部24とを含む。
 クラスタリング空間プロット部21は、解析の対象とする位置情報ログをクラスタリング空間にプロットする。ここで、クラスタリング空間とは、緯度、経度、高度などの位置を表す数値に加え、時刻を表す時刻軸を追加した超空間を意味する。言い換えると、クラスタリング空間とは、位置情報および日時情報により規定される多次元の空間であり、少なくとも、緯度、経度および時刻により規定される3次元空間である。また、位置情報ログをクラスタリング空間にプロットするとは、位置情報ログをクラスタリング空間の座標で示すことを意味する。さらに、クラスタリング空間にプロットされた位置情報ログのことを、クラスタリング空間にプロットされたデータまたはクラスタリング空間データと記すこともある。
 図3は、クラスタリング空間の例を示す説明図である。図3に例示するクラスタリング空間は、緯度軸、経度軸および時刻軸で規定される3次元空間であり、それぞれ、x軸、y軸およびz軸に対応する。なお、図3の詳細については後述する。
 クラスタリング空間プロット部21は、行動パタン解析基準入力部11から入力された曜日基準及び時刻基準の値を保持する。そして、クラスタリング空間プロット部21は、保持している曜日基準や時刻基準の値、及び、位置情報ログ入力部10から入力された利用者の位置情報ログをもとに、クラスタリング空間に位置情報ログをプロットする。クラスタリング空間プロット部21は、例えば、行動パタンの解析を行う際の基準から所定の期間内に取得された位置情報ログを解析の対象とする。その後、クラスタリング空間プロット部21は、クラスタリング空間にプロットされたデータを滞留点クラスタ抽出部22に入力する。
 図4は、クラスタリング空間にプロットされた位置情報ログの例を示す説明図である。なお、説明を簡略化する為、図4では、日付ごとに緯度-経度平面を分けたクラスタリング空間で位置情報ログをプロットし、その位置情報ログを積算した場合の例を示す。
 例えば、位置情報ログに9月1日水曜日から9月14日火曜日までの位置情報ログが存在し、曜日基準が「木曜日」、時刻基準が「午前3時」と設定されているとする。この場合、クラスタリング空間プロット部21は、9月2日木曜日午前3時から9月3日午前3時までの位置情報ログ、および、9月9日木曜日午前3時から9月10日午前3時までの位置情報ログを抽出する。そして、クラスタリング空間プロット部21は、抽出した位置情報ログの日付を除去し、午前3時から翌日午前3時までの時系列上に並ぶ時刻軸を緯度-経度平面に追加したクラスタリング空間に、その位置情報ログをプロットする(図4(a)および(b)参照。)。そして、クラスタリング空間プロット部21は、これらの2日分の位置情報ログを積算したクラスタリング空間を生成する(図4(c)参照。)。
 上記説明では、クラスタリング空間プロット部21が緯度および経度により規定される2次元の平面で日付ごとに位置情報ログをプロット後、それらの位置情報ログを積算する場合について説明した。他にも、クラスタリング空間プロット部21は、緯度、経度および時刻により規定される3次元のクラスタリング空間に直接位置情報ログをプロットしてもよい。また、位置情報ログの位置情報に緯度、経度および高度が含まれている場合、クラスタリング空間プロット部21は、緯度、経度、高度および時刻により規定される4次元のクラスタリング空間に位置情報ログをプロットしてもよい。
 滞留点クラスタ抽出部22は、クラスタリング空間データのクラスタリングを行い、端末利用者が頻繁に滞留している位置(すなわち、滞留点)を抽出する。具体的には、滞留点クラスタ抽出部22は、緯度、経度および時刻の3変数からなる空間上のユークリッド距離が近い位置情報ログの集合を、EM(Expectation Maximization)アルゴリズムや階層型クラスタリングなど、汎用のクラスタリング手法を用いて生成することにより、滞留点を抽出する。以下、抽出された滞留点のことを滞留点パタンデータと記すこともある。
 ただし、滞留点クラスタ抽出部22がクラスタリングを行う空間は、緯度、経度および時刻の3変数により規定される空間に限定されない。クラスタリングを行う空間は、4変数以上により規定される空間であってもよい。例えば、位置情報ログに高度を示す情報が含まれている場合、滞留点クラスタ抽出部22は、緯度、経度、高度および時刻の4変数により規定される空間上の位置情報ログについてクラスタリングを行ってもよい。なお、以下の説明では、緯度、経度および時刻の3変数により規定される空間上に位置情報ログがプロットされている場合について具体的に説明する。
 ここで位置情報ログが示す座標における緯度をX、経度をY、時刻をZとすると、ある2点間のユークリッド距離の2乗の値は、(X-X+(Y-Y+(Z-Zで定義される。しかし、緯度Xおよび経度Yに対し、時刻Zは単位系が異なる。そのため、空間上の時刻に対して場所(緯度-経度)に強く関連する距離関数の定義が必要となる。そこで、(Z-Zの値に対し、予め定めた重み値kを乗じた距離関数を定義する。すなわち、この関数は、(X-X+(Y-Y+k(Z-Zと定義される。
 重み値kは、緯度-経度平面上に存在する点同士の距離と、緯度-経度平面上に存在する点と時刻軸方向に存在する点との間の距離とで、その距離に差をつける重み値であると言える。kの値を小さくすると、位置情報ログ同士を比較した場合、距離の差よりも時間の差が、より小さくなる。そのため、kの値を小さくすることにより、緯度-経度平面に対する時刻軸のユークリッド距離が近いと判定されやすくなるため、位置情報ログにおいて、場所(すなわち、緯度および経度から定まる位置)の近いログ同士が同一の集合になりやすいクラスタを生成することができる。
 この重み値kには、サービスの利用者が意図した滞留点の大きさになるように予めチューニングされた結果が指定される。例えば、時刻Zが時(hour)単位である場合、日本国内において半径1km程度の滞留点を抽出したい場合には、重み値kを1/1200程度に設定することが望ましい。
 このように、滞留点クラスタ抽出部22は、クラスタリング空間プロット部21からクラスタリング空間にプロットされたデータを受け取ると、予め設定されている重み値をクラスタリング空間にプロットされたデータにおける緯度及び経度に対してそれぞれ乗じる。重み値は、緯度-経度平面に対し、時刻軸のユークリッド距離が近いと判定されやすくなる値であれば、どのような値でもよい。
 なお、位置情報ログに高度を示す情報が含まれている場合、位置情報ログが示す座標における緯度をX、経度をY、時刻をZ、高度をWとすると、距離関数を、(X-X+(Y-Y+(W-W+k(Z-Zと定義すればよい。
 次に、滞留点クラスタ抽出部22は、重み値を乗じたクラスタリング空間データを用いて滞留点の抽出を行うため、このクラスタリング空間データを対象にクラスタリングの演算を行う。クラスタリングの演算は、一般に知られているどのクラスタリング手法を用いて行ってもよい。ここでは、セントロイド法を用いてクラスタリングの演算を行う場合を例に説明する。
 まず、滞留点クラスタ抽出部22は、クラスタリング空間にプロットされた全データをそれぞれ初期クラスタとし、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。この際、滞留点クラスタ抽出部22は、元のクラスタに含まれる値から重心の値を求めることにより、求めた値を統合されたクラスタの新たなデータ値とする。なお、滞留点クラスタ抽出部22は、統合されたクラスタを形成するクラスタリング空間データの個数も保持する。
 滞留点クラスタ抽出部22は、ユークリッド距離が予め設定された閾値(以下、第一ユークリッド距離閾値と記す。)を超えない範囲で以上の演算を繰り返し行う。第一ユークリッド距離閾値には、重み値と同程度の値(ここでは、1/1200程度)を設定することが望ましい。
 滞留点クラスタ抽出部22は、ここまでの演算で求めたクラスタリング空間データ数が、予め設定された閾値(以下、第一クラスタ個数閾値と記す。)を超えたクラスタを滞留点と判断する。この第一クラスタ個数閾値には、試験等により適切な値が設定される。言い換えると、この第一クラスタ個数閾値を超える数の位置情報が測位された位置は、利用者が頻繁に滞留する位置ということができる。
 例えば、図4(c)に例示するクラスタリング空間データの場合、滞留点クラスタ抽出部22は、クラスタ301a,301bを滞留点と判断する。そして、滞留点クラスタ抽出部22は、そのクラスタ中のデータで最も早い時刻と最も遅い時刻、及び、そのクラスタ中のデータにおける位置情報(緯度及び経度)の重心の値を、滞留点を識別する識別子(以下、滞留点識別子と記す。)とともに、滞留点パタン保存部31に記憶させる。
 滞留点位置情報ログ除去部23は、クラスタリング空間プロット部21から渡されたデータのうち、滞留点クラスタ抽出部22が滞留点と判断しなかった位置情報ログを抽出する。以下、この位置情報ログの集合のことを、非滞留点と記す。
 移動経路クラスタ抽出部24は、クラスタリング空間データのクラスタリングを行い、端末利用者が頻繁に移動を行っている時間帯及び移動経路を抽出する。以下、抽出された移動経路を、移動経路パタンデータと記すこともある。
 具体的には、移動経路クラスタ抽出部24は、緯度、経度および時刻の3変数からなる空間上のユークリッド距離が近い位置情報ログの集合を、汎用のクラスタリング手法を用いて生成することにより、移動経路を抽出する。なお、滞留点クラスタ抽出部22での説明と同様、移動経路クラスタ抽出部24がクラスタリングを行う空間は、緯度、経度および時刻の3変数により規定される空間に限定されず、4変数以上により規定される空間であってもよい。
 滞留点クラスタ抽出部22での説明と同様に、緯度、経度および時刻の3変数に対する距離関数は、(X-X+(Y-Y+k(Z-Zと定義され、緯度、経度、高度および時刻の4変数に対する距離関数は、(X-X+(Y-Y+(W-W+k(Z-Zと定義される。ここで、kの値を大きくすることにより、緯度-経度平面に対する時刻軸のユークリッド距離が遠いと判定されやすくなるため、位置情報ログにおいて、場所(すなわち、緯度および経度から定まる位置)よりも、時刻の近いログ同士が同一の集合になりやすいクラスタを生成することができる。
 ここでの重み値kも、サービスの利用者が意図した滞留点の大きさになるように予めチューニングされた結果が指定される。なお、滞留点をクラスタリングする際の重み値kと、移動経路を算出する際の重み値kとの間には、k<kの関係が成り立つ。この重み値kにも、サービスの利用者が意図した滞留点の大きさになるように予めチューニングされた結果が指定される。例えば、時刻Zが時(hour)単位である場合、重み値には、k=1と設定すればよい。
 具体的には、移動経路クラスタ抽出部24は、まず、滞留点位置情報ログ除去部23からクラスタリング空間にプロットされたデータのうち滞留点と判断されなかったクラスタリング空間データを受け取る。そして、移動経路クラスタ抽出部24は、予め設定されている重み値を、クラスタリング空間にプロットされたデータの緯度及び経度に対してそれぞれ乗じる。重み値は、緯度-経度平面に対し、時刻軸のユークリッド距離が遠いと判定されやすくなる値であれば、どのような値でもよい。
 次に、移動経路クラスタ抽出部24は、重み値を乗じたクラスタリング空間データを用いて移動経路を示す場所の抽出を行うため、このクラスタリング空間データを対象にクラスタリングの演算を行う。クラスタリングの演算は、一般に知られているどのクラスタリング手法を用いて行ってもよい。ここでは、セントロイド法を用いてクラスタリングの演算を行う場合を例に説明する。
 まず、移動経路クラスタ抽出部24は、滞留点位置情報ログ除去部23から受け取ったクラスタリング空間データをそれぞれ初期クラスタとし、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。この際、移動経路クラスタ抽出部24は、元のクラスタに含まれる値から重心の値を求めることにより、求めた値を統合されたクラスタの新たなデータ値とする。なお、移動経路クラスタ抽出部24は、統合されたクラスタを形成するクラスタリング空間データの個数も保持する。
 移動経路クラスタ抽出部24は、ユークリッド距離が予め設定された閾値(以下、第二ユークリッド距離閾値と記す。)を超えない範囲で以上の演算を繰り返し行う。なお、第二ユークリッド距離閾値には、重み値と同程度の値を設定すればよい。
 移動経路クラスタ抽出部24は、ここまでの演算で求めたクラスタリング空間データ数が、予め設定された閾値(以下、第二クラスタ個数閾値と記す。)を超えたクラスタを移動経路と判断する。この第二クラスタ個数閾値にも、試験等により適切な値が設定される。例えば、図4(c)に例示するクラスタリング空間データの場合、移動経路クラスタ抽出部24は、クラスタ302を移動経路と判断する。
 そして、移動経路クラスタ抽出部24は、そのクラスタ中のデータで最も早い時刻と最も遅い時刻を抽出する。さらに、移動経路クラスタ抽出部24は、そのクラスタに含まれるクラスタリング空間データ(すなわち、クラスタの重心の値)と滞留点パタン保存部31が記憶する全滞留点の位置情報(すなわち、滞留点における緯度及び経度の重心の値)との2点間のユークリッド距離が1番短い滞留点と2番目に短い滞留点を移動経路の始終点と決定する。そして、移動経路クラスタ抽出部24は、抽出した時刻および始終点と決定した滞留点とを、移動経路を識別する識別子(以下、移動経路識別子と記す。)とともに、移動経路パタン保存部32に記憶させる。以下、ユークリッド距離が1番短い滞留点および2番目に短い滞留点をそれぞれ識別する情報を、第1近接滞留点識別子および第2近接滞留点識別子と記す。
 なお、図3に例示するクラスタリング空間では、クラスタ101a,101b,101cが滞留点と判断されたクラスタを示し、クラスタ102a,102bが移動経路と判断されたクラスタを示す。
 行動パタン解析部20(より具体的には、クラスタリング空間プロット部21と、滞留点クラスタ抽出部22と、滞留点位置情報ログ除去部23と、移動経路クラスタ抽出部24)は、プログラム(行動パタン解析プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、行動パタン解析装置の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、行動パタン解析部20(より具体的には、クラスタリング空間プロット部21、滞留点クラスタ抽出部22、滞留点位置情報ログ除去部23、および、移動経路クラスタ抽出部24)として動作してもよい。また、クラスタリング空間プロット部21と、滞留点クラスタ抽出部22と、滞留点位置情報ログ除去部23と、移動経路クラスタ抽出部24とは、それぞれが専用のハードウェアで実現されていてもよい。
 行動パタン記憶部30は、行動パタン解析部20が解析した行動パタンデータをデータベースとして記憶する。行動パタン記憶部30は、滞留点パタン保存部31と、移動経路パタン保存部32とを含む。
 滞留点パタン保存部31は、滞留点クラスタ抽出部22が抽出した滞留点パタンデータをデータベースとして記憶する。図5は、滞留点パタンデータの例を示す説明図である。図5に例示するように、滞留点パタン保存部31は、利用者識別子、滞留点識別子、滞留開始時刻、滞留終了時刻、緯度および経度を滞留点パタンデータとして記憶する。なお、位置情報ログに高度を示す情報が含まれている場合、滞留点パタン保存部31は、高度が追加された滞留点パタンデータを記憶する。
 移動経路パタン保存部32は、移動経路クラスタ抽出部24が抽出した移動経路パタンデータをデータベースとして記憶する。図6は、移動経路パタンデータの例を示す説明図である。図6に例示するように、移動経路パタン保存部32は、利用者識別子、移動経路識別子、移動開始時刻、移動終了時刻、第1近接滞留点識別子および第2近接滞留点識別子を移動経路パタンデータとして記憶する。
 行動パタン記憶部30(より具体的には、滞留点パタン保存部31と移動経路パタン保存部32)は、例えば、磁気ディスク等により実現される。
 次に、本実施形態の行動パタン解析装置の動作を説明する。図7および図8は、行動パタン解析装置の動作例を示すフローチャートである。また、図9は、基準曜日及び基準時刻を設定する動作の例を示すフローチャートである。
 まず、位置情報ログ入力部10は、位置情報ログが入力されると、その位置情報ログをクラスタリング空間プロット部21に入力する(図7におけるステップA1)。次に、クラスタリング空間プロット部21は、位置情報ログを受け取ると、既に設定されている基準曜日及び基準時刻をもとに、位置情報ログをクラスタリング空間にプロットし、クラスタリング空間にプロットしたデータを滞留点クラスタ抽出部22に入力する(ステップA2)。なお、基準曜日及び基準時刻の設定方法については後述する。
 次に、滞留点クラスタ抽出部22は、クラスタリング空間にプロットされたデータをクラスタリング空間プロット部21から受け取ると、予め設定されている重み値を、クラスタリング空間にプロットされたデータの緯度及び経度に対してそれぞれ乗じる(ステップA3)。なお、滞留点クラスタ抽出部22は、予め設定されている重み値を、時刻に対して乗じてもよい。
 次に、滞留点クラスタ抽出部22は、クラスタリング空間にプロットされ、重み値を乗じた全データを初期クラスタとする(ステップA4)。そして、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が設定した第一ユークリッド距離閾値を超えているか否を判定する(ステップA5)。2点間のユークリッド距離が第一ユークリッド距離閾値を超えていない場合(ステップA5におけるNo)にはステップA6へ進み、超えている場合(ステップA5におけるYes)にはステップA7へ進む。
 2点間のユークリッド距離が第一ユークリッド距離閾値を超えていない場合、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。この際、滞留点クラスタ抽出部22は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、滞留点クラスタ抽出部22は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、滞留点クラスタ抽出部22は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく(ステップA6)。ステップA6の処理後、ステップA5以降の処理を行う。
 一方、2点間のユークリッド距離が第一ユークリッド距離閾値を超えている場合、滞留点クラスタ抽出部22は、設定された第一クラスタ個数閾値を越えた個数のクラスタリング空間データを含むクラスタを滞留点と判断する。次に、滞留点クラスタ抽出部22は、そのクラスタ中のデータのうち最も早い時刻を滞留開始時刻、最も遅い時刻を滞留終了時刻とする。そして、滞留点クラスタ抽出部22は、滞留開始時刻、滞留終了時刻、および、そのクラスタ中のデータにおける位置情報(緯度及び経度)の重心の値を、滞留点パタン保存部31に記憶させる(ステップA7)。
 次に、滞留点クラスタ抽出部22は、ステップA2で受け取ったクラスタリング空間にプロットされたデータ、及び、ステップA7で決定された滞留点パタンデータを滞留点位置情報ログ除去部23に入力する(ステップA8)。
 滞留点位置情報ログ除去部23は、滞留点クラスタ抽出部22からクラスタリング空間にプロットされたデータ及び滞留点パタンデータを受け取ると、そのクラスタリング空間にプロットされたデータから、滞留点パタンデータに含まれる滞留点と判断されたデータを差し引く。そして、滞留点位置情報ログ除去部23は、クラスタリング空間にプロットされたデータのうち、差し引かれた残りのデータを移動経路クラスタ抽出部24に入力する(図8におけるステップA9)。
 次に、移動経路クラスタ抽出部24は、クラスタリング空間にプロットされたデータであって、滞留点と判断された位置情報ログが除去されたデータを滞留点位置情報ログ除去部23から受け取ると、予め設定されている重み値を、受け取ったデータの緯度および経度に対してそれぞれ乗じる(ステップA10)。なお、移動経路クラスタ抽出部24は、予め設定されている重み値を、時刻に対して乗じてもよい。
 次に、移動経路クラスタ抽出部24は、クラスタリング空間にプロットされ、ステップA10において重み値を乗じた全データを初期クラスタとする(ステップA11)。そして、移動経路クラスタ抽出部24は、全クラスタの中から選び出した2点間のユークリッド距離が設定した第二ユークリッド距離閾値を超えているか否を判定する(ステップA12)。2点間のユークリッド距離が第二ユークリッド距離閾値を超えていない場合(ステップA12におけるNo)にはステップA13へ進み、超えている場合(ステップA12におけるYes)にはステップA14へ進む。
 2点間のユークリッド距離が第二ユークリッド距離閾値を超えていない場合、移動経路クラスタ抽出部24は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。この際、移動経路クラスタ抽出部24は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、移動経路クラスタ抽出部24は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、移動経路クラスタ抽出部24は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく(ステップA13)。ステップA13の処理後、ステップA12以降の処理を行う。
 一方、2点間のユークリッド距離が第二ユークリッド距離閾値を超えている場合、移動経路クラスタ抽出部24は、設定された第二クラスタ個数閾値を超えた個数のクラスタリング空間データを含むクラスタを移動経路と判断する。次に、移動経路クラスタ抽出部24は、そのクラスタ中のデータのうち最も早い時刻を移動開始時刻、最も遅い時刻を移動終了時刻とする。さらに、移動経路クラスタ抽出部24は、そのクラスタの位置情報(緯度及び経度)と、ステップA9で受け取った滞留点パタンデータに含まれる滞留点の位置情報(緯度及び経度)とを比較する。そして、移動経路クラスタ抽出部24は、そのクラスタの位置とのユークリッド距離が1番短い滞留点と2番目に短い滞留点を、それぞれ第1近接滞留点識別子、第2近接滞留点識別子と決定する。そして、移動経路クラスタ抽出部24は、移動開始時刻、移動終了時刻、第1近接滞留点識別子および第2近接滞留点識別子を、移動経路パタン保存部32に記憶させる(ステップA14)。
 次に、基準曜日及び基準時刻を設定する動作を説明する。まず、行動パタン解析基準入力部11は、例えば、利用者によって基準曜日及び基準時刻の値が入力されると、入力された基準曜日及び基準時刻の値をクラスタリング空間プロット部21に入力する(図9におけるステップB1)。次に、クラスタリング空間データプロット部21は、行動パタン解析基準入力部11から基準曜日及び基準時刻の値を受け取ると、クラスタリング空間データプロット部21内部に基準曜日の値および基準時刻の値を保持する(ステップB2)。
 以上のように、本実施形態によれば、クラスタリング空間プロット部21が、少なくとも緯度、経度および時刻により規定される3次元空間上に位置情報ログをプロットする。そして、滞留点クラスタ抽出部22が、緯度-経度平面に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、その位置情報ログをクラスタリングすることにより滞留点を抽出する。また、滞留点位置情報ログ除去部23が、空間上にプロットされた位置情報ログから滞留点として抽出された位置情報ログを除いた非滞留点を抽出する。そして、移動経路クラスタ抽出部24が、緯度-経度平面に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行い、その位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する。このような構成により、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合にも、利用者の行動パタンを精度良く解析できる。
 例えば、図3(a)および図3(b)に例示するように、1日分の位置情報ログでは、1レコードが指し示す場所が利用者にとってどのような場所であるか判断することは困難である。しかし、図3(a)および図3(b)に例示する位置情報ログを、図3(c)に例示する1つのクラスタリング空間上にプロットすることで、レコードが多く滞留する地点、及び、その滞留点間の移動経路上にレコードが連なることを確認できる。そのため、測位していない時刻の大まかな位置情報を補間することが可能になる。
実施形態2.
 次に、本発明による行動パタン解析装置の第2の実施形態を説明する。本実施形態では、位置情報ログが大量に存在する場合に、滞留点クラスタと移動経路クラスタの判別精度を上げる手法を説明する。図10は、本発明による行動パタン解析装置の第2の実施形態の構成例を示すブロック図である。本実施形態における行動パタン解析装置は、位置情報ログ入力部10と、行動パタン解析基準入力部11と、行動パタン解析部50と、行動パタン記憶部30と、移動ベクトル演算解析部40とを備えている。
 行動パタン解析基準入力部11および行動パタン記憶部30の内容は、第1の実施形態と同様のため、説明を省略する。
 位置情報ログ入力部10は、[緯度,経度,時刻]を1レコードとする位置情報ログを受け取ると、その位置情報ログを移動ベクトル関数値演算部41に入力する。なお、時刻は、測位日時ということができ、緯度および経度は、測位場所ということができる。
 移動ベクトル演算解析部40は、移動ベクトル関数値演算部41と、滞留・移動経路属性判定部42とを含む。移動ベクトル関数値演算部41は、入力された位置情報ログのレコードを、位置情報ログに含まれる時刻の時系列順にソートする。そして、移動ベクトル関数値演算部41は、時系列順にソートされたレコードの前後の差分値をベクトル関数値として演算する。なお、以下の説明では、ベクトル関数値のことを移動ベクトル関数値と記すこともある。また、レコードの前後とは、位置情報ログのレコードをソートした時に、隣り合う2つのレコードを意味する。また、差分値には、位置情報ログに含まれる測位日時の時間差、および、測位場所間の距離が含まれる。さらに、差分値には、測位場所間での進行方向を表す進行方向角度が含まれていてもよい。
 ベクトル関数値は、(t,t,r,θ)と定義することができる。tは、レコードが記録された時刻を示す。tは、そのレコードが記録された時刻から次のレコードが記録された時刻まで差分(測位日時の時間差)を示す。rは、そのレコードが記録された位置から次のレコードが記録された位置までの距離(測位場所間の距離)を示す。θは、そのレコードが記録された位置から次のレコードが記録された位置への進行方向を表す進行方向角度を示す。
 ここで、位置情報ログが示す座標における緯度をX、経度をYとし、比較する2点の座標を、それぞれ(X,Y)、(X,Y)とする。このとき、移動ベクトル関数値演算部41は、次のレコードが記録された位置までの距離を、r=((X-X+(Y-Y1/2で算出する。また、移動ベクトル関数値演算部41は、進行方向角度を、θ=arg((Y-Y)/(X-X))で算出する。そして、移動ベクトル関数値演算部41は、これらの演算により得られた全レコードのベクトル関数値を滞留・移動経路属性判定部42に入力する。
 図11は、移動ベクトル関数値の例を示す説明図である。図11に示す例では、時系列順に8:30、9:00、9:15、9:30、10:30および11:30に記録された位置情報ログが存在することを示す。このとき、移動ベクトル関数値演算部41は、11:30に記録された位置情報ログのベクトル関数値を(9,0.25,10,315°)と算出する。ここで、時刻および時刻の差分の単位は「時」である。また、移動ベクトル関数値演算部41は、r及びθの値を、上述する式に基づいて算出すればよい。なお、11:30に記録された位置情報ログは、次に記録されたレコードが存在しないため、11:30に記録された位置情報ログについてのベクトル関数値は算出されていない。
 滞留・移動経路属性判定部42は、移動ベクトル関数値演算部41から全レコードのベクトル関数値を受け取ると、その各レコードが滞留を表すレコードか、移動経路を表すレコードか、または、滞留と移動経路のどちらを表すレコードか判定が不能であるレコードかを判別する。なお、滞留を表すレコードとは、滞留点に含まれるレコードのことを意味し、移動経路を表すレコードとは、非滞留点に含まれるレコードを意味する。以下、滞留を表すレコードの属性を滞留属性と示す。また、移動経路を表すレコードの属性を移動属性と示す。
 具体的には、滞留・移動経路属性判定部42は、移動ベクトル関数値演算部41から受け取ったベクトル関数値を示す各レコードの属性を、予め設定された滞留点許容距離Rおよび有効レコード閾時間Tを用いて判定する。
 滞留・移動経路属性判定部42は、レコードの移動ベクトル関数値に含まれるt(すなわち、次のレコードが記録された時刻まで差分)の値が有効レコード閾時間Tよりも大きい場合、そのレコードの属性を判定不能とする。一方、レコードの移動ベクトル関数値に含まれるt値が有効レコード閾時間Tよりも小さい場合、滞留・移動経路属性判定部42は、さらに、移動ベクトル関数値に含まれるrの値と滞留点許容距離Rの値とを比較する。
 移動ベクトル関数値に含まれるrの値が滞留点許容距離Rの値よりも小さい場合、滞留・移動経路属性判定部42は、対象のレコードを滞留属性を持つレコードと判定する。一方、rの値が滞留点許容距離Rの値よりも大きい場合、滞留・移動経路属性判定部42は、対象のレコードを移動経路属性を持つレコードと判定する。そして、滞留・移動経路属性判定部42は、滞留属性か移動属性かを判定したレコードをクラスタリング空間プロット部21に入力する。
 行動パタン解析部50は、クラスタリング空間プロット部21と、滞留点クラスタ抽出部22と、移動経路クラスタ抽出部24とを含む。すなわち、本実施形態における行動パタン解析部50は、滞留点位置情報ログ除去部23を含んでいない点において第1の実施形態における行動パタン解析部20と異なる。
 クラスタリング空間プロット部21は、第1の実施形態と同様、解析の対象とする位置情報ログをクラスタリング空間にプロットする。具体的には、まず、クラスタリング空間プロット部21は、予め設定された時刻(すなわち、時刻基準)を日付の切れ目とし、設定された曜日(すなわち、曜日基準)の位置情報ログを抽出する。なお、時刻基準および曜日基準に基づいて位置情報ログを抽出する方法は、第1の実施形態で示す方法と同様である。
 なお、クラスタリング空間プロット部21には、位置情報ログ入力部10から直接位置情報ログが入力されてもよい。また、滞留・移動経路属性判定部42が、移動ベクトル演算解析部40に入力された位置情報ログをクラスタリング空間プロット部21に入力するようにしてもよい。
 そして、本実施形態では、クラスタリング空間プロット部21は、緯度、経度および時刻を含む位置情報ログに、滞留・移動経路属性判定部42から受信した進行方向角度を加えたレコードをクラスタリング空間にプロットする。なお、この進行方向角度は、位置情報ログに含まれる時刻に対応する値である。すなわち、クラスタリング空間プロット部21は、[緯度,経度,時刻,進行方向角度]を含むレコードを4次元のクラスタリング空間にプロットする。なお、クラスタリング空間プロット部21がクラスタリング空間に上記レコードをプロットする方法は、第1の実施形態と同様である。そして、クラスタリング空間プロット部21は、プロットしたデータを滞留点クラスタ抽出部22に入力する。
 滞留点クラスタ抽出部22は、第1の実施形態と同様、クラスタリング空間データのクラスタリングを行い、滞留点を抽出する。ただし、本実施形態では、滞留点クラスタ抽出部22は、クラスタリング空間プロット部21からクラスタリング空間にプロットされたデータを受け取ると、滞留・移動経路属性判定部42で滞留属性と判定されたレコードのみを対象としてクラスタリングを行う。
 滞留点クラスタ抽出部22は、クラスタリング空間にプロットされたデータの緯度及び経度を示す値に対して、予め設定された重み値をそれぞれ乗じる。ここで、クラスタリング空間にプロットされ、予め設定された重み値が乗じられた全データのうち、滞留属性と判定されたデータを初期クラスタとする。
 次に、滞留点クラスタ抽出部22は、上記クラスタの中から選び出した2点間のユークリッド距離が、予め設定されたユークリッド距離閾値を超えていないか否かを判断する。ユークリッド距離がユークリッド距離閾値を超えていない場合、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。
 この際、滞留点クラスタ抽出部22は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、滞留点クラスタ抽出部22は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、滞留点クラスタ抽出部22は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、2点間のユークリッド距離がユークリッド距離閾値を超えていた場合、滞留点クラスタ抽出部22は、設定されたクラスタ個数閾値を越えた個数のクラスタリング空間データを含むクラスタを滞留点と判断する。そして、滞留点クラスタ抽出部22は、そのクラスタ中のデータのうち最も早い時刻を滞留開始時刻、最も遅い時刻を滞留終了時刻とする。そして、滞留点クラスタ抽出部22は、滞留開始時刻、滞留終了時刻、および、そのクラスタ中のデータにおける緯度及び経度の重心の値を、滞留点パタン保存部31に記憶させる。
 滞留点クラスタ抽出部22は、クラスタリング空間プロット部21から受け取ったデータを移動経路クラスタ抽出部24に入力する。
 すなわち、本実施形態における滞留点クラスタ抽出部22がクラスタリングを行う方法は、第1の実施形態と同様である。ただし、本実施形態では、滞留点クラスタ抽出部22が滞留属性と判定されたレコードのみを対象としてクラスタリングを行う点において、第1の実施形態と異なる。
 移動経路クラスタ抽出部24は、第1の実施形態と同様、クラスタリング空間データのクラスタリングを行い、端末利用者が頻繁に移動を行っている時間帯及び移動経路を抽出する。ただし、移動属性と判定されたデータを初期クラスタとして処理を行う点において第1の実施形態と異なる。
 また、第1の実施形態では、滞留点位置情報ログ除去部23が、クラスタリング空間にプロットされたデータから、滞留点パタンデータに含まれる滞留点と判断されたデータを差し引いた。そして、滞留点位置情報ログ除去部23が、クラスタリング空間にプロットされたデータのうち、差し引かれた残りのデータを移動経路クラスタ抽出部24に入力した。一方、本実施形態では、滞留・移動経路属性判定部42によって滞留か移動経路かの属性が判定されたレコードがクラスタリング空間プロット部21に入力される。そのため、滞留点位置情報ログ除去部23によって滞留点と判断されたデータがクラスタリング空間にプロットされたデータから差し引かれなくても、移動経路クラスタ抽出部24は、移動属性と判定されたデータを識別することが可能になる。
 すなわち、第1の実施形態における滞留点位置情報ログ除去部23も、本実施形態における移動ベクトル演算部40(より詳しくは、移動ベクトル関数値演算部41と、滞留・移動経路属性判定部42)も、非滞留点を抽出する機能を有する。さらに、本実施形態における移動ベクトル演算部40では、データの絞り込みが行われるため、第1の実施形態における効果に加え、位置情報ログが大量になった場合でも、滞留点クラスタと移動経路クラスタの判別精度を上げることができる。
 まず、移動経路クラスタ抽出部24は、滞留点クラスタ抽出部22からデータを受け取ると、予め設定されている重み値を、受け取ったデータの緯度および経度に対してそれぞれ乗じる。
 本実施形態では、移動経路の進行方向について考慮する。そこで、距離関数は、緯度、経度、時刻および進行方向角度の4変数を用いて以下の式1のように定義される。なお、以下に定義される距離関数において、緯度及び経度を基準として、時刻と進行方向角度に対して、k,kがそれぞれ定められる。
 (X-X+(Y-Y+k(Z-Z+k(|θ-θ|)
 但し|θ-θ|<180°
 (X-X+(Y-Y+k(Z-Z+k(|θ-θ|-180)
 但し|θ-θ|>180°     ・・・(式1)
 ここで、定義された重み値k、kが乗じられた全データのうち、移動属性と判定されたデータを初期クラスタとする。移動経路クラスタ抽出部24は、上記クラスタの中から選び出した2点間のユークリッド距離が設定したユークリッド距離閾値を超えていないか否かを判定する。ユークリッド距離が閾値を超えていない場合、移動経路クラスタ抽出部24は、上記クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。
 この際、移動経路クラスタ抽出部24は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、移動経路クラスタ抽出部24は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、移動経路クラスタ抽出部24は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、2点間のユークリッド距離がユークリッド距離閾値を超えている場合、移動経路クラスタ抽出部24は、設定されたクラスタ個数閾値を超えた個数のクラスタリング空間データを含むクラスタを移動経路と判断する。そして、移動経路クラスタ抽出部24は、そのクラスタ中のデータのうち最も早い時刻を移動開始時刻、最も遅い時刻を移動終了時刻とする。
 さらに、移動経路クラスタ抽出部24は、そのクラスタの位置情報(緯度及び経度)と、滞留点クラスタ抽出部22から受け取った滞留点パタンデータに含まれる滞留点の位置情報(緯度及び経度)とを比較する。そして、移動経路クラスタ抽出部24は、そのクラスタの位置とのユークリッド距離が1番短い滞留点と2番目に短い滞留点を、それぞれ第1近接滞留点識別子、第2近接滞留点識別子と決定する。そして、移動経路クラスタ抽出部24は、移動開始時刻、移動終了時刻、第1近接滞留点識別子および第2近接滞留点識別子を、移動経路パタン保存部32に記憶させる。
 すなわち、本実施形態では、移動経路クラスタ抽出部24が進行方向角度の差分を考慮してクラスタリングを行う点において、第1の実施形態における移動経路クラスタ抽出部24と異なる。それ以外については、第1の実施形態と同様である。なお、移動経路の進行方向について考慮しない場合、移動経路クラスタ抽出部24は、第1の実施形態と同様に、利用者の測位位置及び測位日時をもとにクラスタリングを行えばよい。
 以上のように、本実施形態によれば、移動ベクトル関数値演算部41が位置情報ログに含まれる測位日時順にソートされた隣接する2つの位置情報ログ間の差分値(移動ベクトル関数値)として、その位置情報ログに含まれる測位日時の時間差、測位場所間の距離、および、測位場所間での進行方向を表す進行方向角度を算出する。また、滞留・移動経路属性判定部42が、測位日時の時間差及び測位場所間の距離に基づいて、位置情報ログの属性が滞留属性を有するか否かを判定する。そして、滞留点クラスタ抽出部22が、滞留属性を有すると判定された位置情報ログをクラスタリングすることにより滞留点を抽出する。
 また、本実施形態によれば、滞留・移動経路属性判定部42が、測位日時の時間差及び測位場所間の距離に基づいて、位置情報ログの属性が移動属性を有するか否かを判定する。また、クラスタリング空間プロット部21が、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコードを、少なくとも緯度、経度、時刻および進行方向角度により規定される4次元空間上にプロットする。そして、移動経路クラスタ抽出部24が、移動経路属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する。
 以上のような構成により、第1の実施形態における効果に加え、位置情報ログが大量になった場合でも、滞留点クラスタと移動経路クラスタの判別精度を上げることができる。
 すなわち、本実施形態では、滞留と移動経路のどちらを表すレコードか判定が不能であるレコード(すなわち、滞留属性でも移動属性でもないレコード)は、クラスタリングの対象から除外される。このようにして、クラスタリングの対象とするレコードを削減することで、クラスタリングの精度を上げることができる。
実施形態3.
 次に、本発明による行動パタン解析装置の第3の実施形態を説明する。本実施形態では、各移動経路クラスタの分類精度を上げる方法を説明する。図12は、位置情報ログの集合例を示す説明図である。図12では、点線の矢印が位置情報ログに含まれる進行方向を示している。また、図12に示す例では、破線で囲まれた位置情報ログ群401に含まれる位置情報ログ401aと、位置情報ログ401bは、進行方向が同じであるが別の経路を利用していることを示す。また、図12に示す例では、破線で囲まれた位置情報ログ群402に含まれる位置情報ログ402aと、位置情報ログ402bは、同一移動経路上で大きく進行方向が変化していることを示す。本実施形態では、位置情報ログ群401に含まれる別経路を別の移動経路クラスタとして分類し、位置情報ログ群401に含まれる同一移動経路を同一の移動経路クラスタとして分類する精度を向上させる処理について説明する。
 図13は、本発明による行動パタン解析装置の第3の実施形態の構成例を示すブロック図である。本実施形態における行動パタン解析装置は、位置情報ログ入力部10と、行動パタン解析基準入力部11と、行動パタン解析部60と、行動パタン記憶部30と、移動ベクトル演算解析部40とを備えている。
 位置情報ログ入力部10、行動パタン解析基準入力部11、行動パタン記憶部30、および、移動ベクトル関数値演算部41と滞留・移動経路属性判定部42とを含む移動ベクトル演算解析部40の内容は、第2の実施形態と同様のため、説明を省略する。
 行動パタン解析部60は、クラスタリング空間プロット部21と、滞留点クラスタ抽出部22と、移動経路クラスタ抽出部24と、進行方向距離係数演算部25とを含む。すなわち、本実施形態における行動パタン解析部60は、進行方向距離係数演算部25を含む点において第2の実施形態における行動パタン解析部50と異なる。
 クラスタリング空間プロット部21は、第2の実施形態と同様、解析の対象とする位置情報ログをクラスタリング空間にプロットする。具体的には、まず、クラスタリング空間プロット部21は、予め設定された時刻(すなわち、時刻基準)を日付の切れ目とし、設定された曜日(すなわち、曜日基準)の位置情報ログを抽出する。なお、時刻基準および曜日基準に基づいて位置情報ログを抽出する方法は、第2の実施形態で示す方法と同様である。
 なお、クラスタリング空間プロット部21には、位置情報ログ入力部10から直接位置情報ログが入力されてもよい。また、滞留・移動経路属性判定部42が、移動ベクトル演算解析部40に入力された位置情報ログをクラスタリング空間プロット部21に入力するようにしてもよい。
 本実施形態では、クラスタリング空間プロット部21は、緯度、経度および時刻を含む位置情報ログをクラスタリング空間にプロットする。クラスタリング空間プロット部21がクラスタリング空間に上記レコードをプロットする方法は、第1の実施形態と同様である。そして、クラスタリング空間プロット部21は、プロットしたデータを滞留点クラスタ抽出部22に入力する。
 滞留点クラスタ抽出部22は、第2の実施形態と同様、クラスタリング空間データのクラスタリングを行い、滞留点を抽出する。本実施形態では、滞留点クラスタ抽出部22は、クラスタリング空間プロット部21からクラスタリング空間にプロットされたデータを受け取ると、滞留・移動経路属性判定部42で滞留属性と判定されたレコードのみを対象としてクラスタリングを行う。
 滞留点クラスタ抽出部22は、クラスタリング空間にプロットされたデータの緯度及び経度を示す値に対して、予め設定された重み値をそれぞれ乗じる。ここで、クラスタリング空間にプロットされ、予め設定された重み値が乗じられた全データのうち、滞留属性と判定されたデータを初期クラスタとする。
 次に、滞留点クラスタ抽出部22は、上記クラスタの中から選び出した2点間のユークリッド距離が、予め設定されたユークリッド距離閾値を超えていないか否かを判断する。ユークリッド距離がユークリッド距離閾値を超えていない場合、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。
 この際、滞留点クラスタ抽出部22は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、滞留点クラスタ抽出部22は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、滞留点クラスタ抽出部22は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、2点間のユークリッド距離がユークリッド距離閾値を超えていた場合、滞留点クラスタ抽出部22は、設定されたクラスタ個数閾値を越えた個数のクラスタリング空間データを含むクラスタを滞留点と判断する。そして、滞留点クラスタ抽出部22は、そのクラスタ中のデータのうち最も早い時刻を滞留開始時刻、最も遅い時刻を滞留終了時刻とする。そして、滞留点クラスタ抽出部22は、滞留開始時刻、滞留終了時刻、および、そのクラスタ中のデータにおける緯度及び経度の重心の値を、滞留点パタン保存部31に記憶させる。
 滞留点クラスタ抽出部22は、クラスタリング空間プロット部21から受け取ったデータを移動経路クラスタ抽出部24に入力する。
 すなわち、本実施形態における滞留点クラスタ抽出部22がクラスタリングを行う方法は、第2の実施形態と同様である。ただし、第2の実施形態では、クラスタリング空間プロット部21が[緯度,経度,時刻,進行方向角度]を含むレコードを4次元のクラスタリング空間にプロットしているのに対し、本実施形態ではクラスタリング空間プロット部21が[緯度,経度,時刻]を含むレコードを3次元のクラスタリング空間にプロットしてクラスタリングを行う点において、第2の実施形態と異なる。
 移動経路クラスタ抽出部24は、クラスタリング空間データのクラスタリングを行い、端末利用者が頻繁に移動を行っている時間帯及び移動経路を抽出する。ただし、本実施形態では、移動経路クラスタ抽出部24が、位置情報ログが示す進行方向と、位置情報ログ間の方位角との関係も考慮してクラスタリングを行う点において第2の実施形態と異なる。
 図14は、位置情報ログが示す進行方向と位置情報ログの方位角との関係の例を示す説明図である。図14に示す例では、矢印501a,501bが、位置情報ログを示す各点P1,P2のそれぞれの進行方向を示している。
 本実施形態では、後述する進行方向距離係数演算部25が、P1の進行方向角度θと、P1を原点とするP2への方位角θ12とから進行方向距離係数w12を算出し、移動経路クラスタ抽出部24がw12を前述のユークリッド距離の値に乗じる。同様に、進行方向距離係数演算部25が、P2の進行方向角度θと、P1を原点とするP2への方位角θ21とから進行方向距離係数w21を算出し、移動経路クラスタ抽出部24がw21を前述のユークリッド距離の値に乗じる。
 ここで、進行方向距離係数とは、位置情報ログが示す測位位置からの進行方向と、2つの測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数であり、後述する方法により算出される。そして、移動経路クラスタ抽出部24は、算出した値を用いて、移動属性と判定されたデータを初期クラスタとした処理を行う。なお、方位角の算出方法についても後述する。
 進行方向距離係数演算部25は、2つの位置情報ログに基づいて、各位置情報ログが示す測位位置からの進行方向と、2つ位置情報ログが示す測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数(すなわち、進行方向距離係数)を、位置情報ログごとに算出する。具体的には、進行方向距離係数演算部25は、2点の位置情報ログに対して、1点を原点としたもう1点へのベクトル(具体的には、2つの測位位置間の方向を示すベクトル)と、移動ベクトル関数値演算部41で算出された移動方向ベクトル(具体的には、測位位置からの進行方向を示すベクトル)とのなす角の演算を行い、進行方向距離係数の値を決定する。なお、進行方向距離係数演算部25は、移動経路クラスタ抽出部24から位置情報ログを受け取って、進行方向距離係数を算出する。
 なお、2点の位置情報ログの移動方向ベクトルは、通常各々異なるものである。そこで、進行方向距離係数演算部25は、なす角の演算を、それぞれの位置情報ログを原点として行う。
 ここで、図14に例示する位置情報ログが示す座標における緯度をX、経度をYとし、比較する2点P1,P2の座標を、それぞれ(X,Y)、(X,Y)とする。また、P1の移動方向ベクトル501aの方位角をθ、P2の移動方向ベクトル501bの方位角をθとする。このとき、P1を原点としたP2の方位角は、以下の式2のように定義される。
 θ12=arg((Y-Y)/(X-X)) ・・・(式2)
 また、P1を原点としたP2へのベクトルと、移動ベクトル関数値演算部41で算出されたP1の移動方向ベクトル501aとのなす角θ1to2は、以下の式3で定義される。
 θ1to2=min{|θ-θ12|,360-|θ-θ12|} ・・・(式3)
 このとき、進行方向距離係数演算部25は、式2および式3により算出したθ1to2を用いて、進行方向距離係数w12を求める。進行方向距離係数演算部25は、例えば、以下の式4を用いて、進行方向距離係数w12を算出してもよい。
 w12=1-COS θ1to2  ・・・(式4)
 なお、進行方向係数w12を算出する際に用いる式は、上記の式4に限定されない。位置情報ログが示す測位位置からの進行方向と、2つの測位位置間の方向とがなす角度の値が小さいほど値が小さくなり、かつ、両者のなす角度が取り得る区間において連続関数であり、さらに、進行方向距離係数の値が、両者のなす角度に関わらず常に正の値をとる、という条件を満たす式であれば、他の式であってもよい。
 このように、進行方向距離係数は、2つの位置情報ログに対し、移動ベクトル関数値演算部41が算出した移動ベクトル関数値に含まれる進行方向と、2つの位置情報ログの方位角とのなす角の値から定まる係数であると言える。
 同様に、P2を原点としたP1の方位角は、以下の式5のように定義される。
 θ21=arg((Y-Y)/(X-X)) ・・・(式5)
 また、P2を原点としたP1へのベクトルと、移動ベクトル関数値演算部41で算出されたP2の移動方向ベクトル501bとのなす角θ2to1についても、式3と同様、以下の式6で定義される。
 θ2to1=min{|θ-θ21|,360-|θ-θ21|} ・・・(式6)
 このとき、進行方向距離係数演算部25は、式5および式6により算出したθ2to1を用いて、進行方向距離係数w21を求める。進行方向距離係数演算部25は、例えば、以下の式7を用いて、進行方向距離係数w21を算出してもよい。
 w21=1-COS θ2to1 ・・・(式7)
 進行方向距離係数演算部25は、算出した進行方向距離係数w12およびw21を、移動経路クラスタ抽出部24に通知する。
 移動経路クラスタ抽出部24は、滞留点クラスタ抽出部22からデータを受け取ると、進行方向距離係数演算部25に対して少なくとも[緯度,経度,進行方向角度]を含む位置情報ログを渡し、進行方向距離係数演算部25から進行方向距離係数を受け取る。
 本実施形態では、位置情報ログの2点(P1,P2)間の距離を示す値を算出する場合、P1を基準として距離を算出した場合と、P2を基準として距離を算出した場合とで、移動経路の進行方向を考慮したときに、両者の距離を示す値が異なるように演算を行う。
 そこで、本実施形態では、緯度、経度、時刻および進行方向距離係数の4変数を用いて以下の式8のように距離関数を定義する。なお、以下の式8で定義される距離関数では、緯度及び経度を基準として、時刻に対して、kがそれぞれ定められる。
 w12{(X-X+(Y-Y+k(Z-Z} ・・・(式8)
 ここで、定義された重み値kが乗じられた全データのうち、移動属性と判定されたデータを初期クラスタとする。すなわち、緯度および経度を基準として、時刻方向のユークリッド距離が遠いと判定されやすくなる重み値kを予め設定しておく。移動経路クラスタ抽出部24は、各位置情報ログに含まれる緯度及び経度に対してそれぞれ重み値kを乗じることにより、位置情報ログ間のユークリッド距離を算出する。さらに、移動経路クラスタ抽出部24は、算出したユークリッド距離に対して、進行方向距離係数を乗じることで、重み付けを行う。
 そして、移動経路クラスタ抽出部24は、上記クラスタの中から選び出した2点間のユークリッド距離が設定したユークリッド距離閾値を超えていないか否かを判定する。ユークリッド距離が閾値を超えていない場合、移動経路クラスタ抽出部24は、上記クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。
 この際、移動経路クラスタ抽出部24は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、移動経路クラスタ抽出部24は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、移動経路クラスタ抽出部24は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、2点間のユークリッド距離がユークリッド距離閾値を超えている場合、移動経路クラスタ抽出部24は、設定されたクラスタ個数閾値を超えた個数のクラスタリング空間データを含むクラスタを移動経路と判断する。そして、移動経路クラスタ抽出部24は、そのクラスタ中のデータのうち最も早い時刻を移動開始時刻、最も遅い時刻を移動終了時刻とする。
 さらに、移動経路クラスタ抽出部24は、そのクラスタの位置情報(緯度及び経度)と、滞留点クラスタ抽出部22から受け取った滞留点パタンデータに含まれる滞留点の位置情報(緯度及び経度)とを比較する。そして、移動経路クラスタ抽出部24は、そのクラスタの位置とのユークリッド距離が1番短い滞留点と2番目に短い滞留点を、それぞれ第1近接滞留点識別子、第2近接滞留点識別子と決定する。そして、移動経路クラスタ抽出部24は、移動開始時刻、移動終了時刻、第1近接滞留点識別子および第2近接滞留点識別子を、移動経路パタン保存部32に記憶させる。
 すなわち、本実施形態の移動経路クラスタ抽出部24は、[緯度,経度,時刻]を含むレコードを対象にユークリッド距離の演算を行い、これらのクラスタリングを行う点で、第2の実施形態における移動経路クラスタ抽出部24と異なる。また、本実施形態の移動経路クラスタ抽出部24は、2点の位置情報ログ間のユークリッド距離を各々の位置情報ログを始点として算出し、さらに、この値に進行方向距離係数を乗算することで2点間の距離を定義する。そして、各点ごとに定義された2つの値を考慮したクラスタリングを行う点で、第2の実施形態における移動経路クラスタ抽出部24と異なる。それ以外の処理については、第2の実施形態と同様である。
 例えば、図12に例示する位置情報ログ群401に含まれる位置情報ログ401aと位置情報ログ401bに着目すると、各移動方向ベクトルは、お互いの位置情報ログの方向を向いていない。そのため、位置情報ログ401aと位置情報ログ401bのいずれを基準として進行方向距離係数の値を利用しても、進行方向距離係数を乗算したユークリッド距離(上記式2参照)が遠くなる。そのため、2点の位置情報ログはクラスタリングされにくくなる。
 一方、図12に例示する位置情報ログ群402に含まれる位置情報ログ402aと位置情報ログ402bに着目すると、位置情報ログ402aの移動方向ベクトルは、位置情報ログ402bの方向を向いている。一方、位置情報ログ402bの移動方向ベクトルは、位置情報ログ402aの方向とは離れた方向を向いている。そのため、位置情報ログ402bを基準として算出される進行方向距離係数の値は大きくなるが、位置情報ログ402aを基準として算出される進行方向距離係数の値は小さくなる。このとき、移動経路クラスタ抽出部24は、進行方向距離係数を乗算したユークリッド距離が小さい値の順番にクラスタリングを行うので、結果として2点の位置情報ログはクラスタリングされやすくなる。
 以上のように、本実施形態によれば、進行方向距離係数演算部25が、2つの位置情報ログに基づいて、進行方向距離係数を位置情報ログごとに算出する。また、移動経路クラスタ抽出部24が、緯度および経度を基準として、時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを位置情報ログに対して行い、かつ、そのユークリッド距離に進行方向距離係数を乗じることによる重み付けを行う。そして、移動経路クラスタ抽出部24が、重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する。そのため、第1の実施形態の効果に加え、移動経路クラスタを分類する精度を向上させることができる。
 以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。
 まず、位置情報ログ入力部10は、[緯度,経度,時刻]を1レコードとする位置情報ログを受け取ると、その位置情報ログをクラスタリング空間プロット部21に入力する。クラスタリング空間プロット部21は、予め設定された時刻を日付の切れ目とし、設定された曜日の位置情報ログを抽出する。そして、クラスタリング空間プロット部21は、[緯度,経度,時刻]を含むレコードを3次元のクラスタリング空間にプロットし、プロットしたデータを滞留点クラスタ抽出部22に入力する。
 次に、滞留点クラスタ抽出部22は、クラスタリング空間にプロットされたデータを受け取ると、クラスタリング空間にプロットされたデータの緯度及び経度を示す値に対して、予め設定された重み値をそれぞれ乗じる。ここで、クラスタリング空間にプロットされ、設定された重み値が掛けられた全データを初期クラスタとする。
 次に、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が、予め設定されたユークリッド距離閾値を超えていないか否かを判断する。ユークリッド距離が閾値を超えていない場合、滞留点クラスタ抽出部22は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。
 この際、滞留点クラスタ抽出部22は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、滞留点クラスタ抽出部22は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、滞留点クラスタ抽出部22は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、ユークリッド距離が閾値を超えていた場合、滞留点クラスタ抽出部22は、設定されたクラスタ個数閾値を越えた個数のクラスタリング空間データを含むクラスタを滞留点と判断する。そして、滞留点クラスタ抽出部22は、そのクラスタ中のデータのうち最も早い時刻を滞留開始時刻、最も遅い時刻を滞留終了時刻とする。そして、滞留点クラスタ抽出部22は、滞留開始時刻、滞留終了時刻、および、そのクラスタ中のデータにおける緯度及び経度の重心の値を、滞留点パタン保存部31に記憶させる。
 滞留点クラスタ抽出部22は、クラスタリング空間プロット部21から受け取ったデータ(すなわち、クラスタリング空間にプロットされたデータ)と、滞留点と判断したデータ(滞留点パタンデータ)を滞留点位置情報ログ除去部23に入力する。
 滞留点位置情報ログ除去部23は、クラスタリング空間にプロットされたデータから、滞留点パタンデータに含まれる滞留点と判断されたデータを差し引く。そして、滞留点位置情報ログ除去部23は、クラスタリング空間にプロットされたデータのうち、差し引かれた残りのデータを移動経路クラスタ抽出部24に入力する 
 次に、移動経路クラスタ抽出部24は、滞留点位置情報ログ除去部23からデータを受け取ると、予め設定されている重み値を、受け取ったデータの緯度および経度に対してそれぞれ乗じる。ここで、重み値が掛けられた全データを初期クラスタとする。
 移動経路クラスタ抽出部24は、全クラスタの中から選び出した2点間のユークリッド距離が設定したユークリッド距離閾値を超えていないか否かを判定する。ユークリッド距離が閾値を超えていない場合、移動経路クラスタ抽出部24は、全クラスタの中から選び出した2点間のユークリッド距離が最も短いクラスタ同士を一つのクラスタへ統合する。この際、移動経路クラスタ抽出部24は、クラスタを構成するそれぞれの位置情報ログの時刻、緯度および経度を含むようにクラスタを統合する。さらに、移動経路クラスタ抽出部24は、それぞれの位置情報ログとは別に、そのクラスタに含まれる位置情報ログから緯度および経度の重心の値を算出し、その値を新たなクラスタデータの値とする。また、移動経路クラスタ抽出部24は、統合したクラスタに含まれるクラスタリング空間データの個数も保持しておく。
 一方、ユークリッド距離が閾値を超えている場合、移動経路クラスタ抽出部24は、設定されたクラスタ個数閾値を超えた個数のクラスタリング空間データを含むクラスタを移動経路と判断する。そして、移動経路クラスタ抽出部24は、そのクラスタ中のデータのうち最も早い時刻を移動開始時刻、最も遅い時刻を移動終了時刻とする。
 さらに、移動経路クラスタ抽出部24は、そのクラスタの位置情報(緯度及び経度)と、滞留点位置情報ログ除去部23から受け取った滞留点パタンデータに含まれる滞留点の位置情報(緯度及び経度)とを比較する。そして、移動経路クラスタ抽出部24は、そのクラスタの位置とのユークリッド距離が1番短い滞留点と2番目に短い滞留点を移動経路を、それぞれ第1近接滞留点識別子、第2近接滞留点識別子と決定する。そして、移動経路クラスタ抽出部24は、移動開始時刻、移動終了時刻、第1近接滞留点識別子および第2近接滞留点識別子を、移動経路パタン保存部32に記憶させる。
 次に、本発明の最小構成の例を説明する。図15は、本発明による行動パタン解析装置の最小構成の例を示すブロック図である。本発明による行動パタン解析装置は、利用者の測位位置(例えば、緯度、経度、高度)及び測位日時(例えば、時刻)を含む情報である位置情報ログを、その測位位置を表す数値情報(例えば、緯度、経度、高度)および時刻により規定される多次元空間(例えば、緯度、経度および時刻により規定される3次元空間)上にプロットする位置情報プロット手段81(例えば、クラスタリング空間プロット部21)と、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間(例えば、緯度-経度平面)に対する時刻方向(例えば、時刻軸方向)のユークリッド距離が近いと判定されやすくなる重み付け(例えば、時刻に重み値kを乗じる処理)を位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出手段82(例えば、滞留点クラスタ抽出部22)と、位置情報プロット手段81がプロットした位置情報ログから滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出手段83(例えば、滞留点位置情報ログ除去部23)と、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付け(例えば、時刻に重み値kを乗じる処理)を非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段84(例えば、移動経路クラスタ抽出部24)とを備えている。
 そのような構成により、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合にも、利用者の行動パタンを精度良く解析できる。
 また、図16は、本発明による行動パタン解析装置の他の最小構成の例を示すブロック図である。本発明による他の行動パタン解析装置は、利用者の測位位置(例えば、緯度、経度、高度)及び測位日時(例えば、時刻)を含む情報である位置情報ログに含まれるその測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、その位置情報ログに含まれる測位日時の時間差、および、測位位置間の距離を算出する移動ベクトル関数値算出手段91(例えば、移動ベクトル関数値演算部41)と、測位日時の時間差及び測位位置間の距離に基づいて、位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性(例えば、移動属性)かを判定する属性判定手段92(例えば、滞留・移動経路属性判定部42)と、位置情報ログを、測位位置を表す数値情報(例えば、緯度、経度、高度)および時刻により規定される多次元空間(例えば、緯度、経度および時刻により規定される3次元空間)上にプロットする位置情報プロット手段93(例えば、クラスタリング空間プロット部21)と、多次元空間において測位位置を表す数値情報により規定される空間である位置情報空間(例えば、緯度-経度平面)に対する時刻方向(例えば、時刻軸方向)のユークリッド距離が近いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、滞留点を抽出する滞留点クラスタ抽出手段94(例えば、滞留点クラスタ抽出部22)と、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを位置情報ログに対して行い、重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段95(例えば、移動経路クラスタ抽出部24)とを備えている。
 このような構成であっても、位置情報の測位間隔が長く、また、位置情報の測位が不定期である場合に、利用者の行動パタンを精度良く解析できる。
 また、移動ベクトル関数値算出手段91は、2つの位置情報ログ間の差分値として、測位位置間での進行方向を表す進行方向角度(例えば、θ)の差分値を算出してもよい。そして、位置情報プロット手段93は、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコード(例えば、[緯度,経度,時刻,進行方向角度]を含むレコード)を、測位位置を表す数値情報、時刻および進行方向角度により規定される多次元空間(例えば、緯度、経度、高度および時刻により規定される4次元空間)上にプロットしてもよい。さらに、移動経路クラスタ抽出手段95は、移動経路属性を有すると判定された位置情報ログに進行方向角度を加えたレコードをクラスタリングすることにより、利用者の移動経路を抽出してもよい。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出手段と、位置情報プロット手段がプロットした位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出手段と、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えたことを特徴とする行動パタン解析装置。
(付記2)位置情報プロット手段は、利用者の測位位置として緯度および経度を示す値を含む位置情報ログを、緯度、経度および時刻により規定される3次元空間上にプロットし、滞留点クラスタ抽出手段は、前記3次元空間において緯度および経度により規定される平面である緯度経度平面に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う付記1記載の行動パタン解析装置。
(付記3)位置情報プロット手段は、利用者の測位位置として緯度、経度および高度を示す値を含む位置情報ログを、緯度、経度、高度および時刻により規定される4次元空間上にプロットし、滞留点クラスタ抽出手段は、前記4次元空間において緯度、経度および高度により規定される空間である緯度経度高度空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う付記1記載の行動パタン解析装置。
(付記4)移動経路クラスタ抽出手段は、緯度経度高度空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行う付記3記載の行動パタン解析装置。
(付記5)移動経路クラスタ抽出手段は、クラスタリングされた位置情報ログとのユークリッド距離が1番短い滞留点と、2番目に短い滞留点を、移動経路の始点または終点と決定する付記1から付記4のうちのいずれか1つに記載の行動パタン解析装置。
(付記6)移動経路クラスタ抽出手段は、クラスタリングされた位置情報ログにおける位置情報の重心の値と、滞留点における位置情報の重心の値との距離とを比較し、前記距離が1番短い滞留点と、2番目に短い滞留点を、移動経路の始点または終点と決定する付記1から付記5のうちのいずれか1つに記載の行動パタン解析装置。
(付記7)利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出する移動ベクトル関数値算出手段と、前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定手段と、前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出する滞留点クラスタ抽出手段と、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えたことを特徴とする行動パタン解析装置。
(付記8)移動ベクトル関数値算出手段は、2つの位置情報ログ間の差分値として、測位位置間での進行方向を表す進行方向角度の差分値を算出し、位置情報プロット手段は、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコードを、測位位置を表す数値情報、時刻および前記進行方向角度により規定される多次元空間上にプロットし、移動経路クラスタ抽出手段は、前記移動経路属性を有すると判定された位置情報ログに進行方向角度を加えたレコードをクラスタリングすることにより、利用者の移動経路を抽出する付記7記載の行動パタン解析装置。
(付記9)2つの位置情報ログに基づいて、当該各位置情報ログが示す測位位置からの進行方向と、2つ位置情報ログが示す測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数である進行方向距離係数を、前記位置情報ログごとに算出する進行方向距離係数算出手段を備え、移動経路クラスタ抽出手段は、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、かつ、前記移動方向距離係数算出手段が算出した進行方向距離係数を前記ユークリッド距離に乗じることによる重み付けを行い、当該重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する付記7記載の行動パタン解析装置。
(付記10)利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出し、前記多次元空間上にプロットされた位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出し、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出することを特徴とする行動パタン解析方法。
(付記11)利用者の測位位置として緯度および経度を示す値を含む位置情報ログを、緯度、経度および時刻により規定される3次元空間上にプロットし、前記3次元空間において緯度および経度により規定される平面である緯度経度平面に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う付記10記載の行動パタン解析方法。
(付記12)利用者の測位位置として緯度、経度および高度を示す値を含む位置情報ログを、緯度、経度、高度および時刻により規定される4次元空間上にプロットし、前記4次元空間において緯度、経度および高度により規定される空間である緯度経度高度空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う付記10記載の行動パタン解析方法。
(付記13)緯度経度高度空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行う付記12記載の行動パタン解析方法。
(付記14)利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出し、前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定し、前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出し、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出することを特徴とする行動パタン解析方法。
(付記15)2つの位置情報ログ間の差分値として、測位位置間での進行方向を表す進行方向角度の差分値を算出し、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコードを、測位位置を表す数値情報、時刻および前記進行方向角度により規定される多次元空間上にプロットし、前記移動経路属性を有すると判定された位置情報ログに進行方向角度を加えたレコードをクラスタリングすることにより、利用者の移動経路を抽出する付記14記載の行動パタン解析方法。
(付記16)2つの位置情報ログに基づいて、当該各位置情報ログが示す測位位置からの進行方向と、2つ位置情報ログが示す測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数である進行方向距離係数を、前記位置情報ログごとに算出し、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、かつ、算出された前記進行方向距離係数を前記ユークリッド距離に乗じることによる重み付けを行い、当該重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する付記14記載の行動パタン解析方法。
(付記17)コンピュータに、利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出処理、位置情報プロット処理でプロットされた位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出処理、および、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理を実行させるための行動パタン解析プログラム。
(付記18)コンピュータに、位置情報プロット処理で、利用者の測位位置として緯度および経度を示す値を含む位置情報ログを、緯度、経度および時刻により規定される3次元空間上にプロットさせ、滞留点クラスタ抽出処理で、前記3次元空間において緯度および経度により規定される平面である緯度経度平面に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行わせる付記17記載の行動パタン解析プログラム。
(付記19)コンピュータに、位置情報プロット処理で、利用者の測位位置として緯度、経度および高度を示す値を含む位置情報ログを、緯度、経度、高度および時刻により規定される4次元空間上にプロットさせ、滞留点クラスタ抽出処理で、前記4次元空間において緯度、経度および高度により規定される空間である緯度経度高度空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行わせる付記17記載の行動パタン解析プログラム。
(付記20)コンピュータに、移動経路クラスタ抽出処理で、緯度経度高度空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを非滞留点の位置情報ログに対して行わせる付記19記載の行動パタン解析プログラム。
(付記21)コンピュータに、利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出する移動ベクトル関数値算出処理、前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定処理、前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出する滞留点クラスタ抽出処理、および、前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理を実行させるための行動パタン解析プログラム。
(付記22)コンピュータに、移動ベクトル関数値算出処理で、2つの位置情報ログ間の差分値として、測位位置間での進行方向を表す進行方向角度の差分値を算出させ、位置情報プロット処理で、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコードを、測位位置を表す数値情報、時刻および前記進行方向角度により規定される多次元空間上にプロットさせ、移動経路クラスタ抽出処理で、前記移動経路属性を有すると判定された位置情報ログに進行方向角度を加えたレコードをクラスタリングすることにより、利用者の移動経路を抽出させる付記21記載の行動パタン解析プログラム。
(付記23)コンピュータに、2つの位置情報ログに基づいて、当該各位置情報ログが示す測位位置からの進行方向と、2つ位置情報ログが示す測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数である進行方向距離係数を、前記位置情報ログごとに算出する進行方向距離係数算出処理を実行させ、移動経路クラスタ抽出処理で、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、かつ、前記移動方向距離係数算出処理で算出された進行方向距離係数を前記ユークリッド距離に乗じることによる重み付けを行い、当該重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出させる付記21記載の行動パタン解析プログラム。
 以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2011年1月14日に出願された日本特許出願2011-006260、2011年5月16日に出願された日本特許出願2011-109400、および、2011年9月21日に出願された日本特許出願2011-206345を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、不定期に測定された位置情報から行動パタンを解析する行動パタン解析装置に好適に適用される。例えば、位置情報取得機能付き端末を利用した位置情報の測位間隔が広い場合や位置情報が不定期に測位される場合であっても、利用者の行動パタンが把握することが可能となる。そのため、利用者の行動パタンに合わせたコンテンツ配信を目的とするレコメンドサービスの精度が向上する。
 10 位置情報ログ入力部
 11 行動パタン解析基準入力部
 20,50,60 行動パタン解析部
 21 クラスタリング空間プロット部
 22 滞留点クラスタ抽出部
 23 滞留点位置情報ログ除去部
 24 移動経路クラスタ抽出部
 25 進行方向距離係数演算部
 30 行動パタン記憶部
 31 滞留点パタン保存部
 32 移動経路パタン保存部
 40 移動ベクトル演算解析部
 41 移動ベクトル関数値演算部
 42 滞留・移動経路属性判定部

Claims (10)

  1.  利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出手段と、
     位置情報プロット手段がプロットした位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出手段と、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えた
     ことを特徴とする行動パタン解析装置。
  2.  位置情報プロット手段は、利用者の測位位置として緯度および経度を示す値を含む位置情報ログを、緯度、経度および時刻により規定される3次元空間上にプロットし、
     滞留点クラスタ抽出手段は、前記3次元空間において緯度および経度により規定される平面である緯度経度平面に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う
     請求項1記載の行動パタン解析装置。
  3.  位置情報プロット手段は、利用者の測位位置として緯度、経度および高度を示す値を含む位置情報ログを、緯度、経度、高度および時刻により規定される4次元空間上にプロットし、
     滞留点クラスタ抽出手段は、前記4次元空間において緯度、経度および高度により規定される空間である緯度経度高度空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行う
     請求項1記載の行動パタン解析装置。
  4.  利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出する移動ベクトル関数値算出手段と、
     前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定手段と、
     前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット手段と、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出する滞留点クラスタ抽出手段と、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出手段とを備えた
     ことを特徴とする行動パタン解析装置。
  5.  移動ベクトル関数値算出手段は、2つの位置情報ログ間の差分値として、測位位置間での進行方向を表す進行方向角度の差分値を算出し、
     位置情報プロット手段は、利用者の測位位置及び測位日時を含む位置情報ログに進行方向角度を加えたレコードを、測位位置を表す数値情報、時刻および前記進行方向角度により規定される多次元空間上にプロットし、
     移動経路クラスタ抽出手段は、前記移動経路属性を有すると判定された位置情報ログに進行方向角度を加えたレコードをクラスタリングすることにより、利用者の移動経路を抽出する
     請求項4記載の行動パタン解析装置。
  6.  2つの位置情報ログに基づいて、当該各位置情報ログが示す測位位置からの進行方向と、2つ位置情報ログが示す測位位置間を結ぶ方向とがなす角度の値が小さいほど値が小さくなる係数である進行方向距離係数を、前記位置情報ログごとに算出する進行方向距離係数算出手段を備え、
     移動経路クラスタ抽出手段は、位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、かつ、前記移動方向距離係数算出手段が算出した進行方向距離係数を前記ユークリッド距離に乗じることによる重み付けを行い、当該重み付けされた位置情報ログのうち非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する
     請求項4記載の行動パタン解析装置。
  7.  利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出し、
     前記多次元空間上にプロットされた位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出し、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する
     ことを特徴とする行動パタン解析方法。
  8.  利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出し、
     前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定し、
     前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットし、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出し、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する
     ことを特徴とする行動パタン解析方法。
  9.  コンピュータに、
     利用者の測位位置及び測位日時を含む情報である位置情報ログを、当該測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者が頻繁に滞留する位置である滞留点を抽出する滞留点クラスタ抽出処理、
     位置情報プロット処理でプロットされた位置情報ログから前記滞留点として抽出された位置情報ログを除いた位置情報ログの集合を非滞留点として抽出する非滞留点位置情報ログ抽出処理、および、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記非滞留点の位置情報ログに対して行い、重み付けされた位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理
     を実行させるための行動パタン解析プログラム。
  10.  コンピュータに、
     利用者の測位位置及び測位日時を含む情報である位置情報ログに含まれる当該測位日時順にソートされた隣接する2つの位置情報ログ間の差分値として、当該位置情報ログに含まれる前記測位日時の時間差、および、前記測位位置間の距離を算出する移動ベクトル関数値算出処理、
     前記測位日時の時間差及び測位位置間の距離に基づいて、前記位置情報ログの属性が、利用者が頻繁に滞留する位置である滞留点を示す滞留属性か、利用者の移動経路上の位置である非滞留点を示す非滞留属性かを判定する属性判定処理、
     前記位置情報ログを、前記測位位置を表す数値情報および時刻により規定される多次元空間上にプロットする位置情報プロット処理、
     前記多次元空間において前記測位位置を表す数値情報により規定される空間である位置情報空間に対する時刻方向のユークリッド距離が近いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、前記滞留点を抽出する滞留点クラスタ抽出処理、および、
     前記位置情報空間に対する時刻方向のユークリッド距離が遠いと判定されやすくなる重み付けを前記位置情報ログに対して行い、重み付けされた位置情報ログのうち前記非滞留属性を有すると判定された位置情報ログをクラスタリングすることにより、利用者の移動経路を抽出する移動経路クラスタ抽出処理
     を実行させるための行動パタン解析プログラム。
PCT/JP2012/000140 2011-01-14 2012-01-12 行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム WO2012096175A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/977,386 US9497584B2 (en) 2011-01-14 2012-01-12 Action pattern analysis device, action pattern analysis method, and action pattern analysis program
JP2012552685A JP5966930B2 (ja) 2011-01-14 2012-01-12 行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム
EP12734268.1A EP2664999A4 (en) 2011-01-14 2012-01-12 ACTIVITY DIAGRAM ANALYSIS UNIT, ACTIVITY DIAGRAM ANALYSIS METHOD, AND ACTIVITY DIAGRAM ANALYSIS PROGRAM

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2011006260 2011-01-14
JP2011-006260 2011-01-14
JP2011-109400 2011-05-16
JP2011109400 2011-05-16
JP2011-206345 2011-09-21
JP2011206345 2011-09-21

Publications (1)

Publication Number Publication Date
WO2012096175A1 true WO2012096175A1 (ja) 2012-07-19

Family

ID=46507082

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/000140 WO2012096175A1 (ja) 2011-01-14 2012-01-12 行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム

Country Status (4)

Country Link
US (1) US9497584B2 (ja)
EP (1) EP2664999A4 (ja)
JP (1) JP5966930B2 (ja)
WO (1) WO2012096175A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016515230A (ja) * 2013-02-06 2016-05-26 フェイスブック,インク. パターンのラベリング
JP2016515229A (ja) * 2013-02-06 2016-05-26 フェイスブック,インク. ルーチン逸脱の通知
JP2016537718A (ja) * 2013-11-07 2016-12-01 華為技術有限公司Huawei Technologies Co.,Ltd. 関心ポイントのクラスタリング方法及び関連する装置
JP2020107171A (ja) * 2018-12-28 2020-07-09 株式会社日立製作所 行動パタン分析支援装置、行動パタン分析支援システム及び行動パタン分析支援方法
WO2020166064A1 (ja) * 2019-02-15 2020-08-20 三菱電機株式会社 測位値分類装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566961B2 (en) * 2008-08-08 2013-10-22 Absolute Software Corporation Approaches for a location aware client
JP6140490B2 (ja) * 2013-03-19 2017-05-31 国立大学法人 東京大学 情報処理装置、情報処理方法及びプログラム
US10114148B2 (en) * 2013-10-02 2018-10-30 Nec Corporation Heterogeneous log analysis
CN105589875B (zh) * 2014-10-22 2019-10-25 方正国际软件(北京)有限公司 一种多轨迹绘制的方法及装置
US9282531B1 (en) * 2015-03-02 2016-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for localization of a device in an enclosed environment based on received signal strength levels
KR101647078B1 (ko) * 2015-06-23 2016-08-09 홍익대학교 산학협력단 자주 방문하는 장소를 판별하는 방법 및 이를 위한 장치
US10585933B2 (en) 2017-08-16 2020-03-10 International Business Machines Corporation System and method for classification of low relevance records in a database using instance-based classifiers and machine learning
CN111046895B (zh) * 2018-10-15 2023-11-07 北京京东振世信息技术有限公司 一种确定目标区域的方法和装置
CN110290467B (zh) * 2019-06-21 2020-08-04 清华大学 停留点、商业区服务范围、影响因素的获取方法及装置
CN110705510B (zh) * 2019-10-16 2023-09-05 杭州优频科技有限公司 一种动作确定方法、装置、服务器和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003076818A (ja) 2001-08-31 2003-03-14 Sony Corp 行動管理装置、行動管理システム、及び行動管理方法
JP2009116541A (ja) * 2007-11-05 2009-05-28 Ntt Docomo Inc 位置情報解析装置、情報配信システムおよび位置情報解析方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040016995A (ko) * 2001-07-16 2004-02-25 웨이브마켓 인코포레이티드 무선 통신 네트워크에서 이동국들에 경보 기반 서비스들을제공하는 시스템
US6975939B2 (en) * 2002-07-29 2005-12-13 The United States Of America As Represented By The Secretary Of The Army Mapping patterns of movement based on the aggregation of spatial information contained in wireless transmissions
US8478747B2 (en) * 2008-06-05 2013-07-02 Samsung Electronics Co., Ltd. Situation-dependent recommendation based on clustering
US20100153292A1 (en) * 2008-12-11 2010-06-17 Microsoft Corporation Making Friend and Location Recommendations Based on Location Similarities
US8612134B2 (en) * 2010-02-23 2013-12-17 Microsoft Corporation Mining correlation between locations using location history

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003076818A (ja) 2001-08-31 2003-03-14 Sony Corp 行動管理装置、行動管理システム、及び行動管理方法
JP2009116541A (ja) * 2007-11-05 2009-05-28 Ntt Docomo Inc 位置情報解析装置、情報配信システムおよび位置情報解析方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HIDEKI YOSHII ET AL.: "A Study on analyzing GPS-based Location Data Using Segment Velocity Technique", IEICE TECHNICAL REPORT, vol. 109, no. 39, 14 May 2009 (2009-05-14), pages 109 - 112, XP008170509 *
KAZUYA OKADA ET AL.: "Proposal of a Method for Extracting Points of Interest from User's Trajectory", IPSJ SIG NOTES, vol. 2008, no. 91, 26 September 2008 (2008-09-26), pages 89 - 94, XP008171039 *
See also references of EP2664999A4
SHINJI KAMI ET AL.: "Algorithm for Detecting Significant Locations from Raw GPS Data", 2010 NEN IEICE COMMUNICATIONS SOCIETY CONFERENCE KOEN RONBUNSHU, vol. 6332, 31 August 2010 (2010-08-31), pages 221 - 235, XP019155481 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016515230A (ja) * 2013-02-06 2016-05-26 フェイスブック,インク. パターンのラベリング
JP2016515229A (ja) * 2013-02-06 2016-05-26 フェイスブック,インク. ルーチン逸脱の通知
US10585961B2 (en) 2013-02-06 2020-03-10 Facebook, Inc. Pattern labeling
JP2016537718A (ja) * 2013-11-07 2016-12-01 華為技術有限公司Huawei Technologies Co.,Ltd. 関心ポイントのクラスタリング方法及び関連する装置
US10423728B2 (en) 2013-11-07 2019-09-24 Huawei Technologies Co., Ltd. Clustering method for a point of interest and related apparatus
JP2020107171A (ja) * 2018-12-28 2020-07-09 株式会社日立製作所 行動パタン分析支援装置、行動パタン分析支援システム及び行動パタン分析支援方法
JP7343973B2 (ja) 2018-12-28 2023-09-13 株式会社日立製作所 行動パタン分析支援装置、行動パタン分析支援システム及び行動パタン分析支援方法
WO2020166064A1 (ja) * 2019-02-15 2020-08-20 三菱電機株式会社 測位値分類装置
JPWO2020166064A1 (ja) * 2019-02-15 2021-05-20 三菱電機株式会社 測位値分類装置
JP7076589B2 (ja) 2019-02-15 2022-05-27 三菱電機株式会社 測位値分類装置

Also Published As

Publication number Publication date
JPWO2012096175A1 (ja) 2014-06-09
JP5966930B2 (ja) 2016-08-10
EP2664999A1 (en) 2013-11-20
US20130273937A1 (en) 2013-10-17
US9497584B2 (en) 2016-11-15
EP2664999A4 (en) 2015-01-28

Similar Documents

Publication Publication Date Title
WO2012096175A1 (ja) 行動パタン解析装置、行動パタン解析方法および行動パタン解析プログラム
CN109003028B (zh) 用于划分物流区域的方法和装置
US9392463B2 (en) System and method for detecting anomaly in a handheld device
Soh et al. Adaptive deep learning-based air quality prediction model using the most relevant spatial-temporal relations
US10133938B2 (en) Apparatus and method for object recognition and for training object recognition model
US10748121B2 (en) Enriching calendar events with additional relevant information
US9208220B2 (en) Method and apparatus of text classification
US20140164390A1 (en) Mining trajectory for spatial temporal analytics
US20120148102A1 (en) Mobile body track identification system
Koo et al. PDR/fingerprinting fusion indoor location tracking using RSS recovery and clustering
CN110533055A (zh) 一种点云数据的处理方法和装置
JP2014132711A (ja) 複数の測位方式に基づく移動端末の位置情報から対象エリアを特定するエリア管理サーバ、プログラム及び方法
CN111475746B (zh) 兴趣点位置挖掘方法、装置、计算机设备和存储介质
CN110730207B (zh) 基于位置服务的位置识别方法、装置、设备及存储介质
US11006238B1 (en) Method for profiling based on foothold and terminal using the same
CN111476059A (zh) 目标检测方法、装置、计算机设备及存储介质
CN107038593B (zh) 一种基于防伪溯源***的异常数据处理方法及***
CN116610849A (zh) 获取轨迹相似的移动对象的方法、装置、设备及存储介质
CN111667920B (zh) 一种基于定位数据的人群密切接触排查方法
Alim et al. Sampling-based estimation method for parameter estimation in big data business era
CN111563137B (zh) 一种用于重合轨迹的分析方法和***
CN113284337A (zh) 基于车辆轨迹多维数据的od矩阵计算方法及装置
WO2012169152A1 (ja) 移動目的地予測装置、移動目的地予測方法および移動目的地予測プログラム
Gupta et al. Svad: End-to-end sensory data analysis for iobt-driven platforms
Arslan et al. Using spatio-temporal trajectories to monitor construction sites for safety management

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2012552685

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2012734268

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012734268

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 13977386

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE