JP2010186256A - Sequential clustering device, method thereof, and program - Google Patents

Sequential clustering device, method thereof, and program Download PDF

Info

Publication number
JP2010186256A
JP2010186256A JP2009028945A JP2009028945A JP2010186256A JP 2010186256 A JP2010186256 A JP 2010186256A JP 2009028945 A JP2009028945 A JP 2009028945A JP 2009028945 A JP2009028945 A JP 2009028945A JP 2010186256 A JP2010186256 A JP 2010186256A
Authority
JP
Japan
Prior art keywords
cluster
point data
nucleus
new
point
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2009028945A
Other languages
Japanese (ja)
Other versions
JP5153677B2 (en
Inventor
Masaaki Nishino
正彬 西野
Tomohiro Yamada
智広 山田
Shunichi Seko
俊一 瀬古
Manabu Mogi
学 茂木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009028945A priority Critical patent/JP5153677B2/en
Publication of JP2010186256A publication Critical patent/JP2010186256A/en
Application granted granted Critical
Publication of JP5153677B2 publication Critical patent/JP5153677B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To sequentially perform a DBSCAN algorithm by clustering. <P>SOLUTION: Two kinds of processing are performed in cluster updating, i.e., processing for checking whether a point to be newly a cluster nucleus exists or not among a newly added point p and the adjacent points, and processing for generating the new cluster when the point to be the cluster nucleus exists and integrating existing clusters. Specifically, the aggregation of the point p to be sequentially given and the points included in the ε-neighborhood is given as an input (S22), and it is checked whether the number of the points included in the ε-neighborhood is equal to or more than N or not (S23). When the number is N or more, the point p becomes the cluster nucleus, and the process proceeds to cluster updating portion processing 1 (S24). Then, a cluster nucleus mark is given to the point p, a new cluster ID is issued, and the cluster ID is given to the point p. When the number is N or less, the point p is not the cluster nucleus, so that the process proceeds to cluster updating portion processing 2 (S25). Then, cluster nucleus mark exchange processing is performed. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、例えばGPS(Global Positioning System)等を利用することによって得られるユーザ位置情報から、当該ユーザが滞在している場所をリアルタイムに判定する処理に利用される逐次クラスタリング装置とその方法及びプログラムに関する。   The present invention relates to a sequential clustering apparatus, a method, and a program for use in processing for determining, in real time, a place where the user is staying from user position information obtained by using, for example, GPS (Global Positioning System) About.

GPS等を用いて一定時間間隔で取得されたユーザの位置を示す座標データ(以下、本明細書において点データと総称する)から、クラスタリングによってユーザが滞在した場所を抽出する処理が提案されている。このようなアルゴリズムのひとつとしてDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムが利用されており、効果をあげている。DBSCANアルゴリズムの特性として、ノイズを含むデータに強い、クラスタの形状に依存しないなどの点が挙げられる。   A process for extracting a place where a user stayed by clustering from coordinate data (hereinafter, collectively referred to as point data in this specification) indicating the position of the user acquired at regular time intervals using GPS or the like has been proposed. . As one of such algorithms, a DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm is used, which is effective. The characteristics of the DBSCAN algorithm include that it is strong against data including noise and does not depend on the shape of the cluster.

しかしながら、既存のDBSCANアルゴリズムには、その逐次的な実行方法が示されていない。そのため、点データが逐次的に得られる状況で、得られた点データに対して常に最新のクラスタリング結果を得ようとした場合、新しく点データが得られるごとに、現在までに得られた全ての点データに対してクラスタリング処理を再実行しなければならない。この処理には計算コストがかかるため、リアルタイムで入力データが得られる状況でユーザの滞在地を知るような処理には不向きである。   However, the existing DBSCAN algorithm does not show the sequential execution method. Therefore, in the situation where the point data is obtained sequentially, when trying to always obtain the latest clustering result for the obtained point data, every time point data is newly obtained, all the points obtained so far Clustering processing must be re-executed for point data. Since this processing is computationally expensive, it is not suitable for processing where the user's place of stay is known in a situation where input data can be obtained in real time.

Martin Ester, Hans-Peter Kriegel, Jorg Sander, Xiaowei Xu, "A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise", ACM KDD‘96Martin Ester, Hans-Peter Kriegel, Jorg Sander, Xiaowei Xu, "A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise", ACM KDD'96 Brett Adams, Dinh Phung, and Svetha Venkatesh, "Extraction of Social Context and Application to Personal Multimedia Exploration", ACM MM'06Brett Adams, Dinh Phung, and Svetha Venkatesh, "Extraction of Social Context and Application to Personal Multimedia Exploration", ACM MM'06

以上のように、既存のDBSCANアルゴリズムには、その逐次的な実行方法が示されていないため、入力データが逐次的に得られる状況で、得られたデータに対して常に最新のクラスタリング結果を得る場合には、新しくデータが得られるごとに現在までに得られた全てのデータに対してクラスタリング処理を再実行しなければならない。   As described above, since the existing DBSCAN algorithm does not show the sequential execution method, the latest clustering result is always obtained for the obtained data in a situation where the input data is obtained sequentially. In some cases, every time new data is obtained, the clustering process must be re-executed on all the data obtained up to now.

本発明は、上記の事情を鑑みてなされたもので、逐次的にデータが得られる状況でクラスタリングによるDBSCANアルゴリズムを逐次的に実行する際の計算コストを削減することのできる逐次クラスタリング装置とその方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above circumstances, and a sequential clustering apparatus and method capable of reducing the calculation cost when sequentially executing the DBSCAN algorithm by clustering in a situation where data is sequentially obtained. And to provide a program.

上記目的を達成するために本発明に係る逐次クラスタリング装置、逐次クラスタリング方法、逐次クラスタリングプログラムは以下のような態様の構成とする。   In order to achieve the above object, the sequential clustering apparatus, sequential clustering method, and sequential clustering program according to the present invention are configured as follows.

(1)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング装置であって、過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定する判定手段と、前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する更新手段とを備える構成とする。   (1) Under a situation in which new point data is sequentially obtained, each time the new point data is input, clustering processing is performed in which neighboring point data within a certain distance range is set as a cluster unit with a certain point data as a nucleus. A sequential clustering apparatus that executes a DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm, which accumulates a cluster structure that has been subjected to past clustering processing, and is stored when the new point data is input. The existing cluster structure is updated to the new point data, and when the new point data is input, the new point data becomes the nucleus of the cluster or the new point data A determination means for determining whether the neighboring point data becomes a cluster nucleus, and based on the result of the determination, the existing cluster structure The for new point data and its neighboring point data, the emergence of new cluster, extension of existing cluster, coupling between clusters, configured to and a determination to update updating means the occurrence of any change in.

(2)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング方法であって、過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する構成とする。   (2) Under a situation in which new point data is sequentially obtained, each time the new point data is input, clustering processing is performed in which neighboring point data in a certain distance range is set as a cluster unit with a certain point data as a nucleus. A sequential clustering method that executes a DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm, which accumulates a cluster structure that has been clustered in the past and stores the new point data when it is input. The existing cluster structure is updated to the new point data, and when the new point data is input, the new point data becomes the nucleus of the cluster or the new point data It is determined whether neighboring point data becomes a cluster nucleus, and based on the result of the determination, the new cluster structure is added to the new cluster structure. For point data and its neighboring point data, the emergence of new cluster, extension of existing cluster, coupling between clusters, a configuration in which to determine the occurrence of any change in the update.

(3)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムをコンピュータに実行させるための逐次クラスタリングプログラムであって、過去のクラスタリング処理されたクラスタ構造を蓄積してする蓄積処理と、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新する処理を備え、前記更新処理は、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、前記判定処理の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する構成とする。   (3) Under a situation in which new point data is sequentially obtained, each time the new point data is input, clustering processing is performed in which neighboring point data within a certain distance range with a certain point data as a nucleus is a cluster unit. A sequential clustering program for causing a computer to execute a DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm, which stores a cluster structure obtained by past clustering processing and the new point data A process of updating an existing cluster structure that has been accumulated in accordance with new point data when input, and the update process is performed when the new point data is input when the new point data is input. It is determined whether it becomes a cluster nucleus or the neighboring point data of the new point data becomes a cluster nucleus. Based on the result of the above, with respect to the existing cluster structure, with respect to the new point data and its neighboring point data, any of the appearance of a new cluster, the expansion of the existing cluster, and the connection between clusters occurs. Is determined and updated.

すなわち、本発明に係る逐次クラスタリング装置、方法、プログラムでは、クラスタリングによるDBSCANアルゴリズムを逐次的に実行する手法として、新たな点データが逐次的に得られる状況で、毎回それまでに得られた全ての点データを入力としてDBSCANアルゴリズムを再実行するのではなく、前回の計算で得られたクラスタ結果を新たな点データに合わせて更新することで新しいクラスタを得るようにしている。この手法を用いることで、逐次的に点データが得られる状況でクラスタリングを実行する計算コストが削減される。   That is, in the sequential clustering apparatus, method, and program according to the present invention, as a method for sequentially executing the DBSCAN algorithm by clustering, all the points obtained so far are obtained in a situation where new point data is sequentially obtained. Instead of re-executing the DBSCAN algorithm with point data as an input, a new cluster is obtained by updating the cluster result obtained in the previous calculation in accordance with the new point data. By using this method, the calculation cost for executing clustering in a situation where point data is obtained sequentially can be reduced.

手法のポイントは、新たな点データが追加されるときに起こりうる変化として、(1)新しく追加された点がいずれかのクラスタに含まれる、(2)新しく追加された点がクラスタ核になる、(3)新しく追加された点の近傍の点がクラスタ核になる、(4)新しく追加された点がNOISE(雑音)になる、の4種類のみに限定されることに着目したことである。これらのうち既存のクラスタの構造の変化を引き起こす可能性があるのは(2)、(3)のみである。これらの変化が生じた場合、既存のクラスタの構造に対して、(a)新しいクラスタの出現、(b)既存のクラスタの拡張、(C)クラスタ間の結合、のいずれかが発生する可能性があるため、これらの変化の発生を調べる。いずれの処理も追加した点の近傍のみを調べることで行うことができるため、更新の範囲が局所的なものにすることができ、計算コストの削減になる。   The points of the method are as follows: (1) The newly added point is included in any cluster as a possible change when new point data is added. (2) The newly added point becomes the cluster nucleus. (3) The point near the newly added point becomes the cluster nucleus, and (4) The newly added point becomes NOISE (noise). . Of these, only (2) and (3) can cause changes in the structure of existing clusters. When these changes occur, either (a) the appearance of a new cluster, (b) the expansion of an existing cluster, or (C) the joining between clusters may occur against the structure of the existing cluster. So examine the occurrence of these changes. Since both processes can be performed by examining only the vicinity of the added point, the update range can be made local, and the calculation cost can be reduced.

本発明によれば、逐次的に点データが得られる状況でクラスタリングによるDBSCANアルゴリズムを逐次的に実行する際の計算コストを削減することのできる逐次クラスタリング装置とその方法及びプログラムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, the sequential clustering apparatus which can reduce the calculation cost at the time of performing the DBSCAN algorithm by clustering sequentially in the situation where point data are obtained sequentially, its method, and a program can be provided. .

本発明に係る逐次クラスタリング装置の一実施形態とするユーザ位置判定システムの全体構成を示すブロック図。1 is a block diagram showing an overall configuration of a user position determination system as an embodiment of a sequential clustering apparatus according to the present invention. 上記実施形態の位置データの例を示す図。The figure which shows the example of the position data of the said embodiment. 上記実施形態のクラスタデータの例を示す図。The figure which shows the example of the cluster data of the said embodiment. 上記実施形態のID変換テーブルの例を示す図。The figure which shows the example of the ID conversion table of the said embodiment. 上記実施形態において、装置全体の処理の流れを示すフローチャート。In the said embodiment, the flowchart which shows the flow of a process of the whole apparatus. 図5の逐次クラスタリング処理の流れを示すフローチャート。6 is a flowchart showing a flow of sequential clustering processing of FIG. 図6の近傍位置データ取得処理の流れを示すフローチャート。The flowchart which shows the flow of the proximity position data acquisition process of FIG. 図6のクラスタ更新処理の流れを示すフローチャート。The flowchart which shows the flow of the cluster update process of FIG. 図7のクラスタ部分更新処理1の流れを示すフローチャート。The flowchart which shows the flow of the cluster partial update process 1 of FIG. 図9のクラスタ部分更新処理1−1の流れを示すフローチャート。The flowchart which shows the flow of the cluster partial update process 1-1 of FIG. 図7のクラスタ部分更新処理2の流れを示すフローチャート。The flowchart which shows the flow of the cluster partial update process 2 of FIG. 図11のクラスタ部分更新処理2−1の流れを示すフローチャート。The flowchart which shows the flow of the cluster partial update process 2-1 of FIG.

以下、図面を参照して本発明の実施の形態を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は本発明に係る逐次クラスタリング装置を利用したユーザ位置判定システムの全体構成を示すブロック図である。このシステムは、入力部11、記録部12、処理部13、出力部14から構成される。   FIG. 1 is a block diagram showing the overall configuration of a user position determination system using a sequential clustering apparatus according to the present invention. This system includes an input unit 11, a recording unit 12, a processing unit 13, and an output unit 14.

入力部11はGPS受信機等によって得られる位置情報を逐次入力するための位置情報逐次入力手段111を備える。この入力手段11は、逐次的に与えられ、二次元の座標をもつ点として表される位置データを取り込んで、順次記録部12の位置データ記録手段121に送信する。   The input unit 11 includes position information sequential input means 111 for sequentially inputting position information obtained by a GPS receiver or the like. The input means 11 takes in position data given sequentially and represented as a point having two-dimensional coordinates, and sequentially transmits it to the position data recording means 121 of the recording unit 12.

記録部12は位置データ記録手段121、クラスタリング結果記録手段122、クラスタID変換テーブル記録手段123を備える。   The recording unit 12 includes position data recording means 121, clustering result recording means 122, and cluster ID conversion table recording means 123.

位置データ記録手段121は、入力部11から送信される位置データを随時受け取って記録する。位置データは、図2に示す例のように、記録部12に入力された順に付与される入力データIDをそれぞれの座標を対応付けた形式で保持される。一度記録されたデータが修正されることはない。   The position data recording unit 121 receives and records the position data transmitted from the input unit 11 as needed. As in the example shown in FIG. 2, the position data is held in a format in which input data IDs given in the order of input to the recording unit 12 are associated with respective coordinates. Once recorded, the data is never modified.

クラスタリング結果記録手段122は、位置データ記録手段121に記録されている位置データを処理部13の逐次クラスタリング処理手段131に適用することによって得られた出力を格納する。クラスタリング結果記録手段122によって記録されるクラスタデータの例を図3に示す。   The clustering result recording unit 122 stores an output obtained by applying the position data recorded in the position data recording unit 121 to the sequential clustering processing unit 131 of the processing unit 13. An example of cluster data recorded by the clustering result recording means 122 is shown in FIG.

図3に示すクラスタデータでは、テーブルの1列目と2列目によって、各入力データIDに、それぞれの点がどのクラスタに属するかを示すクラスタIDを対応付けている。例えば、入力データID1と3が示す点が、同じクラスタ(クラスタID1)に属することを示している。一般にクラスタリングアルゴリズムとは、入力データに対してそれが属するクラスタを割り振るものである。DBSCANアルゴリズムに特有の概念として、入力された点の中にはいずれのクラスタにも属さないものもあり、そのような点にはNOIZEという特別なIDが与えられる。   In the cluster data shown in FIG. 3, the cluster ID indicating which cluster each point belongs to is associated with each input data ID in the first and second columns of the table. For example, the points indicated by the input data IDs 1 and 3 indicate that they belong to the same cluster (cluster ID 1). In general, a clustering algorithm assigns a cluster to which input data belongs to input data. As a concept unique to the DBSCAN algorithm, some input points do not belong to any cluster, and a special ID of NOIZE is given to such points.

図3のテーブルの3列目にはその点がクラスタ核かどうかを示すフラグが保持される。ここで、ある点がクラスタ核であるとは、「その点の座標を中心として、距離があるしきい値以内(以下、εとする)にN点以上の点が存在すること」と定義する。ここで、ある点pから距離ε以内にある点の集合を「点pのε-近傍」と定義する。クラスタ核はDBSCANアルゴリズムにおいて中心となる概念である。DBSCANアルゴリズムはクラスタ核である点とその近傍、さらに近傍に別のクラスタ核が含まれるならば、さらにその近傍を…として、クラスタ核の近傍を一つのクラスタとしてクラスタリングを行う手法である(DBSCANの詳細については非特許文献1を参照)。   In the third column of the table of FIG. 3, a flag indicating whether or not the point is a cluster nucleus is held. Here, a certain point is a cluster nucleus is defined as “there are N or more points within a certain threshold (hereinafter referred to as ε) centered on the coordinates of the point”. . Here, a set of points within a distance ε from a certain point p is defined as “ε-near point p”. The cluster nucleus is a central concept in the DBSCAN algorithm. The DBSCAN algorithm is a method of performing clustering by using a cluster nucleus as a cluster if a point that is a cluster nucleus and its vicinity, and if another cluster nucleus is included in the vicinity, and the vicinity of the cluster nucleus as one cluster. For details, see Non-Patent Document 1.)

クラスタID変換テーブル記録手段123は、逐次クラスタリング処理を実行する過程で、異なるクラスタの統合が発生した場合に、それらのクラスタIDが同じクラスタを表すという情報を保管するためのものである。具体的には、図4に示すようなテーブルが保管されている。   The cluster ID conversion table recording unit 123 stores information that the cluster IDs represent the same cluster when integration of different clusters occurs during the sequential clustering process. Specifically, a table as shown in FIG. 4 is stored.

図4のテーブルはもとのクラスタIDと、そのクラスタIDと同じクラスタを表すクラスタIDとの対応関係が保持されている。この例では、例えばクラスタID2をもつクラスタは、クラスタID3をもつクラスタと等しく、さらにクラスタID5をもつクラスタと等しいとされる。また、ある単一のクラスタに対して発行された複数のクラスタIDのうち、最後に発行されたものをそのクラスタの代表IDとする。   The table in FIG. 4 holds the correspondence between the original cluster ID and the cluster ID representing the same cluster as the cluster ID. In this example, for example, the cluster having the cluster ID 2 is equal to the cluster having the cluster ID 3 and further equal to the cluster having the cluster ID 5. Further, among a plurality of cluster IDs issued for a single cluster, the last issued ID is used as the representative ID of the cluster.

クラスタIDは、1,2,3,…と順に発行されるものとすると、あるクラスタの代表IDは、そのクラスタに対して発行されたクラスタIDのうち最大のものとなる。クラスタID変換テーブルには、常にあるIDからそれよりも大きなIDへの変換を登録するようにする。この結果として、任意のクラスタIDを入力として複数回テーブルを参照することで、対応するクラスタの代表IDを知ることができる。図4のテーブルでは、クラスタID4に対応するクラスタの代表IDはID7であるが、ID4でテーブルを検索してID6を獲得し、さらにID6で再度テーブルを検索することで代表ID7を得ることができる。   Assuming that the cluster IDs are issued in order of 1, 2, 3,..., The representative ID of a certain cluster is the largest of the cluster IDs issued for that cluster. In the cluster ID conversion table, conversion from an ID to an ID larger than that is always registered. As a result, it is possible to know the representative ID of the corresponding cluster by referring to the table a plurality of times with an arbitrary cluster ID as an input. In the table of FIG. 4, the representative ID of the cluster corresponding to the cluster ID 4 is ID7. However, the representative ID7 can be obtained by searching the table with ID4 to obtain ID6 and then searching the table again with ID6. .

処理部13は逐次クラスタリング処理手段131を備える。この逐次クラスタリング処理手段131は、位置データ記憶手段121から新しく与えられた入力と、クラスタリング結果記憶手段122から与えられたある時点でのクラスタリング結果を受け取り、入力が与えられた後のクラスタリング結果を出力する。   The processing unit 13 includes sequential clustering processing means 131. The sequential clustering processing unit 131 receives the input newly given from the position data storage unit 121 and the clustering result at a certain point given from the clustering result storage unit 122, and outputs the clustering result after the input is given. To do.

出力部14はクラスタ出力手段141を備える。このクラスタ出力手段141は、記録部13よりクラスタリング結果を受け取り、それを出力する。   The output unit 14 includes cluster output means 141. The cluster output unit 141 receives the clustering result from the recording unit 13 and outputs it.

上記システムの処理全体の処理の流れを、図5に示すフローチャートを参照して説明する。   The overall process flow of the system will be described with reference to the flowchart shown in FIG.

処理開始が指示されると(ステップS1)、入力部11から入力されるデータを待機し(ステップS2)、新しい入力があるまでは、ステップS3の判定によってステップS2に遷移して待機状態となる。新たに入力が得られたときにステップS4に遷移する。ステップS4では逐次クラスタリング処理を実行する。この処理のフローについては後述する。   When the process start is instructed (step S1), the data input from the input unit 11 is waited (step S2), and until there is a new input, the process transits to step S2 according to the determination of step S3 and enters a standby state. . When a new input is obtained, the process proceeds to step S4. In step S4, a sequential clustering process is executed. The flow of this process will be described later.

ステップS5で逐次クラスタリング処理によって得られたクラスタリング結果を記録し、ステップS6でクラスタリング結果を出力部14に記録する。ステップS7で引き続きデータが入力されるかどうかを判断し、入力されると判断されるならばデータ入力の待機状態(ステップS2)に戻る。ステップS7で入力はないと判断された場合には、一連の処理を終了する(ステップS8)。   The clustering result obtained by the sequential clustering process is recorded in step S5, and the clustering result is recorded in the output unit 14 in step S6. In step S7, it is determined whether or not data is continuously input. If it is determined that data is input, the process returns to a data input standby state (step S2). If it is determined in step S7 that there is no input, the series of processing ends (step S8).

次に、図5の全体処理フローのステップS4で用いられる逐次クラスタリング処理について、図6に示すフローチャートを参照して説明する。   Next, the sequential clustering process used in step S4 of the overall process flow of FIG. 5 will be described with reference to the flowchart shown in FIG.

処理開始が指示されると(ステップS11)、ステップS12,S13で、新しく与えられた入力データおよび既にクラスタリングを行った結果をロードする。ここで、新しく入力されたデータをpとする。ステップS14で新しく入力されたデータpを引数として、近傍位置データ取得処理を実行する。この近傍位置データ取得処理は、位置データ記録手段121に記録されている点のうち、点pのε-近傍に含まれる点を全て取得する処理である。詳細は後述する。ステップS15で、pのクラスタIDの初期値としてNOIZEを与える。その後、ステップS16でクラスタ更新処理を行って一連の処理を終了する(ステップS17)。   When the process start is instructed (step S11), newly given input data and the result of already clustering are loaded in steps S12 and S13. Here, let p be the newly input data. In step S14, the neighboring position data acquisition process is executed using the newly input data p as an argument. This proximity position data acquisition process is a process for acquiring all the points included in the ε- vicinity of the point p among the points recorded in the position data recording unit 121. Details will be described later. In step S15, NOIZE is given as the initial value of the cluster ID of p. Thereafter, the cluster update process is performed in step S16, and the series of processes is terminated (step S17).

上記ステップS14の近傍位置データ取得処理について、図7に示すフローチャートを参照して説明する。   The proximity position data acquisition process in step S14 will be described with reference to the flowchart shown in FIG.

まず、処理開始が指示されると(ステップS101)、ステップS102で入力として与えられた点を受け取り、ステップS103で記録部12に蓄積されている位置データを読み込む。ステップS104で、S103で読み込んだ位置データのうち、S102で入力として与えられた点のε-近傍に含まれる点を全て取得する。近傍の点の取得には、[非特許文献1]と同様に、予め点を空間データの高速な検索に適したデータ構造であるR - Treeという形式で、位置データ記録手段121によって記録しておくことによって、処理時間の削減を図る。ステップS105で取得した点を出力して一連の処理を終了する(ステップS106)。   First, when an instruction to start processing is given (step S101), the point given as an input in step S102 is received, and the position data stored in the recording unit 12 is read in step S103. In step S104, all the points included in the ε- vicinity of the point given as input in S102 are acquired from the position data read in S103. For the acquisition of nearby points, as in [Non-Patent Document 1], points are recorded in advance by the position data recording means 121 in the form of R-Tree, which is a data structure suitable for high-speed search of spatial data. To reduce the processing time. The point acquired in step S105 is output, and the series of processing ends (step S106).

上記クラスタ更新処理S16について図8に示すフローチャートを参照して説明する。前述したように、クラスタ更新は新しく追加された点pとその近傍の点のうち、新しくクラスタ核になる点があるかどうかを調べる処理と、クラスタ核になる点があった場合に新しいクラスタの生成、既存クラスタ間の統合を行う処理の2つの処理を行うことで成される。図8の処理では、新しく追加した点pがクラスタ核となるかどうかを調べ、それぞれの場合に対して異なる処理を実行する。   The cluster update process S16 will be described with reference to the flowchart shown in FIG. As described above, the cluster update is performed by checking whether there is a new cluster nucleus among the newly added point p and its neighboring points, and if there is a cluster nucleus point, the new cluster is updated. This is done by performing two processes: generation and integration between existing clusters. In the process of FIG. 8, it is checked whether or not the newly added point p becomes a cluster nucleus, and a different process is executed for each case.

まず、処理開始が指示されると(ステップS21)、ステップS22で点pとそのε-近傍に含まれる点の集合を入力として与える。そして、ステップS23で、ε-近傍に含まれる点の数がN以上かどうかを調べる。N以上であった場合には、pはクラスタ核となるため、ステップS24のクラスタ更新部分処理1に進む。N以下の場合はpはクラスタ核ではないため、ステップS25のクラスタ更新部分処理2に進む。分岐した先のS24、S25のどちらかの処理が終了したとき、一連の処理を終了する(ステップS26)。   First, when a process start is instructed (step S21), a point p and a set of points included in the vicinity of ε− are given as inputs in step S22. In step S23, it is checked whether the number of points included in the vicinity of ε− is N or more. If it is N or more, since p becomes a cluster nucleus, the process proceeds to the cluster update partial process 1 in step S24. If N or less, since p is not a cluster nucleus, the process proceeds to the cluster update partial process 2 in step S25. When one of the processes at the branch destinations S24 and S25 ends, the series of processes ends (step S26).

上記ステップS24のクラスタ更新部分処理1について、図9に示すフローチャートを参照して説明する。この処理は、新しく入力された点pがクラスタ核であった場合の更新処理である。まず、処理開始が指示されると(ステップS32)、ステップS32で点pとpのε-近傍の点を入力する。ステップS33でpにクラスタ核マークを与え、ステップS34で新しいクラスタIDを発行して、点pにそのクラスタIDを与える。新しいクラスタIDを発行することは、点pを中心とした新しいクラスタが形成されることを意味する。   The cluster update partial process 1 in step S24 will be described with reference to the flowchart shown in FIG. This process is an update process when the newly input point p is a cluster nucleus. First, when an instruction to start the process is given (step S32), points p and p in the vicinity of ε − are input in step S32. In step S33, a cluster nucleus mark is given to p, a new cluster ID is issued in step S34, and the cluster ID is given to the point p. Issuing a new cluster ID means that a new cluster around the point p is formed.

ステップS35〜S40で、pのε-近傍に含まれる各点に対して順に更新を行う。ε-近傍に含まれるある点をqとして、以下qの更新手順を説明する。更新の内容は、まずその点qが既にクラスタ核であるかどうかによって分岐する。すなわち、ステップS36でqがクラスタ核かどうかを判定し、クラスタ核だった場合にはステップS37へ遷移し、そうでなかった場合はS39へ遷移する。ステップS37、S38でID変換テーブルを用いて、qをクラスタ核とするクラスタとpをクラスタ核とするクラスタとが等しいクラスタであることを登録している。具体的には、ステップS37でqが表すクラスタの代表IDを獲得し、ステップS38でクラスタID変換テーブルに、qの代表IDからpのクラスタIDへの変換を登録する。pのクラスタIDは今回の処理で新たに発行されたものなので、必ずqの代表IDよりも大きい。qがクラスタ核でなかった場合には、ステップS39でクラスタ更新部分処理1−1に遷移する。ステップS38またはS39の処理が終了した場合には、ステップS40でpの近傍の点がまだあるか判断し、ある場合にはステップS35に遷移し、ない場合には一連の処理を終了する(ステップS41)。   In steps S35 to S40, each point included in the ε- vicinity of p is updated in order. An update procedure of q will be described below, where q is a point included in the ε- vicinity. The contents of the update are first branched depending on whether the point q is already a cluster nucleus. That is, it is determined in step S36 whether q is a cluster nucleus. If it is a cluster nucleus, the process proceeds to step S37, and if not, the process proceeds to S39. In steps S37 and S38, the ID conversion table is used to register that the cluster having q as the cluster nucleus and the cluster having p as the cluster nucleus are equal. Specifically, the representative ID of the cluster represented by q is acquired in step S37, and the conversion from the representative ID of q to the cluster ID of p is registered in the cluster ID conversion table in step S38. Since the cluster ID of p is newly issued in this processing, it is always larger than the representative ID of q. If q is not a cluster nucleus, the process proceeds to the cluster update partial process 1-1 in step S39. When the process of step S38 or S39 is completed, it is determined in step S40 whether there is still a point in the vicinity of p. If there is a point, the process proceeds to step S35. S41).

上記ステップS39のクラスタ更新部分処理1−1について、図10に示すフローチャートを参照して説明する。このクラスタ更新部分処理1−1では、新たに追加した点pの近傍の点のうち、事前にクラスタ核でなかった点を対象として、その点が新たなクラスタ核になるかどうかを調べる。その後、新たなクラスタ核になった場合には、その周囲に結合するクラスタが存在するかどうかを調べる。クラスタ核にならなかった場合には、pと同じクラスタIDを与える。   The cluster update partial process 1-1 in step S39 will be described with reference to the flowchart shown in FIG. In this cluster update partial process 1-1, it is examined whether or not a point that is not a cluster nucleus in advance among the points near the newly added point p is a new cluster nucleus. After that, when a new cluster nucleus is formed, it is checked whether or not there is a cluster to be bound around it. If it does not become a cluster nucleus, the same cluster ID as p is given.

まず、処理開始が指示されると(ステップS51)、ステップS52で、入力として更新対象の点であり、かつクラスタ核でない点qを入力として受け取る。ステップS53で、近傍位置データ取得処理によって、点qのε-近傍の点を全て取得する。ステップS54でε-近傍のサイズがしきい値を超えているかを調べる。しきい値を超えている場合にはqが新たにクラスタ核となり、ステップS55に遷移する。ステップS55でqをクラスタ核として登録し、そのクラスタIDとしてpと同じクラスタIDを付与する。これは、pとqの距離がε以下であるため、必ず同じクラスタとなるためである。   First, when a process start is instructed (step S51), in step S52, a point q that is an update target point and is not a cluster nucleus is received as an input. In step S53, all the points near ε− of the point q are obtained by the neighborhood position data obtaining process. In step S54, it is checked whether the size in the vicinity of ε− exceeds the threshold value. If the threshold value is exceeded, q becomes a new cluster nucleus, and the process proceeds to step S55. In step S55, q is registered as a cluster nucleus, and the same cluster ID as p is assigned as the cluster ID. This is because the distance between p and q is equal to or less than ε, so that the same cluster is always obtained.

ステップS56〜S61で、qのε-近傍に含まれる各点について更新を行う。まず、qのε-近傍の点からpのε-近傍でない点を1つ選択してrとし(ステップS56)、そのε-近傍に含まれる点rがクラスタ核であるか判定し(ステップS57)、点rがクラスタ核であった場合、qとrが表すクラスタが等しいことを登録する(ステップS58,S59)。点rがクラスタ核でなかった場合には、rにpのクラスタIDを付与する(ステップS60)。ここで、ステップS61で近傍の点がまだ存在するかを判断し(ステップS61)、存在する場合にはステップS56に遷移し、存在しない場合には一連の処理を終了する(ステップS63)。一方、ステップS54でqがクラスタ核にならなかった場合には、qはpをクラスタ核とするクラスタと同じクラスタであるとして、pのクラスタIDをqに与え(ステップS62)、一連の処理を終了する(ステップS63)。   In steps S56 to S61, each point included in the ε- vicinity of q is updated. First, one point that is not in the ε- neighborhood of p is selected from the points in the ε- neighborhood of q and set as r (step S56), and it is determined whether the point r included in the ε- neighborhood is a cluster nucleus (step S57). ) If the point r is a cluster nucleus, it is registered that the clusters represented by q and r are equal (steps S58 and S59). If the point r is not a cluster nucleus, a cluster ID of p is assigned to r (step S60). Here, in step S61, it is determined whether or not a nearby point still exists (step S61). If it exists, the process proceeds to step S56, and if it does not exist, a series of processing ends (step S63). On the other hand, if q does not become a cluster nucleus in step S54, q is given to q as the same cluster as a cluster having p as a cluster nucleus (step S62), and a series of processing is performed. The process ends (step S63).

次に、上記ステップS25のクラスタ更新部分処理2について、図11に示すフローチャートを参照して説明する。この処理は、図8のクラスタ更新処理のステップS23で、追加された点がクラスタ核でないと判定されたときの処理に相当する。まず、処理開始が指示されると(ステップS71)、ステップS72で点pとそのε-近傍の点の集合を入力として受け取る。ステップS73〜S79でpのε-近傍に含まれる各点に対して更新を行う。以下、qをε-近傍のひとつの点として説明する。ステップS73でqの更新対象マークを消したのち、ステップS74でqがクラスタ核かどうかを調べる。クラスタ核であったならばステップS75に、そうでなければステップS78に遷移する。   Next, the cluster update partial process 2 in step S25 will be described with reference to the flowchart shown in FIG. This process corresponds to the process when it is determined in step S23 of the cluster update process in FIG. 8 that the added point is not a cluster nucleus. First, when an instruction to start processing is given (step S71), a set of points p and points in the vicinity of ε- is received as input in step S72. In steps S73 to S79, each point included in the ε- vicinity of p is updated. Hereinafter, q is described as one point in the vicinity of ε−. After deleting the update target mark of q in step S73, it is checked in step S74 whether q is a cluster nucleus. If it is a cluster nucleus, the process proceeds to step S75, and if not, the process proceeds to step S78.

ステップS75〜S77では、クラスタpのクラスタIDを付け替える処理を行う。まず、ステップS75でpとqのクラスタIDが対応するクラスタの代表IDを検索する。ステップS76でそれらの代表IDを比較し、qの代表IDの方が大きいならば、ステップS77に遷移してそのIDをpに与える。qがクラスタ核でなかった場合、ステップS78でクラスタ更新部分処理2-1を実行する。処理の引数として、qを与える。ステップS77またはS78の処理が終了した場合には、ステップS79で更新対象がまだあるか判断し、更新対象がある場合にはステップS73に遷移し、更新対象がない場合には一連の処理を終了する(ステップS80)。   In steps S75 to S77, processing for changing the cluster ID of the cluster p is performed. First, in step S75, a cluster representative ID corresponding to the cluster IDs of p and q is searched. In step S76, the representative IDs are compared. If the representative ID of q is larger, the process proceeds to step S77, and the ID is given to p. If q is not a cluster nucleus, cluster update partial processing 2-1 is executed in step S78. Q is given as a processing argument. When the process of step S77 or S78 is completed, it is determined in step S79 whether there is still an update target. If there is an update target, the process proceeds to step S73. If there is no update target, the series of processes is terminated. (Step S80).

上記ステップS78のクラスタ更新部分処理2-1について、図12に示すフローチャートを参照して説明する。この処理は、クラスタ更新部分処理1-1と類似点が多いが、pがクラスタ核でないために処理が増えている。   The cluster update partial process 2-1 in step S78 will be described with reference to the flowchart shown in FIG. This process has many similarities to the cluster update partial process 1-1, but the process is increased because p is not a cluster nucleus.

まず、処理開始が指示されると(ステップS81)、ステップS82で更新対象の点qを入力として与える。ステップS83でqのε-近傍に含まれる点を取得する。ステップS84で点qのε-近傍のサイズを調べ、qが新たにクラスタ核となったかどうかを判定する。クラスタ核となっている場合にはステップS85に、そうでない場合にはステップS92に遷移する。   First, when an instruction to start processing is given (step S81), a point q to be updated is given as an input in step S82. In step S83, a point included in the ε- vicinity of q is acquired. In step S84, the size of the point q near ε- is checked to determine whether q is a new cluster nucleus. If it is a cluster nucleus, the process proceeds to step S85, and if not, the process proceeds to step S92.

ステップS85では、クラスタ核と判定されたqに対して新しく発行したクラスタIDを与える。ステップS86〜S93で、qのε-近傍に含まれる全ての点について順に更新を行う。rをqのε一近傍の点として、以下に説明を行う。   In step S85, a newly issued cluster ID is given to q determined to be a cluster nucleus. In steps S86 to S93, all points included in the ε- vicinity of q are updated in order. The following description will be made with r being a point in the vicinity of ε of q.

まず、ステップS81〜S84までは図10の処理1−1のステップS51〜S54と同じであるので省略する。ステップS85では、qにクラスタ核マークと新しく発行したクラスタIDを与える。続いて、ステップS86でqのε-近傍の点を1つ選択し、選択した点をrとする。この点rがクラスタ核かどうかを調べ(ステップS87)、クラスタ核の場合はステップS88に、そうでない場合にはステップS90に進む。   First, steps S81 to S84 are the same as steps S51 to S54 of the process 1-1 in FIG. In step S85, a cluster nucleus mark and a newly issued cluster ID are given to q. Subsequently, in step S86, one point near ε− of q is selected, and the selected point is set as r. It is checked whether the point r is a cluster nucleus (step S87). If it is a cluster nucleus, the process proceeds to step S88, and if not, the process proceeds to step S90.

ステップS88、S89で行う処理は、クラスタ更新部分処理1-1でのステップS58、S59で行う処理とほぼ同じであり、違いはIDの変換先がpのIDからqのIDになったことのみである。ステップS90ではクラスタ核でないrに対してqと同じクラスタIDを与える。ステップS89またはS90の処理が終了した場合には、ステップS91で更新対象がまだあるか判断し、更新対象がある場合にはステップS86に遷移し、更新対象がない場合には一連の処理を終了する(ステップS93)。   The processing performed in steps S88 and S89 is almost the same as the processing performed in steps S58 and S59 in the cluster update partial processing 1-1. The only difference is that the ID conversion destination is changed from the ID of p to the ID of q. It is. In step S90, the same cluster ID as q is given to r which is not a cluster nucleus. When the process in step S89 or S90 is completed, it is determined in step S91 whether there is still an update target. If there is an update target, the process proceeds to step S86. If there is no update target, the series of processes is terminated. (Step S93).

上記ステップS84でqのε-近傍のサイズがNより小さい場合には、ステップS92に遷移する。ステップS92では、qがクラスタ核でなかった場合に、qにpと同じクラスタIDを与える。その処理が終了した場合には一連の処理を終了する(ステップS93)。   If the size of q near ε− is smaller than N in step S84, the process proceeds to step S92. In step S92, if q is not a cluster nucleus, q is given the same cluster ID as p. When the process is finished, the series of processes is finished (step S93).

以上の処理を行うユーザ位置判定システムでは、本発明を適用することによって、ノイズに強いといったユーザの滞在地抽出に適した特性を持つDBSCANアルゴリズムを、逐次的にデータが入力される状況で適用することが可能になる。その効果として、時間的遅れなくユーザがある滞在地に滞在したという情報を得ることができ、実時間でのコンテクストアウェアネスサービスの実現につなげることができる。   In the user position determination system that performs the above processing, by applying the present invention, the DBSCAN algorithm having characteristics suitable for extraction of a user's place of stay such as being resistant to noise is applied in a situation where data is sequentially input. It becomes possible. As an effect, it is possible to obtain information that the user has stayed at a certain place without time delay, which can lead to the realization of a context storewareness service in real time.

尚、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成を削除してもよい。さらに、異なる実施形態例に亘る構成要素を適宜組み合わせても良い。   Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some configurations may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiment examples may be appropriately combined.

11…入力部、111…位置情報逐次入力手段、
12…記録部、121…位置データ記録手段、122…クラスタリング結果記録手段、123…クラスタID変換テーブル記録手段、
13…処理部、131…逐次クラスタリング処理手段、
14…出力部、141…クラスタ出力手段。
11 ... input unit, 111 ... position information sequential input means,
12 ... recording unit, 121 ... position data recording means, 122 ... clustering result recording means, 123 ... cluster ID conversion table recording means,
13 ... processing unit, 131 ... sequential clustering processing means,
14: output unit, 141: cluster output means.

Claims (3)

新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング装置であって、
過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定する判定手段と、
前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する更新手段と
を備えることを特徴とする逐次クラスタリング装置。
In a situation where new point data is sequentially obtained, every time the new point data is input, a DBSCAN (Density) by a clustering process that uses a certain point data as a nucleus and neighboring point data within a certain distance range as a cluster unit. -Based Spatial Clustering of Applications with Noise) algorithm,
The cluster structure that has been subjected to past clustering processing is accumulated, and when the new point data is input, the existing cluster structure that has been accumulated is updated according to the new point data,
Determining means for determining whether the new point data becomes a cluster nucleus or the neighboring point data of the new point data becomes a cluster nucleus when the new point data is input;
Based on the result of the determination, with respect to the existing cluster structure, for the new point data and its neighboring point data, any change of appearance of a new cluster, expansion of an existing cluster, or connection between clusters A sequential clustering apparatus comprising: update means for determining and updating the occurrence of
新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング方法であって、
過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、
前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新することを特徴とする逐次クラスタリング方法。
In a situation where new point data is sequentially obtained, every time the new point data is input, a DBSCAN (Density) by a clustering process in which neighboring point data within a certain distance range with a certain point data as a nucleus is used as a cluster unit. -Based Spatial Clustering of Applications with Noise) algorithm,
The cluster structure that has been subjected to past clustering processing is accumulated, and when the new point data is input, the existing cluster structure that has been accumulated is updated according to the new point data,
When the new point data is input, determine whether the new point data is a cluster nucleus or whether the neighboring point data of the new point data is a cluster nucleus,
Based on the result of the determination, with respect to the existing cluster structure, for the new point data and its neighboring point data, any change of appearance of a new cluster, expansion of an existing cluster, or connection between clusters A sequential clustering method characterized by determining and updating the occurrence of an error.
新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムをコンピュータに実行させるための逐次クラスタリングプログラムであって、
過去のクラスタリング処理されたクラスタ構造を蓄積してする蓄積処理と、
前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新処理とを備え、
前記更新処理は、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、
前記判定処理の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新することを特徴とする逐次クラスタリングプログラム。
In a situation where new point data is sequentially obtained, every time the new point data is input, a DBSCAN (Density) by a clustering process that uses a certain point data as a nucleus and neighboring point data within a certain distance range as a cluster unit. -Based Spatial Clustering of Applications with Noise)
An accumulation process for accumulating the cluster structure subjected to past clustering process;
When the new point data is input, the existing cluster structure accumulated is updated to the new point data,
The update process includes
When the new point data is input, determine whether the new point data is a cluster nucleus or whether the neighboring point data of the new point data is a cluster nucleus,
Based on the result of the determination process, for the existing cluster structure, any of the new point data, its neighboring point data, the appearance of a new cluster, the expansion of an existing cluster, and the connection between clusters A sequential clustering program characterized by determining and updating the occurrence of a change.
JP2009028945A 2009-02-10 2009-02-10 Sequential clustering apparatus, method and program Expired - Fee Related JP5153677B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009028945A JP5153677B2 (en) 2009-02-10 2009-02-10 Sequential clustering apparatus, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009028945A JP5153677B2 (en) 2009-02-10 2009-02-10 Sequential clustering apparatus, method and program

Publications (2)

Publication Number Publication Date
JP2010186256A true JP2010186256A (en) 2010-08-26
JP5153677B2 JP5153677B2 (en) 2013-02-27

Family

ID=42766890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009028945A Expired - Fee Related JP5153677B2 (en) 2009-02-10 2009-02-10 Sequential clustering apparatus, method and program

Country Status (1)

Country Link
JP (1) JP5153677B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017033405A (en) * 2015-08-04 2017-02-09 日本電信電話株式会社 Residence site extraction device, method, and program
WO2018179065A1 (en) * 2017-03-27 2018-10-04 株式会社日立製作所 Data analysis device and data analysis method
CN112544503A (en) * 2020-11-26 2021-03-26 重庆邮电大学 Monitoring and early warning system and method for intelligent beehive

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740904B (en) * 2016-01-29 2019-10-11 东南大学 A kind of trip based on DBSCAN clustering algorithm and activity pattern recognition methods
KR101817011B1 (en) * 2016-08-25 2018-01-09 국방과학연구소 Clutter reduction Method and Apparatus for active sonar based on clustering characteristics
CN106382102B (en) * 2016-11-24 2019-01-18 西南石油大学 A kind of overflow early warning method based on clustering algorithm

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11250094A (en) * 1998-03-04 1999-09-17 Nippon Telegr & Teleph Corp <Ntt> Two-phase data clustering method, device therefor and recording medium recorded with two-phase data cluster program
JP2005063341A (en) * 2003-08-20 2005-03-10 Nec Soft Ltd System and method for dynamically forming set, and program therefor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11250094A (en) * 1998-03-04 1999-09-17 Nippon Telegr & Teleph Corp <Ntt> Two-phase data clustering method, device therefor and recording medium recorded with two-phase data cluster program
JP2005063341A (en) * 2003-08-20 2005-03-10 Nec Soft Ltd System and method for dynamically forming set, and program therefor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG200500096002; 中村朋健、外3名: '多次元データ空間に対する高速クラスタリングと実験的評価' 電子情報通信学会技術研究報告(COMP2003-54〜61) 第103巻,第468号, 20031118, p.31-37, 社団法人電子情報通信学会 *
JPN6012061638; 中村朋健、外3名: '多次元データ空間に対する高速クラスタリングと実験的評価' 電子情報通信学会技術研究報告(COMP2003-54〜61) 第103巻,第468号, 20031118, p.31-37, 社団法人電子情報通信学会 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017033405A (en) * 2015-08-04 2017-02-09 日本電信電話株式会社 Residence site extraction device, method, and program
WO2018179065A1 (en) * 2017-03-27 2018-10-04 株式会社日立製作所 Data analysis device and data analysis method
JPWO2018179065A1 (en) * 2017-03-27 2019-04-11 株式会社日立製作所 Data analysis apparatus and data analysis method
CN112544503A (en) * 2020-11-26 2021-03-26 重庆邮电大学 Monitoring and early warning system and method for intelligent beehive
CN112544503B (en) * 2020-11-26 2022-06-24 重庆邮电大学 Monitoring and early warning system and method for intelligent beehive

Also Published As

Publication number Publication date
JP5153677B2 (en) 2013-02-27

Similar Documents

Publication Publication Date Title
JP5153677B2 (en) Sequential clustering apparatus, method and program
US9218169B2 (en) Callpath finder
CN103714097A (en) Method and device for accessing database
JP6608972B2 (en) Method, device, server, and storage medium for searching for group based on social network
WO2020024650A1 (en) Data processing method and apparatus, and client
CN112115153A (en) Data processing method, device, equipment and storage medium
KR101110202B1 (en) Method and system for generating database based on mutual relation between moving picture data
CN102193988A (en) Method and system for retrieving node data in graphic database
JP6705764B2 (en) Generation device, generation method, and generation program
CN112559913A (en) Data processing method and device, computing equipment and readable storage medium
US8965910B2 (en) Apparatus and method of searching for instance path based on ontology schema
CN111008198A (en) Service data acquisition method and device, storage medium and electronic equipment
JP2008294774A (en) Stream data processing method, stream data processing program and stream data processing system
JP7028194B2 (en) Knowledge generator for inference, knowledge generation method for inference, and program
JP6880962B2 (en) Program analyzer, program analysis method and analysis program
US8762898B1 (en) Double patterning aware routing without stitching
CN113849482A (en) Data migration method and device and electronic equipment
JP7131106B2 (en) Transaction management device, transaction management method and program
CN105677801A (en) Data processing method and system based on graph
JP2010086476A (en) Design support device and design support program
US9465820B2 (en) Method and system for unified technological stack management for relational databases
JP7176434B2 (en) Information processing system, information processing device and data storage program
JP6468377B1 (en) Output management apparatus, output management method and program
Yin et al. Taming near repeat calculation for crime analysis via cohesive subgraph computing
KR101482587B1 (en) Information Providing Apparatus and Method using Entity Reference Path of Building and Infrastructure Information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110111

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5153677

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees