JP2009146382A - Device, method and program for calculating graph visualization coordinate, and recording medium recording the program - Google Patents

Device, method and program for calculating graph visualization coordinate, and recording medium recording the program Download PDF

Info

Publication number
JP2009146382A
JP2009146382A JP2008159841A JP2008159841A JP2009146382A JP 2009146382 A JP2009146382 A JP 2009146382A JP 2008159841 A JP2008159841 A JP 2008159841A JP 2008159841 A JP2008159841 A JP 2008159841A JP 2009146382 A JP2009146382 A JP 2009146382A
Authority
JP
Japan
Prior art keywords
nodes
energy
node
calculation
potential
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
JP2008159841A
Other languages
Japanese (ja)
Other versions
JP4939486B2 (en
Inventor
Tatsufumi Matsubayashi
達史 松林
Takeshi Yamada
武士 山田
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 JP2008159841A priority Critical patent/JP4939486B2/en
Publication of JP2009146382A publication Critical patent/JP2009146382A/en
Application granted granted Critical
Publication of JP4939486B2 publication Critical patent/JP4939486B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a graph visualization technique, capable of performing arrangement of nodes without overlap even in an area crowded with nodes or even for nodes differing in size. <P>SOLUTION: In the graph visualization coordinate calculation device 1, a potential of energy is set, for each node, based on each space axial side of the node, a potential energy gradient is calculated for each node under a model in which at least repulsive energy is generated depending on the potential, and coordinate update of all nodes is performed based on the potential energy gradient. Even in the area crowded with nodes or even for the nodes differing in size, the nodes can be arranged without overlapping therebetween. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、IP(Internet Protocol)ネットワーク、ハイパーリンクで接続されているインターネット、ソーシャルネットワークなどのように関係性を有したデータファイルがリンクのあるネットワークとして表現されるときに、2次元のネットワークまたは3次元のネットワークをグラフとして可視化する技術に関し、特に、グラフにおける各ノードが大きさのない点ではなく大きさのあるラベルとして表現されるときに、各ラベルの位置座標を適切に計算する技術に関する。   The present invention can be applied to a two-dimensional network when a related data file is expressed as a linked network, such as an IP (Internet Protocol) network, the Internet connected by a hyperlink, and a social network. The present invention relates to a technique for visualizing a three-dimensional network as a graph, and more particularly to a technique for appropriately calculating the position coordinates of each label when each node in the graph is expressed as a large label instead of a point having no size. .

ネットワークをグラフとして可視化する技術(以下、「グラフ可視化技術」という。)は、一般に、データとデータとの関連性によってネットワークを形成したデータを可視化することを指す。このグラフ可視化技術では、個々のデータをノードと呼び、データ間のリンクをエッジと呼ぶ。つまり、“ノード”はネットワークデータにおけるデータを意味し、“エッジ”はデータ間の有関係性を示す。   A technique for visualizing a network as a graph (hereinafter referred to as “graph visualization technique”) generally refers to visualizing data that forms a network based on the relationship between data. In this graph visualization technique, each piece of data is called a node, and a link between data is called an edge. That is, “node” means data in the network data, and “edge” indicates a relationship between the data.

例えば、インターネット上のハイパーリンクの張られたWEBページであれば、各WEBページのことを“ノード”といい、ハイパーリンクのことを“エッジ”という。また、例えば、テキストのことを“ノード”といい、その関係性のことを“エッジ”といってもよい。さらに、例えば、ソーシャルネットワーク上の人間のことを“ノード”といい、友達や付き合いのことを“エッジ”といってもよい。   For example, in the case of a WEB page with a hyperlink on the Internet, each WEB page is referred to as a “node”, and a hyperlink is referred to as an “edge”. Further, for example, the text may be referred to as “node”, and the relationship may be referred to as “edge”. Further, for example, a person on a social network may be referred to as a “node”, and a friend or association may be referred to as an “edge”.

図2は、ノード(点)とエッジの模式図である。一般的なグラフ可視化技術においては、図2に示すように、ネットワークの関連性を基に、2次元の仮想空間または3次元の仮想空間にノードが「点」(図2では5つ)として、エッジが点と点を繋ぐ「辺」(図2では5本)として投影されてグラフとして描画される。しかし、各ノードが固有情報を持っている場合、ノード(文字列)とエッジの模式図である図3に示すように、各ノード(5つ)は、文字列であったり、またソーシャルネットワークでは個々の縮小版画像ファイルであったりする。その場合、ノードは「点」ではなく、「ラベル」として描画される。   FIG. 2 is a schematic diagram of nodes (points) and edges. In a general graph visualization technique, as shown in FIG. 2, nodes are represented as “points” (five in FIG. 2) in a two-dimensional virtual space or a three-dimensional virtual space based on network relevance. The edges are projected as “sides” (five in FIG. 2) connecting the points and drawn as a graph. However, when each node has unique information, each node (five) is a character string as shown in FIG. 3 which is a schematic diagram of nodes (character strings) and edges. It may be an individual reduced image file. In this case, the node is drawn as “label” instead of “point”.

従来、グラフ可視化技術の研究分野では、1980年代から様々な手法が考案されてきた。最も一般的な手法は、仮想空間上に配置されたノード間のグラフ距離や、ノードが本来持っている接続関係などに基づき、系に力学関係を与え、加速度(ポテンシャル勾配(ポテンシャルエネルギー勾配))方向に座標を更新していくことによって系の最小エネルギー状態を求める手法である。すなわち、ノード間は力学的ポテンシャルに従い、グラフのノード(例えばインターネットでいうリンクの張られたページ)を力のかかる方向に座標を更新していく方法である。   Conventionally, various methods have been devised since the 1980s in the field of graph visualization technology research. The most common method is to give a dynamic relationship to the system based on the graph distance between nodes arranged in the virtual space, the connection relationship that the node originally has, and the acceleration (potential gradient (potential energy gradient)). This is a technique for obtaining the minimum energy state of the system by updating the coordinates in the direction. That is, according to the mechanical potential between the nodes, the coordinates of a graph node (for example, a linked page in the Internet) are updated in the direction in which the force is applied.

この方法に従えば、各ノードはポテンシャルの深い場所に移動していき、結果として系全体のエネルギーが極小となるように更新されていく。グラフ可視化技術において、速度(熱力学で言うところの温度)という概念は無く、分子動力学に例えると、温度「0」の結晶構造を求めることに等しい。この方法はひとまとめに“Force-directed法”と呼ばれ、近年では様々な手法も考案されている。   According to this method, each node moves to a place with a deep potential, and as a result, the energy of the entire system is updated so as to be minimized. In the graph visualization technique, there is no concept of velocity (temperature in terms of thermodynamics), which is equivalent to obtaining a crystal structure at a temperature “0” when compared to molecular dynamics. This method is collectively called “Force-directed method”, and various methods have been devised in recent years.

一般的なラベル付きグラフの表示手法としては、主に、非特許文献1のバネモデル法(以下、提案者2名のイニシャルをとって「KK法」ともいう。)や、非特許文献2のForce-directed法(以下、提案者2名のイニシャルをとって「FR法」ともいう。)を基にしたグラフ描画アルゴリズムを用いて座標計算を行い、得られた座標を基点としてラベルの表示を行う方法が広く用いられている。このような座標計算結果を基にグラフ描画を行うソフトウェアとして、世界中で最も利用されているものにGraphvizがある。このソフトウェアでは、座標計算アルゴリズムにKK法やFR法を用いている。また、同様に、世界中で広く利用されているソフトウェアにPajekがある。このPajekの描画アルゴリズムもKK法である。
以下、グラフ可視化技術における座標計算手法として広く用いられている上記二つの手法について説明する。
As a general method for displaying a graph with a label, the spring model method of Non-Patent Document 1 (hereinafter also referred to as “KK method” by taking the initials of two proposers) or the Force of Non-Patent Document 2 is used. -Calculate coordinates using a graph drawing algorithm based on the -directed method (hereinafter referred to as "FR method" with the initials of two proposers), and display the label using the obtained coordinates as a base point The method is widely used. Graphviz is the most widely used software for drawing graphs based on the coordinate calculation results. In this software, the KK method or the FR method is used as a coordinate calculation algorithm. Similarly, Pajek is a widely used software around the world. The Pajek drawing algorithm is also the KK method.
Hereinafter, the two methods widely used as the coordinate calculation method in the graph visualization technique will be described.

<KK法(非特許文献1のバネモデル法)>
KK法では、全てのノード間に仮想的なバネを仮定し、座標の更新手法を1ノードずつ逐次的に行う。i番目とj番目のグラフ上での最短経路数を、ノード間のバネの自然長(lij)として与え、全体のエネルギーが極小となるように座標を更新していく。この際、ノード間のバネ定数をkij、ノードの空間的な座標をxiとし、グラフの総ノード数をNとしたとき、系の総エネルギー(バネエネルギーの総和)は次の式(1)で定義される。なお、xij=xj−xiであり、xijの大きさは式(2)で定義される。ここで、xiはi番目のノードの位相空間上の、原点を基点とした座標ベクトルであり、2次元であれば式(3)で定義され、3次元であれば式(4)で定義される。また、KK法ではバネ定数をkij=k/l2ijとする。ここで、kは無次元量の規格化定数である。
<KK method (spring model method of Non-Patent Document 1)>
In the KK method, a virtual spring is assumed between all nodes, and the coordinate updating method is sequentially performed one node at a time. The number of shortest paths on the i-th and j-th graphs is given as the natural length (lij) of the spring between the nodes, and the coordinates are updated so that the overall energy is minimized. At this time, when the spring constant between nodes is kij, the spatial coordinates of the node is xi, and the total number of nodes in the graph is N, the total energy of the system (sum of spring energy) is expressed by the following equation (1). Defined. Note that xij = xj−xi, and the size of xij is defined by Expression (2). Here, xi is a coordinate vector on the phase space of the i-th node with the origin as the base point. If it is two-dimensional, it is defined by equation (3). If it is three-dimensional, it is defined by equation (4). The In the KK method, the spring constant is kij = k / l2ij. Here, k is a dimensionless normalization constant.

Figure 2009146382
Figure 2009146382

<FR法(非特許文献2のForce-directed法)>
FR法では、連結するノード間(エッジ)に働く力を引力として与え、さらにノード間に斥力(反発力)を与え、二つの力の和を与えることによりノードの座標更新を行う。ここで、系の総エネルギーは例えば次の式(5)として定義される。
<FR method (Force-directed method of Non-Patent Document 2)>
In the FR method, a force acting between connected nodes (edges) is given as an attractive force, a repulsive force (repulsive force) is given between nodes, and the coordinates of the nodes are updated by giving the sum of the two forces. Here, the total energy of the system is defined as the following equation (5), for example.

Figure 2009146382

ここで、kは無次元量の定数であり、Eは接続関係を意味するエッジの総数である。また、右辺第1項がエッジとしての引力項(引力エネルギーを表す項)を示し、右辺第2項が各ノード間の斥力項(斥力エネルギーを表す項)を示す。
Figure 2009146382

Here, k is a dimensionless amount of constant, and E is the total number of edges meaning connection relation. Further, the first term on the right side shows an attractive term as an edge (a term representing attractive energy), and the second term on the right side shows a repulsive force term between each node (a term representing repulsive energy).

そして、KK法およびFR法に示される従来の可視化座標計算アルゴリズムでは、ノードは「点」、エッジは「辺」で表現することを前提として計算が行われるため、ラベル同士が重なり合い、ラベル表示が見難くなってしまう場合があるという問題がある。ここで、図4は、従来の可視化手法による、各ノードのポテンシャルの模式図であり、同心円の大きさがポテンシャルの大きさを表す。   In the conventional visualization coordinate calculation algorithm shown in the KK method and the FR method, calculation is performed on the assumption that nodes are represented by “points” and edges are represented by “sides”. There is a problem that it may be difficult to see. Here, FIG. 4 is a schematic diagram of the potential of each node by a conventional visualization method, and the size of concentric circles represents the size of the potential.

そして、例えば、図5のように、ラベルの大きさが全て等しい場合は、座標のスケールを変えたり、全てのラベルの大きさの尺度を変えたりすることによって、ラベル同士の重なり合いを解消することができる。ここで、図5は、従来の可視化手法による、大きさの等しいラベルの可視化例であり、座標値は図4の場合と同様である。   And, for example, as shown in FIG. 5, when all the labels are equal in size, the overlapping of the labels can be eliminated by changing the coordinate scale or changing the scale of all the label sizes. Can do. Here, FIG. 5 is an example of visualization of labels having the same size by a conventional visualization method, and the coordinate values are the same as those in FIG.

しかし、例えば、図6に示すように、IPアドレス(URL(Uniform Resource Locator))のように横に長い文字列の表示や、人名の様に様々な長さのラベルを表示させる場合は、従来の手法では限界がある。また、図7に示すように、大きさの異なるラベルを表示する(貼りつける)場合にも、従来の手法ではラベル同士が重なってしまうなどの問題が起こりえる。ここで、図6は、ラベルとして長い文字列を張りつけた場合の可視化例であり、座標値は図4の場合と同様である。また、図7は、大きさの異なるラベルを張りつけた場合の表示例(可視化例)であり、座標値は図4の場合と同様である。   However, for example, as shown in FIG. 6, when displaying a horizontally long character string such as an IP address (URL (Uniform Resource Locator)) or displaying labels of various lengths such as personal names, This method has its limitations. Further, as shown in FIG. 7, even when labels having different sizes are displayed (attached), there is a possibility that the labels overlap with each other in the conventional method. Here, FIG. 6 is an example of visualization when a long character string is pasted as a label, and the coordinate values are the same as in FIG. FIG. 7 shows a display example (visualization example) when labels having different sizes are pasted, and the coordinate values are the same as those in FIG.

また、与えられた座標を基点として、周囲にラベルが重ならないように表示する方法として、Force-scan(非特許文献3)やSlide model(非特許文献4)も提案されている。これらの方法は、与えられた座標値を基にラベル同士が重ならないようにずらして表示を行う方法である。また、これらの方法は、路線図上や地図上に駅名や地名を表示させる場合に有用な方法として用いられている。
また、リンクが密に結合している領域では、ノード同士の斥力(反発力)を強めあって、ノードの重なりを回避する方法として、Andreas(2004)の手法(非特許文献5)も提案されている。
T. Kamada, and S. Kawai: An algorithm for drawing general undirected graphs, Information Processing Letters, Vol. 31, No. 1, p.7-15, 12 April (1989) T. M. J. Fruchterman, and E. M. Reingold: Graph Drawing by Force-directed Placement, Software - Practice and Experience, Vol. 21(11), p.1129-1164 (1991) K. Misue, P. Eades, W. Lai, and K. Sugiyama: Layout Adjustment and the Mental Map, Journal of Visual Languages and Computing, Vol. 6, No. 2, p.183-210, (1995) D. Ebner, G. W. Klau and R. Weiskircher: Label Number Maximization in the Slider Model, Proceedings Graph Drawing, New York, p.144-154 (2004) Andreas N.: Visual clustering of graphs with nonuniform degrees, Technical Report 02/04, BTU Cottbus, (2004)
Further, Force-scan (Non-Patent Document 3) and Slide model (Non-Patent Document 4) have been proposed as a method of displaying the given coordinates as a base point so that the labels do not overlap with each other. In these methods, display is performed by shifting labels so as not to overlap each other based on given coordinate values. Moreover, these methods are used as a useful method when displaying a station name and a place name on a route map or a map.
In a region where links are tightly coupled, the method of Andreas (2004) (Non-Patent Document 5) has also been proposed as a method of strengthening repulsive force (repulsive force) between nodes and avoiding overlapping of nodes. ing.
T. Kamada, and S. Kawai: An algorithm for drawing general undirected graphs, Information Processing Letters, Vol. 31, No. 1, p.7-15, 12 April (1989) TMJ Fruchterman, and EM Reingold: Graph Drawing by Force-directed Placement, Software-Practice and Experience, Vol. 21 (11), p.1129-1164 (1991) K. Misue, P. Eades, W. Lai, and K. Sugiyama: Layout Adjustment and the Mental Map, Journal of Visual Languages and Computing, Vol. 6, No. 2, p.183-210, (1995) D. Ebner, GW Klau and R. Weiskircher: Label Number Maximization in the Slider Model, Proceedings Graph Drawing, New York, p. 144-154 (2004) Andreas N .: Visual clustering of graphs with nonuniform degrees, Technical Report 02/04, BTU Cottbus, (2004)

しかしながら、非特許文献3,4の手法を用いれば、与えられた座標値からラベルが重ならないように配置を変えることはある程度可能であるものの、ノードが密集した領域や、サイズの異なるラベルについてのグラフ可視化には適用が困難である(ラベル同士の重なりが生じてしまうことがある)という問題があった。さらに、座標軸を計算した後に、再度局所的に座標計算を行う必要もあり、ノードとリンクの数が大規模になると、計算量が莫大になるという問題があった。また、非特許文献5の手法を用いれば、ノードが密集した領域ではラベル同士の重なりをある程度回避できるものの、ノードの反発力が可視化結果に大きく影響を与えてしまい、全体の可視化結果が従来方法により算出される形状とは全く変わってしまうという問題があった。   However, if the methods of Non-Patent Documents 3 and 4 are used, it is possible to change the arrangement so that the labels do not overlap from the given coordinate values. There is a problem that it is difficult to apply to graph visualization (labels may overlap each other). Further, after calculating the coordinate axes, it is necessary to perform coordinate calculation again locally, and there is a problem that the amount of calculation becomes enormous when the number of nodes and links becomes large. In addition, if the technique of Non-Patent Document 5 is used, overlapping of labels can be avoided to some extent in a region where nodes are dense, but the repulsive force of the node greatly affects the visualization result, and the entire visualization result is the conventional method. There is a problem that the shape calculated by the method changes completely.

そこで、本発明は、前記した問題点に鑑みてなされたものであり、全体の可視化結果が従来方法により算出される形状とそれほど変わらずに、ノードが密集した領域や、サイズの異なるノード(ラベル)についても、重なりが無いようにノード(ラベル)を配置することができ、計算量を軽減するグラフ可視化技術を提供することを課題とする。   Therefore, the present invention has been made in view of the above-described problems. The overall visualization result is not so different from the shape calculated by the conventional method, and the area where nodes are densely packed or nodes (labels having different sizes) )), It is an object to provide a graph visualization technique that can arrange nodes (labels) so as not to overlap and reduce the amount of calculation.

前記課題を解決するために、本発明のグラフ可視化座標計算装置は、大きさを有する複数のノード、および、前記ノード間をつなぐ複数のエッジ、を備えるネットワークをグラフとして可視化するグラフ可視化座標計算装置であって、対象となるネットワークのノードの個数、各ノードの空間軸方向ごとのサイズ、エッジ情報を入力する入力手段と、演算を行う演算手段と、計算結果を記憶する記憶手段と、前記計算結果を出力する出力手段と、を有し、前記演算手段は、すべての前記ノードの初期座標を設定する初期配置部と、すべての前記ノード間に所定の斥力が働いて斥力エネルギーが発生し、前記エッジでつながれた前記ノード間にそのノード間の距離に応じた所定の引力が働いて引力エネルギーが発生し、前記ノードごとに、そのノードの空間軸方向ごとのサイズに基づいてエネルギーのポテンシャルが設定され、少なくとも前記斥力エネルギーは前記ポテンシャルに依存して発生するというモデルの下、前記ノードごとに、発生する前記斥力エネルギーと前記引力エネルギーとの総和をそのノードのポテンシャルエネルギーとして算出するエネルギー導出部と、前記ノードごとに、前記算出したそのノードのポテンシャルエネルギーに基づいてポテンシャルエネルギー勾配を算出するポテンシャル勾配導出部と、前記算出したノードごとのポテンシャルエネルギー勾配に基づいて、すべての前記ノードの座標更新を行う座標更新処理部と、所定の計算終了条件に基づいて、計算を終了するか否かを判定する計算終了条件判定部と、前記計算を終了すると判定された場合、すべての前記ノードの座標を含む計算結果を前記記憶手段および前記出力手段の少なくとも一方に与えるデータ制御部と、を備えることを特徴とする。グラフ可視化座標計算方法についても同様である。   In order to solve the above problems, a graph visualization coordinate calculation apparatus of the present invention visualizes a network including a plurality of nodes having a size and a plurality of edges connecting the nodes as a graph. The number of nodes of the target network, the size of each node in the spatial axis direction, the input means for inputting edge information, the computing means for performing computation, the storage means for storing the calculation results, and the calculation Output means for outputting a result, and the computing means generates initial repulsive energy by applying a predetermined repulsive force between all the nodes and an initial placement unit that sets initial coordinates of all the nodes, A predetermined attractive force according to the distance between the nodes connected by the edge works to generate attractive energy, and for each node, The potential of energy is set based on the size of each node in the spatial axis direction, and at least the repulsive energy is generated depending on the potential. An energy deriving unit that calculates a sum of energy as the potential energy of the node; a potential gradient deriving unit that calculates a potential energy gradient based on the calculated potential energy of the node for each node; and the calculated node A coordinate update processing unit that updates the coordinates of all the nodes based on each potential energy gradient, a calculation end condition determination unit that determines whether to end the calculation based on a predetermined calculation end condition, When it is determined that the calculation is to be terminated The calculation results including the coordinates of all the nodes, characterized in that it comprises a data control unit to be supplied to at least one of said storage means and said output means. The same applies to the graph visualization coordinate calculation method.

かかる構成のグラフ可視化座標計算装置および方法によれば、ノードごとに、そのノードの空間軸方向ごとのサイズに基づいてエネルギーのポテンシャルが設定され、少なくとも前記斥力エネルギーは前記ポテンシャルに依存して発生するというモデルの下、ノードごとにポテンシャルエネルギー勾配を算出し、そのポテンシャルエネルギー勾配に基づいてすべてのノードの座標更新を行うので、ノードが密集した領域や、サイズの異なるノードについても、重なりが無いようにノードを配置することができる。   According to the graph visualization coordinate calculation apparatus and method having such a configuration, the potential of energy is set for each node based on the size of each node in the spatial axis direction, and at least the repulsive energy is generated depending on the potential. Under this model, the potential energy gradient is calculated for each node, and the coordinates of all nodes are updated based on the potential energy gradient. Nodes can be placed in

また、本発明に係るグラフ可視化座標計算装置は、ポテンシャルが楕円曲線関数に基づいて設定されていることが好ましい。   In the graph visualization coordinate calculation apparatus according to the present invention, the potential is preferably set based on an elliptic curve function.

かかる構成のグラフ可視化座標計算装置によれば、楕円曲線関数が使用されていることで、他の関数を使用した場合に比べて計算量が少なくて済む。   According to the graph visualization coordinate calculation apparatus having such a configuration, since the elliptic curve function is used, the amount of calculation can be reduced as compared with the case where another function is used.

また、本発明に係るグラフ可視化座標計算装置は、前記斥力エネルギーは、前記ポテンシャルに依存して発生する第1のエネルギーと、前記ポテンシャルに依存せず前記ノード間の距離に依存して発生する第2のエネルギーと、の和として算出され、前記ノード間の距離が大きいほど、前記第1のエネルギーが前記第2のエネルギーと比べて小さな割合になるように設定されていることが好ましい。   In the graph visualization coordinate calculation apparatus according to the present invention, the repulsive energy is generated depending on the first energy generated depending on the potential and the distance between the nodes without depending on the potential. Preferably, the first energy is set to be smaller in proportion to the second energy as the distance between the nodes is larger.

かかる構成のグラフ可視化座標計算装置によれば、各ノードにおいて、そのノードの近傍ではラベルの大きさに依存した反発力が与えられ、遠方では近似的にユークリッド距離のみに依存した反発力が与えられることになる。したがって、Tree-codeのようなポテンシャルの重ね合わせによる近似計算を適用することができ、ノードの数が数万あるいは数十万といった多い場合でも、比較的短い時間で計算を完了することができる。   According to the graph visualization coordinate calculation apparatus having such a configuration, at each node, a repulsive force depending on the size of the label is given in the vicinity of the node, and a repulsive force approximately depending only on the Euclidean distance is given far away. It will be. Therefore, approximate calculation based on potential superposition such as Tree-code can be applied, and calculation can be completed in a relatively short time even when the number of nodes is as large as tens of thousands or hundreds of thousands.

また、本発明に係るグラフ可視化座標計算プログラムは、前記したグラフ可視化座標計算装置によるグラフ可視化座標計算方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。   A graph visualization coordinate calculation program according to the present invention causes a computer to execute the graph visualization coordinate calculation method by the graph visualization coordinate calculation apparatus described above. By being configured in this way, a computer in which this program is installed can realize each function based on this program.

また、本発明に係るコンピュータに読み取り可能な記録媒体は、前記したグラフ可視化座標計算プログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。   The computer-readable recording medium according to the present invention is characterized in that the above-described graph visualization coordinate calculation program is recorded. By being configured in this way, a computer equipped with this recording medium can realize each function based on a program recorded on this recording medium.

本発明によれば、ノードが密集した領域や、サイズの異なるノード(ラベル)についても、重なりが無いようにノード(ラベル)を配置することができる。また、全体の可視化結果が従来方法により算出される形状とそれほど変わらずに、計算の収束性を向上させ、計算量を軽減させることができる。   According to the present invention, nodes (labels) can be arranged so as not to overlap even in a region where nodes are densely packed or nodes (labels) having different sizes. Further, the overall visualization result is not so different from the shape calculated by the conventional method, and the convergence of calculation can be improved and the amount of calculation can be reduced.

以下、本発明のグラフ可視化座標計算装置およびグラフ可視化座標計算方法を実施すための最良の形態(以下、「実施形態」という。)について、図面を参照しながら説明する。なお、説明の都合上、まず、第1実施形態の概要を説明し、その後、第1実施形態の詳細について数式及び図面を参照して説明する。なお、以下、「加速度」とは、「ポテンシャル勾配(ポテンシャルエネルギー勾配)」またはその大きさを意味する。   Hereinafter, the best mode (hereinafter referred to as “embodiment”) for carrying out the graph visualization coordinate calculation apparatus and the graph visualization coordinate calculation method of the present invention will be described with reference to the drawings. For convenience of explanation, the outline of the first embodiment will be described first, and then the details of the first embodiment will be described with reference to mathematical expressions and drawings. Hereinafter, “acceleration” means “potential gradient (potential energy gradient)” or its magnitude.

[第1実施形態の概要]
従来の手法において、グラフ可視化の座標値計算では、ノード間の力学方程式を位相空間上での座標間距離に依存した関数系で与える。つまり、KK法やFR法ではi番目とj番目のノードに関わる加速度公式はユークリッド距離|xij|に依存した関数で与えられ、その加速度の方向ベクトルはxijと平行である。
[Outline of First Embodiment]
In the conventional method, in the coordinate value calculation for graph visualization, the dynamic equation between nodes is given by a function system that depends on the inter-coordinate distance in the phase space. That is, in the KK method and the FR method, the acceleration formula related to the i-th and j-th nodes is given by a function depending on the Euclidean distance | xij |, and the acceleration direction vector is parallel to xij.

ここで、第1実施形態では、非軸対称ポテンシャルを用いて、各ノードに対して異なる形状の斥力(反発力)を与えることによって、個々のラベルの大きさを考慮した最適配置を求める手法を提案する。なお、「非軸対称」とは、2次元においては、x軸方向とy軸方向にスケーリングが異なっていること、具体的な図形としては「正円以外」を意味する。また、引力に関しては従来通りの軸対称ポテンシャルを使用する。「軸対称」とは、2次元においては、x軸方向とy軸方向にスケーリングが同じであること、具体的な図形としては「正円」を意味する。   Here, in the first embodiment, a method for obtaining an optimum arrangement in consideration of the size of each label by applying a repulsive force (repulsive force) having a different shape to each node using a non-axisymmetric potential. suggest. “Non-axisymmetric” means that in two dimensions, the scaling differs in the x-axis direction and the y-axis direction, and a specific figure means “other than a perfect circle”. As for the attractive force, the conventional axisymmetric potential is used. “Axisymmetric” means that, in two dimensions, the scaling is the same in the x-axis direction and the y-axis direction, and a specific figure is “perfect circle”.

第1実施形態の手法では、i番目のノードに対してx軸方向、y軸方向、z軸方向にAi,Bi,Ciという大きさを持つラベルつきのグラフに対して、斥力のポテンシャルを設定する。従来では、x軸方向、y軸方向、z軸方向に無次元量の同じスケール尺度を用いていたが、第1実施形態の手法では、ラベルの大きさを非軸対称ポテンシャルで与える。例えば、楕円形のポテンシャルとして、単位円(3次元では単位球)を、x軸方向、y軸方向、z軸方向に、それぞれA,B,Cだけ延ばしたポテンシャル形状を与える。以下、i番目のノードに対してはAi,Bi,Ciとする。   In the method of the first embodiment, a repulsive potential is set for a labeled graph having sizes of Ai, Bi, and Ci in the x-axis direction, the y-axis direction, and the z-axis direction for the i-th node. . Conventionally, the same scale scale of dimensionless amount is used in the x-axis direction, the y-axis direction, and the z-axis direction. However, in the method of the first embodiment, the label size is given by a non-axisymmetric potential. For example, as an elliptical potential, a potential shape obtained by extending a unit circle (a unit sphere in three dimensions) by A, B, and C in the x-axis direction, the y-axis direction, and the z-axis direction, respectively, is given. Hereinafter, Ai, Bi, and Ci are set for the i-th node.

このとき、斥力ポテンシャル(以下、単に「ポテンシャル」ともいう。)をΦi(x)とすると、この斥力ポテンシャルを、2次元の計算であれば式(6)に示す関数形で与え、3次元の計算であれば式(7)に示す関数形で与えることによって、非軸対称なポテンシャルを設定することができる。

Figure 2009146382
At this time, if the repulsive potential (hereinafter also simply referred to as “potential”) is Φi (x), this repulsive potential is given in the form of a function shown in Equation (6) for a two-dimensional calculation. If it is a calculation, a non-axisymmetric potential can be set by giving it in the function form shown in Expression (7).
Figure 2009146382

ラベルが、例えば、図7のように互いに重なり合っていたとしても、第1実施形態のグラフ可視化座標計算技術において、図8のように固有の楕円ポテンシャルを与え、各ノードが系の総エネルギーを最小とするような配置を探せば、その結果、図9のようにラベルが重なり合わない座標を求めることができる。ここで、図7は、大きさの異なるラベルの表示例であり、座標値は図4の場合と同様である。また、図8は、非軸対称ポテンシャルを利用した、各ノードのポテンシャルの模式図であり、同心楕円の大きさがポテンシャルの大きさを表す。さらに、図9は、大きさの異なるラベルの表示例であり、図7の各ラベルの配置を変えることで重なりを無くした様子を示している。   For example, even if the labels overlap each other as shown in FIG. 7, in the graph visualization coordinate calculation technique of the first embodiment, a unique elliptic potential is given as shown in FIG. 8, and each node minimizes the total energy of the system. As a result, coordinates where labels do not overlap can be obtained as shown in FIG. Here, FIG. 7 is a display example of labels having different sizes, and the coordinate values are the same as in FIG. FIG. 8 is a schematic diagram of the potential of each node using a non-axisymmetric potential, and the size of the concentric ellipse represents the size of the potential. Further, FIG. 9 is a display example of labels having different sizes, and shows a state in which the overlap is eliminated by changing the arrangement of the labels in FIG.

[第1実施形態における計算例]
第1実施形態における計算例として、FR法の関数に対しての具体例を示す。第1実施形態では、系の総エネルギーを、前記した式(5)の代わりに、次の式(5a)、式(5b)として定義する。
[Calculation example in the first embodiment]
As a calculation example in the first embodiment, a specific example for the function of the FR method is shown. In the first embodiment, the total energy of the system is defined as the following expressions (5a) and (5b) instead of the above expression (5).

Figure 2009146382

Figure 2009146382

ここで、α,k,kαは無次元量の定数であり、Eはエッジの総数、Nはノードの総数である。また、式(5)の場合と同様、右辺第1項が引力項を示し、右辺第2項がの斥力項を示す。
なお、先に述べたようにkとkαは定数なので、式(5a)と式(5b)は実質等価である。
Figure 2009146382

Figure 2009146382

Here, α, k, k α are dimensionless constants, E is the total number of edges, and N is the total number of nodes. Further, as in the case of Expression (5), the first term on the right side indicates the attractive force term, and the second term on the right side indicates the repulsive force term.
Since the k and k alpha as previously described constants, equation (5a) and Equation (5b) is substantially equivalent.

また、非軸対称なポテンシャルを設定するために、前記した式(2)で定義した|xij|の代わりに|x〜ij|(本明細書において、記号「〜(チルダ)」はその直前の文字の上に付される記号であるものとする)を与える。その場合、|x〜ij|を、2次元では式(8)のように定義し、3次元では式(9)のように定義する。また、その|x〜ij|におけるポテンシャルΦjの勾配を用いることで、i番目のノードに対する加速度aiは式(10)で表すことができる。   In order to set a non-axisymmetric potential, | x˜ij | (in this specification, the symbol “˜ (tilde)” Suppose that it is a symbol appended to the letter). In that case, | x to ij | is defined as in Expression (8) in two dimensions, and is defined as in Expression (9) in three dimensions. In addition, by using the gradient of the potential Φj in the | x to ij |, the acceleration ai for the i-th node can be expressed by Expression (10).

Figure 2009146382
Figure 2009146382

ここで、さらに式(5b)も考慮して、2次元の場合は、i番目のノードに対する加速度aiのx成分ax,i、y成分ay,iはそれぞれ式(11)、式(12)のようになる。ここで、Eiは、i番目のノードの持つ総リンク(エッジ)数である。

Figure 2009146382
Here, further considering equation (5b), in the case of two dimensions, the x components ax, i and y components ay, i of the acceleration ai for the i-th node are represented by equations (11) and (12), respectively. It becomes like this. Here, Ei is the total number of links (edges) of the i-th node.
Figure 2009146382

この加速度の表式を用いることで、ポテンシャルの形状、つまり、ラベルのサイズや形状に適した目的関数の算出式を設定することができる。
以下、2次元に絞って話を進める。
By using this acceleration expression, a formula for calculating the objective function suitable for the shape of the potential, that is, the size and shape of the label can be set.
The following is a discussion focused on two dimensions.

なお、第1実施形態では、このように、斥力項を|xij|と|x〜ij|の両方を使って表すことで、高精度のラベル配置を実現している。つまり、非軸対称なポテンシャルに対応した加速度の表式を単純にFR法に適用しただけ(以下、「FR法への単純適用」という。)では(つまり、式(5b)の斥力項に|xij|の項がない場合)、横に長い(以下、「偏平」という。)、例えば文字列のようなラベルを扱う場合は、全体のポテンシャルが偏平になり過ぎてしまい、可視化計算の結果に影響を与える場合がある。   In the first embodiment, as described above, the repulsive force term is expressed using both | xij | and | x to ij |, thereby realizing a highly accurate label arrangement. That is, if the acceleration expression corresponding to the non-axisymmetric potential is simply applied to the FR method (hereinafter referred to as “simple application to the FR method”) (that is, the repulsive force term of the equation (5b) is | xij |) and a long side (hereinafter referred to as “flattening”), for example, when handling a label such as a character string, the overall potential becomes too flat, and the result of the visualization calculation is May have an effect.

FR法への単純適用でも、例えば、図6のように、互いに重なり合っていたラベルを、ラベルの文字列の長さを考慮することによって、図10のようにポテンシャルを与え、図11のようにラベルが重なり合わない座標を求めることができる。ここで、図6は、ラベルが長い文字列の場合の可視化表示例であり、座標値は図4の場合と同様である。また、図10は、非軸対称ポテンシャルを利用した、各ノードのポテンシャルの模式図(その2)であり、同心楕円の大きさがポテンシャルの大きさを表している。さらに、図11は、図6の各ラベルの配置を変えることで重なりを無くした様子を示している。しかし、図11に示すように、全てのノードが長い文字列の場合、全てのノードのポテンシャルが扁平であることにより、可視化結果が全体的に扁平になり、あまり好ましくない。これは、表示手段(モニタ)の画面と縦横比が大きく異なると表示しにくい、などの問題のためである。   Even in simple application to the FR method, for example, as shown in FIG. 6, the labels that overlap each other are given potential as shown in FIG. 10 by considering the length of the character string of the label, as shown in FIG. Coordinates where labels do not overlap can be obtained. Here, FIG. 6 is a visualization display example in the case of a character string with a long label, and the coordinate values are the same as in FIG. FIG. 10 is a schematic diagram (part 2) of the potential of each node using a non-axisymmetric potential. The size of a concentric ellipse represents the size of the potential. Further, FIG. 11 shows a state in which the overlap is eliminated by changing the arrangement of the labels in FIG. However, as shown in FIG. 11, when all the nodes are long character strings, the potential of all the nodes is flat, so that the visualization result becomes flat as a whole, which is not preferable. This is due to a problem that display is difficult when the aspect ratio of the display means (monitor) is greatly different.

また、FR法への単純適用では、非軸対称なポテンシャルを個々のノードに与えることによって、Tree-codeのようなポテンシャルの重ね合わせによる近似計算が適用できなくなる。Tree-codeとは、あるノードに対して遠方のノードの集団の一部ずつを近似的にひとまとまりに扱って計算する手法である。このTree-codeが使用できないことは、大規模計算(特に数十万ノードを超えるような計算)には致命的である。
しかしながら、この問題は、第1実施形態では、前記した式(5b)のように、ポテンシャル関数を2重に与えることにより、回避している。
Further, in simple application to the FR method, by giving a non-axisymmetric potential to each node, approximate calculation by superposition of potentials such as Tree-code cannot be applied. Tree-code is a technique for calculating by treating a part of a group of nodes far away from a certain node approximately together. The inability to use this Tree-code is fatal for large-scale calculations (especially calculations that exceed hundreds of thousands of nodes).
However, in the first embodiment, this problem is avoided by giving the potential function doubly as shown in the above equation (5b).

第1実施形態では、前記のように斥力項のポテンシャルを2重に設定することにより、ポテンシャルを遠方で点対称で与え、Tree-codeのような既存の近似手法を用いることができるようにしている。さらに、この手法では、遠方での斥力(反発力)を残しつつ、近傍の斥力を強くすることができる利点があり、近傍での斥力を強くすることにより、ラベル同士が重ならないという制限を強くすることができる。つまり、全てのノードが長い文字列の場合でも、可視化結果を、全体的があまり扁平でないようにすることができる。   In the first embodiment, the potential of the repulsive term is set to be double as described above so that the potential is given point-symmetrically in the distance, and an existing approximation method such as Tree-code can be used. Yes. Furthermore, this method has the advantage that the repulsive force in the distance can be maintained while the repulsive force in the distance is retained, and the strong repulsive force in the vicinity strongly restricts the labels from overlapping each other. can do. That is, even when all the nodes are long character strings, the overall visualization result can be made less flat.

例えば、FR法への単純適用では、斥力項は距離(または距離の2乗など)に反比例した大きさで定義される。このような力学関数では、遠方まで反発力の効果が続く反面、近傍での反発力はさほど強くならない。しかし、式(5b)に示すように、斥力項を|xij|と|x〜ij|の両方を使って表すことで、近傍でのラベルサイズに依存した反発力を強くすることができる。   For example, in a simple application to the FR method, the repulsion term is defined as a magnitude that is inversely proportional to the distance (or the square of the distance, etc.). In such a dynamic function, the effect of the repulsive force continues far, but the repulsive force in the vicinity is not so strong. However, as shown in Expression (5b), the repulsive force depending on the label size in the vicinity can be strengthened by expressing the repulsive force term using both | xij | and | x˜ij |.

ここで重要なのは、ノード間の距離が大きいほど、|x〜ij|に依存して発生する第1のエネルギー(斥力ポテンシャルに依存する項)が、|xij|に依存して発生する第2のエネルギー(ユークリッド距離に依存する項)と比べて小さな割合になるように設定されていることである。その条件を満たす限り、斥力項は自由に設定できるものとする。   What is important here is that as the distance between nodes increases, the first energy generated depending on | x to ij | (the term depending on the repulsive potential) is generated depending on | xij |. It is set to be a small ratio compared to energy (term depending on Euclidean distance). As long as the condition is satisfied, the repulsion term can be set freely.

ここで、実際の計算結果例を図12に示す。図12において、(a)は式(5b)の右辺第2項中の右項成分、(b)は式(5b)の右辺第2項中の左項成分、(c)は(a)と(b)の和を示したものである。このように、非軸対称の関数(式(5b)の右辺第2項中の右項:第1のエネルギー)と、軸対称の関数(式(5b)の右辺第2項中の左項:第2のエネルギー)の二つの関数を重ね合わせることによって、近傍ではラベルの大きさに依存した反発力を与え、遠方では近似的にユークリッド距離のみに依存した反発力を与えることができる。   Here, FIG. 12 shows an example of actual calculation results. In FIG. 12, (a) is the right term component in the second term on the right side of equation (5b), (b) is the left term component in the second term on the right side of equation (5b), and (c) is (a) and This shows the sum of (b). Thus, a non-axisymmetric function (right term in the second term on the right side of the equation (5b): first energy) and an axisymmetric function (left term in the second term on the right side of the equation (5b): By superimposing the two functions of (second energy), a repulsive force depending on the size of the label can be given in the vicinity, and a repulsive force depending only on the Euclidean distance can be given in the distance.

(座標更新手法)
ここで、座標更新について説明する。座標更新は従来手法と同様に行う。つまり、第1実施形態のグラフ可視化座標計算方法は、KK法およびFR法との相違点が目的関数のみであるため、エネルギー最小化問題に関しては同様の処理を行うことができる。以下、ここではFR法をベースとした座標更新手法について述べる。
(Coordinate update method)
Here, the coordinate update will be described. The coordinate update is performed in the same manner as in the conventional method. That is, the graph visualization coordinate calculation method of the first embodiment is different from the KK method and the FR method only in the objective function, and therefore the same processing can be performed for the energy minimization problem. Hereafter, a coordinate update method based on the FR method will be described.

各ノードの初期配置を乱数で与え、各ノードに座標xi(0)を設定する。そして、全ノードの配置から各ノードの加速度(ポテンシャル勾配)を、式(5b)を用いて算出し、i番目のノードの更新式は次の式(13)で与えられる。ここで、tは更新回数である。一般に、FR法では更新座標の発散を防ぐために冷却関数tcool(t)を用いて更新上限幅を押さえ込む。この冷却関数は、次の式(14)で与えられる。なお、Cは無次元量の定数、TENDはあらかじめ設定された更新回数である。CおよびTENDは自由に設定することができる。 The initial arrangement of each node is given by a random number, and coordinates xi (0) are set for each node. Then, the acceleration (potential gradient) of each node is calculated from the arrangement of all the nodes using the equation (5b), and the update equation for the i-th node is given by the following equation (13). Here, t is the number of updates. Generally, in the FR method, the update upper limit width is suppressed by using a cooling function t cool (t) in order to prevent divergence of update coordinates. This cooling function is given by the following equation (14). C is a dimensionless amount constant, and TEND is a preset number of updates. C and TEND can be set freely.

Figure 2009146382
Figure 2009146382

(ハードウェア構成など)
次に、第1実施形態のグラフ可視化座標計算装置のハードウェア構成などについて説明する。図1は、第1実施形態のグラフ可視化座標計算装置の構成図である。グラフ可視化座標計算装置1は、複数のノード、ノード間をつなぐ複数のエッジ、各ノードのラベルサイズなどの情報を有するネットワークにおける各ノードの座標を、各ノードが重ならないように、非軸対称ポテンシャルに基づいて計算し、グラフとして可視化するものである。このグラフ可視化座標計算装置1は、図1に示すように、演算手段2と、入力手段3と、記憶手段4と、出力手段5とを備えており、それらの各手段がバスライン6に接続されている。
(Hardware configuration etc.)
Next, a hardware configuration of the graph visualization coordinate calculation apparatus according to the first embodiment will be described. FIG. 1 is a configuration diagram of a graph visualization coordinate calculation apparatus according to the first embodiment. The graph visualization coordinate calculation apparatus 1 has a non-axisymmetric potential so that the coordinates of each node in the network having information such as a plurality of nodes, a plurality of edges connecting the nodes, and a label size of each node do not overlap each other. It is calculated based on and visualized as a graph. As shown in FIG. 1, the graph visualization coordinate calculation apparatus 1 includes a calculation unit 2, an input unit 3, a storage unit 4, and an output unit 5, and these units are connected to the bus line 6. Has been.

演算手段2は、例えば、CPU(Central Processing Unit)およびRAM(Random Access Memory)(メモリ)から構成される主制御装置である。この演算手段2は、図1に示すように、初期配置部21と、加速度導出部22(ポテンシャル勾配導出部)と、座標更新処理部23と、エネルギー導出部24と、計算終了条件判定部25と、データ制御部26とを含んで構成される(詳細は後記)。   The computing means 2 is a main control device composed of, for example, a CPU (Central Processing Unit) and a RAM (Random Access Memory). As shown in FIG. 1, the computing means 2 includes an initial placement unit 21, an acceleration deriving unit 22 (potential gradient deriving unit), a coordinate update processing unit 23, an energy deriving unit 24, and a calculation end condition determining unit 25. And the data control unit 26 (details will be described later).

入力手段3は、例えば、キーボードやマウスなどから構成される。この入力手段3は、例えば、データとして、対象となるネットワークのリンク情報(ノード数と、各ノードのリンク先)を入力し、記憶手段4に格納する。第1実施形態では、入力手段3は、ノード数N、各ノードのサイズ、および、エッジ数Eを入力する。   The input means 3 is composed of, for example, a keyboard and a mouse. The input unit 3 inputs, for example, link information (number of nodes and link destinations of each node) of the target network as data, and stores it in the storage unit 4. In the first embodiment, the input unit 3 inputs the number of nodes N, the size of each node, and the number of edges E.

記憶手段4は、例えば、一般的なハードディスク装置などから構成され、演算手段2で用いられる各種プログラムや各種データなどを記憶する。演算手段2は、これらのプログラムを記憶手段4から読み込んでメモリに展開して実行することで、演算手段2の各機能を実現する。   The storage unit 4 is composed of, for example, a general hard disk device, and stores various programs and various data used by the calculation unit 2. The computing means 2 implements each function of the computing means 2 by reading these programs from the storage means 4, developing them in a memory and executing them.

出力手段5は、例えば、グラフィックボード(出力インタフェース)およびそれに接続されたモニタである。モニタは、例えば、液晶ディスプレイなどから構成され、演算処理結果(例えば、各ノードの座標など)を表示する。   The output means 5 is, for example, a graphic board (output interface) and a monitor connected thereto. The monitor is composed of, for example, a liquid crystal display, and displays a calculation processing result (for example, coordinates of each node).

図13は、グラフ可視化座標計算装置1による処理の流れを示すフローチャートである。
まず、ユーザが入力手段3から入力した、対象となるネットワークのノード数N、各ノードのサイズ(Ai,Bi)、エッジ数E(エッジ両端のノード情報も含む)を初期配置部21が受け付け(ステップS1)、初期情報として記憶手段4(あるいはメモリ)に記憶する。
FIG. 13 is a flowchart showing the flow of processing by the graph visualization coordinate calculation apparatus 1.
First, the initial placement unit 21 receives the number N of nodes of the target network, the size (Ai, Bi) of each node, and the number of edges E (including node information at both ends of the edge) input from the input means 3 by the user ( Step S1), the initial information is stored in the storage means 4 (or memory).

次に、初期配置部21は、乱数を発生し、発生した乱数を基に、全ノードに対して、ランダムな初期座標を設定する(ステップS2)。
続いて、エネルギー導出部24は、与えられた初期座標配置を基に全ノードのそれぞれのエネルギーの初期値として、式(5b)を使用して初期エネルギーΦ0を算出(導出)する(ステップS3)。つまり、ノードごとに、斥力エネルギーと引力エネルギーとの総和をそのノードのポテンシャルエネルギーとして算出する。
Next, the initial placement unit 21 generates random numbers, and sets random initial coordinates for all nodes based on the generated random numbers (step S2).
Subsequently, the energy deriving unit 24 calculates (derivates) the initial energy Φ0 using Expression (5b) as an initial value of the energy of all the nodes based on the given initial coordinate arrangement (step S3). . That is, for each node, the sum of repulsive energy and attractive energy is calculated as the potential energy of that node.

次に、加速度導出部22は、与えられた初期座標配置を基に全ノードに対して加速度(ポテンシャルエネルギー勾配)を算出(導出)する(ステップS4)。具体的には、式(10)を使用して加速度を算出する。FR法に適用した場合は、加速度のx成分およびy成分はそれぞれ式(11)および式(12)に相当する。つまり、ノードごとに、そのノードのポテンシャルエネルギーに基づいてポテンシャルエネルギー勾配を算出する。   Next, the acceleration deriving unit 22 calculates (derived) acceleration (potential energy gradient) for all nodes based on the given initial coordinate arrangement (step S4). Specifically, acceleration is calculated using equation (10). When applied to the FR method, the x component and y component of acceleration correspond to equations (11) and (12), respectively. That is, for each node, a potential energy gradient is calculated based on the potential energy of that node.

続いて、ステップS4で求めた加速度(ポテンシャルエネルギー勾配)を基に、座標更新処理部23は、座標の更新を行う、つまり、更新座標xi(t+1)を計算する(ステップS5)。具体的には、FR法に適用した場合は、式(13)を使用して更新座標を計算する。また、KK法などの他の既存手法に適用するときは適宜それらの手法に合わせて計算すればよい。   Subsequently, based on the acceleration (potential energy gradient) obtained in step S4, the coordinate update processing unit 23 updates the coordinates, that is, calculates the updated coordinates xi (t + 1) (step S5). Specifically, when applied to the FR method, the updated coordinates are calculated using Equation (13). In addition, when applied to other existing methods such as the KK method, calculation may be performed according to those methods as appropriate.

次に、エネルギー導出部24は、各ノードの最新座標を基に、式(5b)を使用して全ノードのそれぞれのエネルギーΦを算出(導出)する(ステップS6)。つまり、ノードごとに、斥力エネルギーと引力エネルギーとの総和をそのノードのポテンシャルエネルギーとして算出する。   Next, the energy deriving unit 24 calculates (derived) the respective energy Φ of all the nodes using the formula (5b) based on the latest coordinates of each node (step S6). That is, for each node, the sum of repulsive energy and attractive energy is calculated as the potential energy of that node.

続いて、計算終了条件判定部25は、計算の終了条件を満たすか否か判定する(ステップS7)。FR法に適用した場合、例えば、式(13)にあるようにあらかじめ計算の更新回数をTENDとして設定するする必要があり、t=TENDが計算終了条件となる。また、KK法では、新しく得られたエネルギーΦ(t+1)と、更新前のエネルギーΦ(t)との差分△Φ=Φ(t+1)−Φ(t)を求め、これが充分小さくなった時に計算を終了する。   Subsequently, the calculation end condition determination unit 25 determines whether or not the calculation end condition is satisfied (step S7). When applied to the FR method, for example, as shown in Equation (13), it is necessary to set the number of calculation updates in advance as TEND, and t = TEND is the calculation end condition. Further, in the KK method, a difference ΔΦ = Φ (t + 1) −Φ (t) between the newly obtained energy Φ (t + 1) and the energy Φ (t) before the update is obtained and calculated when this becomes sufficiently small. Exit.

計算終了条件を満たさない場合(ステップS7でNo)、ステップS4に戻って処理を繰り返す。
一方、計算終了条件を満たす場合(ステップS7でYes)、データ制御部26は、対象となるネットワークの各ノードの座標とエネルギー(総エネルギー、各ノードのポテンシャルエネルギーのいずれかあるいは両方)などを、バスライン6を通じて出力手段5に送信する。これを受けて、出力手段5は、対象となるネットワークの各ノードの座標とエネルギーなどの計算結果を出力する。
If the calculation end condition is not satisfied (No in step S7), the process returns to step S4 and is repeated.
On the other hand, when the calculation end condition is satisfied (Yes in step S7), the data control unit 26 determines the coordinates and energy of each node of the target network (total energy, potential energy of each node or both), and the like. The data is transmitted to the output means 5 through the bus line 6. In response to this, the output means 5 outputs calculation results such as coordinates and energy of each node of the target network.

このように、第1実施形態のグラフ可視化座標計算装置1によれば、ノードが密集した領域や、サイズの異なるラベルについても、重なりが無いようにラベルを配置することができる。   As described above, according to the graph visualization coordinate calculation apparatus 1 of the first embodiment, it is possible to arrange labels so as not to overlap even in regions where nodes are densely arranged or labels having different sizes.

なお、対象となるラベルは、長方形(または直方体)や文字列のラベルに限るものではなく、多角形や様々な形状とすることができる。つまり、第1実施形態は、非軸対称ポテンシャルを用いる手法であるので、ラベルに対する外接長方形など使用することで、様々な形状のラベルを対象とすることができる。   The target label is not limited to a rectangular (or rectangular parallelepiped) or character string label, but may be a polygon or various shapes. That is, since the first embodiment is a technique using a non-axisymmetric potential, labels of various shapes can be targeted by using a circumscribed rectangle or the like for the label.

図14は、第1実施形態において長方形以外のラベルを対象とする場合の説明図である。
図14において、(a)はラベル形状が三角形の場合、(b)はラベル形状が五角形の場合、(c)はラベル形状が六角形の場合、(d)はラベル形状が自由形状の場合、をそれぞれ示している。
FIG. 14 is an explanatory diagram when a label other than a rectangle is targeted in the first embodiment.
14, (a) is when the label shape is a triangle, (b) is when the label shape is a pentagon, (c) is when the label shape is a hexagon, (d) is when the label shape is a free shape, Respectively.

いずれの場合も、ラベルの“スケール(サイズ)”という考えを用いて、近似的に外接長方形(または直方体)を定義し、縦横のラベルサイズとして、A,Bを定義する。このようにラベルサイズを定義することによって、原理的に、多角形や自由形状の場合でもラベルを重ならずに配置させることが可能である。   In either case, using the idea of “scale (size)” of the label, a circumscribed rectangle (or cuboid) is defined approximately, and A and B are defined as vertical and horizontal label sizes. By defining the label size in this way, in principle, labels can be arranged without overlapping even in the case of polygons or free shapes.

(第1実施形態における実験例)
次に、図15A〜15Cを参照しながら、第1実施形態のグラフ可視化座標計算装置1による実験例について説明する。図15Aは、ラベルのサイズおよびエッジに関する情報の一覧表である。図15Bは、図15Aに示すラベルに関するFR法による可視化の計算結果を示す図である。図15Cは、図15Aに示すラベルに関する第1実施形態の手法による可視化の計算結果を示す図である。
(Experimental example in the first embodiment)
Next, an experimental example using the graph visualization coordinate calculation apparatus 1 according to the first embodiment will be described with reference to FIGS. FIG. 15A is a list of information on label sizes and edges. FIG. 15B is a diagram showing a calculation result of visualization by the FR method for the label shown in FIG. 15A. FIG. 15C is a diagram illustrating a calculation result of visualization by the method of the first embodiment relating to the label illustrated in FIG. 15A.

図15Aに示すように、62個のラベル(「Beak」以下)に関して、ラベルサイズ(Ai,Bi)とエッジ数(Ei)が与えられている。なお、各ノードに関するエッジの相手ノードの情報などについては記載を省略している。図15Bに示すように、FR法による可視化では、特にラベルが密集している箇所でラベル同士が重なり合っていることがわかる。   As shown in FIG. 15A, the label size (Ai, Bi) and the number of edges (Ei) are given for 62 labels (below “Beak”). It should be noted that the description of the edge counterpart node regarding each node is omitted. As shown in FIG. 15B, it can be seen that in the visualization by the FR method, the labels are overlapped particularly at a location where the labels are dense.

一方、第1実施形態の手法による可視化では、ラベル同士がほとんど重なり合っておらず、FR法(図15B)と比べて、劇的に改善したことがわかる。   On the other hand, in the visualization according to the method of the first embodiment, the labels hardly overlap each other, and it can be seen that the method is dramatically improved as compared with the FR method (FIG. 15B).

以上説明したように、第1実施形態のグラフ可視化座標計算装置1によれば、ノードが密集した領域や、サイズの異なるラベルについても、重なりが無いようにラベルを配置することができる。   As described above, according to the graph visualization coordinate calculation apparatus 1 of the first embodiment, labels can be arranged so as not to overlap even in a region where nodes are densely arranged or labels having different sizes.

また、第1実施形態では、非軸対称ポテンシャルが、シンプルな楕円曲線を表す関数に基づいて設定されていることで、計算量が少なくて済む。つまり、ポテンシャル形状を楕円にすることにより、加速度として定義されるポテンシャル勾配を非常にシンプルな関数として求めることができ、実アプリケーションヘの実装が容易となる利点がある。なお、ポテンシャル形状を多角形にした場合、ポテンシャル勾配の導出が複雑になり、さらに多角形の角の部分など、特異点などが存在し、条件分岐による処理が複雑化する。   In the first embodiment, since the non-axisymmetric potential is set based on a function representing a simple elliptic curve, the calculation amount can be reduced. That is, by making the potential shape an ellipse, the potential gradient defined as the acceleration can be obtained as a very simple function, and there is an advantage that it can be easily mounted on an actual application. If the potential shape is a polygon, the derivation of the potential gradient is complicated, and there are singular points such as corners of the polygon, which complicates processing by conditional branching.

さらに、第1実施形態では、非軸対称ポテンシャルが、非軸対称な関数と軸対称な関数との和の関数に基づいて設定されており、ノード間の距離が大きいほど非軸対称な関数の値が軸対称な関数の値に対して小さな割合になるように設定されている。これにより、各ノードにおいて、近傍ではラベルの大きさに依存した反発力を与え、遠方では近似的にユークリッド距離のみに依存した反発力を与えることができる。したがって、Tree-codeのようなポテンシャルの重ね合わせによる近似計算を適用することができ、ノードの数が数万あるいは数十万といった大きな場合でも、比較的短い時間で計算を完了することができる。   Furthermore, in the first embodiment, the non-axisymmetric potential is set based on the function of the sum of the non-axisymmetric function and the axially symmetric function, and the larger the distance between the nodes, the more the non-axisymmetric function. The value is set to be a small ratio with respect to the value of the axisymmetric function. Thereby, at each node, a repulsive force depending on the size of the label can be given in the vicinity, and a repulsive force depending only on the Euclidean distance can be given at a distance. Therefore, approximate calculation by superposition of potentials such as Tree-code can be applied, and calculation can be completed in a relatively short time even when the number of nodes is as large as tens of thousands or hundreds of thousands.

また、グラフ可視化座標計算装置1における各処理は、コンピュータのCPUがプログラムを実行することで、実現することができる。また、コンピュータに読み取り可能な記録媒体に、そのプログラムを記録することもできる。   Moreover, each process in the graph visualization coordinate calculation apparatus 1 is realizable because CPU of a computer runs a program. The program can also be recorded on a computer-readable recording medium.

[第2実施形態における計算例]
第2実施形態では、系のエネルギーを、前記した式(5b)、式(8)、式(11)、式(12)の代わりに、次の式(15)、式(16)、式(17)、式(18)として定義する。

Figure 2009146382
[Calculation example in the second embodiment]
In the second embodiment, the energy of the system is changed to the following formula (15), formula (16), formula (12) instead of formula (5b), formula (8), formula (11), and formula (12). 17), defined as equation (18).
Figure 2009146382

Figure 2009146382
Figure 2009146382

Figure 2009146382
Figure 2009146382

ここで、xj,yjはj番目のノードのx座標、y座標、xi,yiはi番目のノードのx座標、y座標、Ai,Biはi番目のノードのx軸方向、y軸方向のサイズ、Aj,Bjはj番目のノードのx軸方向、y軸方向のサイズ、α,k,kαは無次元量の定数、qiはi番目のノードの反発係数、qjはj番目のノードの反発係数、Eはエッジの総数、Eiはi番目のノードにつながっているエッジの数、Nはノードの総数である。 Here, xj and yj are the x-coordinate and y-coordinate of the j-th node, xi and yi are the x-coordinate and y-coordinate of the i-th node, and Ai and Bi are the x-axis direction and y-axis direction of the i-th node. Size, Aj, Bj is the size of the j-th node in the x-axis direction and y-axis direction, α, k, k α are constants of dimensionless quantities, qi is the restitution coefficient of the i-th node, and qj is the j-th node Where E is the total number of edges, Ei is the number of edges connected to the i-th node, and N is the total number of nodes.

式(5b)と式(15)とにおける違いは、式(15)には反発係数qi,qjがある点である。反発係数qi,qjは、非特許文献5に記載されているAndreas(2004)の手法に用いられているもので、Andreas(2004)の手法で用いられている系のエネルギーは、次の式(19)として定義されている。   The difference between the equation (5b) and the equation (15) is that the equation (15) has a restitution coefficient qi, qj. The restitution coefficients qi and qj are used in the method of Andreas (2004) described in Non-Patent Document 5, and the energy of the system used in the method of Andreas (2004) is expressed by the following formula ( 19).

Figure 2009146382
Figure 2009146382

ちなみに、Andreas(2004)の手法では、ノードの反発係数qi,qjが可視化結果に大きく影響を与えてしまい、全体の可視化結果が、FR法において算出された形状と全く変わってしまう。
それに対して、式(15)では、ノードの反発係数qi,qjは、固有楕円ポテンシャルの成分にしかかからない。そのため、遠距離力は、第2項が強く効くことになり、全体の可視化結果の形状に大きな影響を与えずに、かつ、近傍では、密にリンク結合している領域での重なりを回避することができる。
Incidentally, in the method of Andreas (2004), the restitution coefficients qi and qj of the node greatly affect the visualization result, and the entire visualization result completely changes from the shape calculated in the FR method.
On the other hand, in the equation (15), the repulsion coefficients qi and qj of the node are applied only to the components of the intrinsic elliptic potential. Therefore, the long-range force has a strong effect on the second term, and does not significantly affect the shape of the entire visualization result, and avoids overlapping in a close-link region in the vicinity. be able to.

さらに、第2実施形態において、反発係数qiは、i番目のノードにつながっているエッジの数を重みとして与え、次の式(20)として定義する。   Furthermore, in the second embodiment, the restitution coefficient qi is defined as the following equation (20), giving the number of edges connected to the i-th node as a weight.

Figure 2009146382
Figure 2009146382

なお、式(20)は、qi=sqrt(Ei)やqi=Ei×Eiなどのように、様々な関数で与えることが可能である。また、qi=Wとして、反発係数を定数として与えることも可能である。
このように、重みを加えることによって、ラベルの重なりを回避する精度の向上が見られた。この結果については、後記する。
Expression (20) can be given by various functions such as qi = sqrt (Ei) and qi = Ei × Ei. It is also possible to give the coefficient of restitution as a constant with qi = W.
As described above, by adding the weight, the accuracy of avoiding the overlapping of the labels was improved. This result will be described later.

次に、式(8)と式(16)との相違点を、図16を用いて説明する。図16は、第1実施形態のポテンシャル場の考え方と第2実施形態のポテンシャル場の考え方との相違を示す図である。
図16の基準座標に示すように、i番目のラベルの形状が縦長で、j番目のラベルの形状が横長だった場合を考える。この場合、第1実施形態の考え方では、i番目のノードが受ける力は、j番目のノードの大きさおよびラベルの横長の形状のみを考慮していたため、j番目のノードに比例した力となる。すなわち、式(11)と式(12)とから、i番目のノードは、j番目のノードのラベルの形状がAj>Bjなので、j番目のノードに対して縦側に配置される方向に力を受けることがわかる。また、同様にj番目のノードが受ける力は、i番目のノードの大きさおよびラベルの縦長の形状のみを考慮していたため、i番目のノードに比例した力となる。すなわち、j番目のノードは、i番目のラベルの形状がBi>Aiなので、i番目のノードに対して横側に配置される方向に力を受ける。
Next, the difference between Expression (8) and Expression (16) will be described with reference to FIG. FIG. 16 is a diagram illustrating a difference between the concept of the potential field of the first embodiment and the concept of the potential field of the second embodiment.
Consider the case where the shape of the i-th label is vertically long and the shape of the j-th label is horizontally long as indicated by the reference coordinates in FIG. In this case, in the idea of the first embodiment, the force received by the i-th node is a force proportional to the j-th node because only the size of the j-th node and the horizontally long shape of the label are considered. . That is, from the expressions (11) and (12), the i-th node has a force in a direction in which it is arranged on the vertical side with respect to the j-th node since the label shape of the j-th node is Aj> Bj. I understand that Similarly, the force received by the j-th node is proportional to the i-th node because only the size of the i-th node and the vertically long shape of the label are considered. In other words, since the shape of the i-th label is Bi> Ai, the j-th node receives a force in the direction in which it is arranged laterally with respect to the i-th node.

それに対して、第2実施形態の考え方では、i番目のノードが受ける力は、自身(i番目のノード)の大きさおよび形状を考慮しているため、すなわち、Ai+AjおよびBi+Bjというように、自身のAiとBiを考慮しているため、式(17)と式(18)とから、i番目とj番目のノードの大きさの和に比例した力となる。また、j番目のノードが受ける力についても、同様に、自身(j番目のノード)の大きさおよび形状を考慮しているため、i番目とj番目のノードの大きさの和に比例した力となる。したがって、第2実施形態におけるポテンシャル場は、力の対称性が保たれた状態となる。そのため、第2実施形態では、計算の精度が向上するとともに計算の収束性が向上し、計算量を軽減させることが可能である。   On the other hand, in the concept of the second embodiment, the force received by the i-th node takes into account the size and shape of itself (i-th node), that is, Ai + Aj and Bi + Bj. Therefore, the force is proportional to the sum of the sizes of the i-th and j-th nodes from the equations (17) and (18). Similarly, the force received by the j-th node takes into account the size and shape of itself (j-th node), and therefore is proportional to the sum of the sizes of the i-th and j-th nodes. It becomes. Therefore, the potential field in the second embodiment is in a state in which force symmetry is maintained. Therefore, in the second embodiment, calculation accuracy is improved, calculation convergence is improved, and the amount of calculation can be reduced.

次に、式(17)および式(18)について、以下に説明する。
各式(17),(18)は、系のエネルギー式(15)に対応して得られる加速度である。この加速度の各式を用いることで、ポテンシャルの形状、つまり、ラベルのサイズや形状に適した目的関数の算出式を設定することができる。
なお、3次元の場合には、次の式(21)として定義される。
Next, Formula (17) and Formula (18) will be described below.
Expressions (17) and (18) are accelerations obtained corresponding to the system energy expression (15). By using these acceleration equations, it is possible to set an objective function calculation formula suitable for the shape of the potential, that is, the size and shape of the label.
In the case of three dimensions, it is defined as the following equation (21).

Figure 2009146382
Figure 2009146382

(第2実施形態における実験例)
次に、第1実施形態の実験例において用いた図15Aのデータを対象として、第2実施形態における実験例について以下に説明する。
(Experimental example in the second embodiment)
Next, the experimental example in the second embodiment will be described below with the data of FIG. 15A used in the experimental example of the first embodiment as an object.

(スケーリング)
まず、ラベル付きグラフ可視化において、ラベルの重なりを確実に回避する方法として、縮尺の変更、すなわち、スケーリングについて、図17を用いて説明する。図17は、スケーリングによる重なりの回避手法の一例を示す図である。
図17では、i番目のラベルとj番目のラベルとを対象として、その重なりを、x軸方向については、sx=(Ai+Aj)/{2|xj−xi|}として表し、y軸方向については、sy=(Bi+Bj)/{2|yj−yi|}として表す。すなわち、重なりが大きいほど、|xj−xi|または|yj−yi|が小さくなるため、sxまたはsyは大きくなる。
したがって、重なり回避する最小スケーリングsijは、i番目のノードの座標(xi,yi)およびj番目のノードの座標(xj,yj)を用いて、次の式(22)として定義される。
(scaling)
First, scale change, that is, scaling will be described with reference to FIG. 17 as a method for reliably avoiding overlapping of labels in visualization of a labeled graph. FIG. 17 is a diagram illustrating an example of a technique for avoiding overlap by scaling.
In FIG. 17, for the i-th label and the j-th label, the overlap is expressed as sx = (Ai + Aj) / {2 | xj−xi |} in the x-axis direction, and in the y-axis direction. , Sy = (Bi + Bj) / {2 | yj−yi |}. That is, the larger the overlap, the smaller | xj-xi | or | yj-yi |, so that sx or sy becomes larger.
Therefore, the minimum scaling sij for avoiding overlap is defined as the following equation (22) using the coordinates (xi, yi) of the i-th node and the coordinates (xj, yj) of the j-th node.

Figure 2009146382
Figure 2009146382

ここで、全体の最小スケーリングSは、全てのi,jの組み合わせに対してのsijの最大値であって、次の式(23)として定義される。   Here, the overall minimum scaling S is the maximum value of sij for all combinations of i and j, and is defined as the following equation (23).

Figure 2009146382
Figure 2009146382

そして、可視化計算によって得られた座標値全体をS倍することによって、ラベル同士が重ならないように配置することが可能となる。   And it becomes possible to arrange | position so that labels may not overlap by multiplying the whole coordinate value obtained by visualization calculation S times.

(ハードウェア構成など)
第2実施形態におけるグラフ可視化座標計算装置1のハードウェア構成および処理の流れは、第1実施形態と同様であるので説明を省略する。
(実験結果)
第2実施形態のグラフ可視化座標計算装置1による実験結果について、図18A〜図18Dを用いて以下に説明する。図18Aは、FR法による可視化の計算結果を示す図である。図18Bは、第1実施形態の手法(式(5a);α=2の場合)による可視化の計算結果を示す図である。図18Cは、第2実施形態の手法(式(15);α=2、qi=1の場合)による可視化の計算結果を示す図である。図18Dは、第2実施形態の手法(式(15);α=2、qi=Eiの場合)による可視化の計算結果を示す図である。
(Hardware configuration etc.)
The hardware configuration and the flow of processing of the graph visualization coordinate calculation apparatus 1 in the second embodiment are the same as those in the first embodiment, and thus the description thereof is omitted.
(Experimental result)
The experimental result by the graph visualization coordinate calculation apparatus 1 of 2nd Embodiment is demonstrated below using FIG. 18A-FIG. 18D. FIG. 18A is a diagram showing a calculation result of visualization by the FR method. FIG. 18B is a diagram illustrating a calculation result of visualization by the method of the first embodiment (formula (5a); α = 2). FIG. 18C is a diagram illustrating a calculation result of visualization by the method of the second embodiment (formula (15); α = 2, qi = 1). FIG. 18D is a diagram illustrating a calculation result of visualization by the method of the second embodiment (formula (15); α = 2, qi = Ei).

図18Aに示すように、FR法による可視化では、ノードが密集した領域の影響によって、描画領域全体の広がりに対して、個々のラベルのサイズが相対的に小さくなっていることがわかる。
図18Bでは、図18Aと比較して、個々のラベルのサイズが大きくなっている。
図18Cは、図18Bと比較して、わずかながらラベルのサイズが大きくなっている。
図18Dでは、図18Cと比較して、ラベルのサイズが大きくなっている。つまり、ラベルが重ならず、かつ、サイズが大きくなっているため、ラベルの視認性が高くなっている。
As shown in FIG. 18A, in the visualization by the FR method, it can be seen that the size of each label is relatively small with respect to the entire drawing area due to the influence of the area where the nodes are dense.
In FIG. 18B, the size of each label is larger than in FIG. 18A.
In FIG. 18C, the label size is slightly larger than that in FIG. 18B.
In FIG. 18D, the size of the label is larger than in FIG. 18C. That is, since the labels do not overlap and the size is increased, the visibility of the labels is increased.

次に、図18A〜図18Dに示した結果を、定量的に比較するために、ラベルの面積占有率を用いた評価結果について、図19を用いて説明する。図19は、可視化結果の一例を示した図である。   Next, in order to quantitatively compare the results shown in FIGS. 18A to 18D, the evaluation results using the label area occupancy will be described with reference to FIG. FIG. 19 is a diagram illustrating an example of a visualization result.

まず、図19に示した変数X,Y,XY,Lについて説明する。
X,Yはそれぞれ、ラベルの全体が描かれている範囲を現す描画領域の、x軸方向の大きさとy軸方向の大きさとを表していて、次の式(24),式(25)として定義される。
First, the variables X, Y, XY, and L shown in FIG. 19 will be described.
X and Y represent the size in the x-axis direction and the size in the y-axis direction, respectively, of the drawing area that represents the range in which the entire label is drawn. The following expressions (24) and (25) Defined.

Figure 2009146382
Figure 2009146382

このとき、描画領域の面積がXYである。そして、ラベルの面積占有率Lは、次の式(26)として定義される。   At this time, the area of the drawing region is XY. Then, the area occupancy L of the label is defined as the following equation (26).

Figure 2009146382
Figure 2009146382

すなわち、ラベルの面積占有率Lが大きいほど、ラベルが大きく表示されるため、良い手法であるといえる。
図19に示されたラベルの面積占有率Lを比較すると、FR法に比べて、各実施形態において、大きな改善が見られる。特に、第2実施形態において、最も大きな改善が見られる。
That is, it can be said that this is a good technique because the larger the label area occupancy L is, the larger the label is displayed.
When comparing the area occupancy L of the labels shown in FIG. 19, a great improvement is seen in each embodiment compared to the FR method. In particular, the greatest improvement is observed in the second embodiment.

以上説明したように、第1実施形態のグラフ可視化座標計算装置1と同様に、第2実施形態のグラフ可視化座標計算装置1によれば、ノードが密集した領域や、サイズの異なるラベルについても、重なりが無いようにラベルを配置することができる。
さらに、第2実施形態では、式(16)および式(21)の|x〜ij|を用いることにより、ポテンシャル場において、力の対称性が保たれた状態となる。また、反発係数qi,qjを導入することにより、力の対称性を保ちつつ、さらにリンクの密な領域(複数のエッジが狭い領域で複雑に交差している状況)での計算精度を向上させることができる。そして、計算精度が向上したことによって、計算の収束性も向上し、計算量を軽減させることが可能である。
As explained above, according to the graph visualization coordinate calculation device 1 of the second embodiment, as with the graph visualization coordinate calculation device 1 of the first embodiment, the area where nodes are densely packed and the labels having different sizes can be obtained. Labels can be placed so that there is no overlap.
Furthermore, in the second embodiment, by using | x to ij | in Expression (16) and Expression (21), force symmetry is maintained in the potential field. In addition, by introducing restitution coefficients qi and qj, the accuracy of calculation is improved while maintaining force symmetry and in a dense link area (a situation where a plurality of edges intersect in a complicated manner in a narrow area). be able to. Further, by improving the calculation accuracy, the convergence of calculation can be improved and the amount of calculation can be reduced.

以上で各実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。
例えば、グラフ可視化座標計算装置1の演算手段2を構成する各部は、複数の装置に機能を分散配置してもよい。これにより、各装置への負荷が分散され、高速な処理が実現可能となる。
その他、ハードウェア、プログラムなどの具体的な構成について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
Although description of each embodiment is completed above, the aspect of the present invention is not limited to these.
For example, each part which comprises the calculating means 2 of the graph visualization coordinate calculation apparatus 1 may disperse | distribute a function to several apparatus. As a result, the load on each device is distributed, and high-speed processing can be realized.
In addition, specific configurations such as hardware and programs can be appropriately changed without departing from the gist of the present invention.

第1実施形態のグラフ可視化座標計算装置の構成図である。It is a block diagram of the graph visualization coordinate calculation apparatus of 1st Embodiment. ノード(点)とエッジの模式図である。It is a schematic diagram of a node (point) and an edge. ノード(文字列)とエッジの模式図であるIt is a schematic diagram of nodes (character strings) and edges 従来の可視化手法による、各ノードのポテンシャルの模式図である。It is a schematic diagram of the potential of each node by the conventional visualization method. 従来の可視化手法による、大きさの等しいラベルの可視化例である。It is an example of visualization of labels of equal size by a conventional visualization method. ラベルが長い文字列の場合の可視化表示例である。It is an example of a visualization display in the case of a character string with a long label. 大きさの異なるラベルの表示例である。It is a display example of labels having different sizes. 非軸対称ポテンシャルを利用した、各ノードのポテンシャルの模式図である。It is a schematic diagram of the potential of each node using a non-axisymmetric potential. 大きさの異なるラベルの表示例である。It is a display example of labels having different sizes. 非軸対称ポテンシャルを利用した、各ノードのポテンシャルの模式図(その2)である。It is the schematic diagram (the 2) of the potential of each node using a non-axisymmetric potential. 図6の各ラベルの配置を変えることで重なりを無くした様子を示している。FIG. 7 shows a state in which the overlap is eliminated by changing the arrangement of the labels in FIG. (a)は式(14)の右辺第1項成分、(b)は式(14)の右辺第2項成分、(c)は(a)と(b)の和を示したものである。(A) is the first term component on the right side of Equation (14), (b) is the second term component on the right side of Equation (14), and (c) is the sum of (a) and (b). グラフ可視化座標計算装置1による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process by the graph visualization coordinate calculation apparatus 1. FIG. (a)はラベル形状が三角形の場合、(b)はラベル形状が五角形の場合、(c)はラベル形状が六角形の場合、(d)はラベル形状が自由形状の場合、をそれぞれ示している。(A) shows the case where the label shape is a triangle, (b) shows the case where the label shape is a pentagon, (c) shows the case where the label shape is a hexagon, and (d) shows the case where the label shape is a free shape. Yes. ラベルのサイズおよびエッジに関する情報の一覧表である。It is a table | surface of the information regarding the size and edge of a label. FR法による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by FR method. 第1実施形態の手法による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by the method of 1st Embodiment. 第1実施形態のポテンシャル場の考え方と第2実施形態のポテンシャル場の考え方との相違を示す図である。It is a figure which shows the difference with the idea of the potential field of 1st Embodiment, and the idea of the potential field of 2nd Embodiment. スケーリングによる重なりの回避手法の一例を示す図である。It is a figure which shows an example of the avoidance technique of the overlap by scaling. FR法による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by FR method. 第1実施形態の手法(式(5a);α=2の場合)による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by the method (Formula (5a); (alpha) = 2 case) of 1st Embodiment. 第2実施形態の手法(式(15);α=2、qi=1の場合)による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by the method (Formula (15); α = 2, qi = 1) of 2nd Embodiment. 第2実施形態の手法(式(15);α=2、qi=Eiの場合)による可視化の計算結果を示す図である。It is a figure which shows the calculation result of visualization by the method (Formula (15); when α = 2 and qi = Ei) of 2nd Embodiment. 可視化結果の一例を示した図である。It is the figure which showed an example of the visualization result.

符号の説明Explanation of symbols

1 グラフ可視化座標計算装置
2 演算手段
3 入力手段
4 記憶手段
5 出力手段
6 バスライン
21 初期配置部
22 加速度導出部(ポテンシャル勾配導出部)
23 座標更新処理部
24 エネルギー導出部
25 計算終了条件判定部
26 データ制御部
DESCRIPTION OF SYMBOLS 1 Graph visualization coordinate calculation apparatus 2 Calculation means 3 Input means 4 Storage means 5 Output means 6 Bus line 21 Initial arrangement part 22 Acceleration derivation part (potential gradient derivation part)
23 Coordinate Update Processing Unit 24 Energy Deriving Unit 25 Calculation Completion Condition Determination Unit 26 Data Control Unit

Claims (8)

大きさを有する複数のノード、および、前記ノード間をつなぐ複数のエッジ、を備えるネットワークをグラフとして可視化するグラフ可視化座標計算装置であって、
対象となるネットワークのノードの個数、各ノードの空間軸方向ごとのサイズ、エッジ情報を入力する入力手段と、
演算を行う演算手段と、
計算結果を記憶する記憶手段と、
前記計算結果を出力する出力手段と、を有し、
前記演算手段は、
すべての前記ノードの初期座標を設定する初期配置部と、
すべての前記ノード間に所定の斥力が働いて斥力エネルギーが発生し、前記エッジでつながれた前記ノード間にそのノード間の距離に応じた所定の引力が働いて引力エネルギーが発生し、前記ノードごとに、そのノードの空間軸方向ごとのサイズに基づいてエネルギーのポテンシャルが設定され、少なくとも前記斥力エネルギーは前記ポテンシャルに依存して発生するというモデルの下、前記ノードごとに、発生する前記斥力エネルギーと前記引力エネルギーとの総和をそのノードのポテンシャルエネルギーとして算出するエネルギー導出部と、
前記ノードごとに、前記算出したそのノードのポテンシャルエネルギーに基づいてポテンシャルエネルギー勾配を算出するポテンシャル勾配導出部と、
前記算出したノードごとのポテンシャルエネルギー勾配に基づいて、すべての前記ノードの座標更新を行う座標更新処理部と、
所定の計算終了条件に基づいて、計算を終了するか否かを判定する計算終了条件判定部と、
前記計算を終了すると判定された場合、すべての前記ノードの座標を含む計算結果を前記記憶手段および前記出力手段の少なくとも一方に与えるデータ制御部と、
を備えることを特徴とするグラフ可視化座標計算装置。
A graph visualization coordinate calculation device for visualizing a network including a plurality of nodes having a size and a plurality of edges connecting between the nodes as a graph,
An input means for inputting the number of nodes of the target network, the size of each node in the spatial axis direction, and edge information;
A calculation means for performing a calculation;
Storage means for storing calculation results;
Output means for outputting the calculation result,
The computing means is
An initial placement section for setting initial coordinates of all the nodes;
A predetermined repulsive force is generated between all the nodes to generate a repulsive energy, and a predetermined attractive force according to the distance between the nodes is generated between the nodes connected by the edge to generate an attractive energy, The potential of energy is set based on the size of each node in the spatial axis direction, and at least the repulsive energy is generated depending on the potential. An energy deriving unit that calculates the sum of the attractive energy as the potential energy of the node;
A potential gradient derivation unit that calculates a potential energy gradient based on the calculated potential energy of the node for each node;
Based on the calculated potential energy gradient for each node, a coordinate update processing unit that updates the coordinates of all the nodes;
A calculation end condition determining unit that determines whether to end the calculation based on a predetermined calculation end condition;
A data control unit that provides a calculation result including coordinates of all the nodes to at least one of the storage unit and the output unit when it is determined to end the calculation;
A graph visualization coordinate calculation apparatus comprising:
前記ポテンシャルは、楕円曲線関数に基づいて設定されていることを特徴とする請求項1に記載のグラフ可視化座標計算装置。   The graph visualization coordinate calculation apparatus according to claim 1, wherein the potential is set based on an elliptic curve function. 前記斥力エネルギーは、前記ポテンシャルに依存して発生する第1のエネルギーと、前記ポテンシャルに依存せず前記ノード間の距離に依存して発生する第2のエネルギーと、の和として算出され、前記ノード間の距離が大きいほど、前記第1のエネルギーが前記第2のエネルギーと比べて小さな割合になるように設定されている
ことを特徴とする請求項1または請求項2に記載のグラフ可視化座標計算装置。
The repulsive energy is calculated as the sum of the first energy generated depending on the potential and the second energy generated depending on the distance between the nodes without depending on the potential, 3. The graph visualization coordinate calculation according to claim 1, wherein the first energy is set to have a smaller ratio as compared to the second energy as the distance between the two is larger. apparatus.
前記モデルの下で、すべての前記ノード間のエネルギーの総和Ψは、右辺第1項が前記引力エネルギーを表し、右辺第2項が前記斥力エネルギーを表す次の式によって与えられるものとし、
Figure 2009146382

ただし、
Figure 2009146382

前記ポテンシャル勾配導出部は、前記ノードごとのポテンシャルエネルギー勾配を、前記すべてのノード間のエネルギーの総和Ψを前記ノードごとに偏微分した次の式に基づいて算出する
Figure 2009146382

ことを特徴とする請求項1に記載のグラフ可視化座標計算装置。
ただし、xj,yjはj番目のノードのx座標、y座標、xi,yiはi番目のノードのx座標、y座標、Aj,Bjはj番目のノードのx軸方向、y軸方向のサイズ、α,k,kαは無次元量の定数、Eはエッジの総数、Eiはi番目のノードにつながっているエッジの数、Nはノードの総数とする。
Under the model, the sum Ψ of the energy between all the nodes is given by the following equation where the first term on the right side represents the attractive energy and the second term on the right side represents the repulsive energy:
Figure 2009146382

However,
Figure 2009146382

The potential gradient deriving unit calculates a potential energy gradient for each of the nodes based on the following expression obtained by partial differentiation of the total energy Ψ of all the nodes for each of the nodes.
Figure 2009146382

The graph visualization coordinate calculation apparatus according to claim 1.
Where xj and yj are the x-coordinate and y-coordinate of the j-th node, xi and yi are the x-coordinate and y-coordinate of the i-th node, and Aj and Bj are the sizes of the j-th node in the x-axis direction and y-axis direction. , Α, k, k α are dimensionless constants, E is the total number of edges, Ei is the number of edges connected to the i-th node, and N is the total number of nodes.
前記モデルの下で、すべての前記ノード間のエネルギーの総和Ψは、右辺第1項が前記引力エネルギーを表し、右辺第2項が前記斥力エネルギーを表す次の式によって与えられるものとし、
Figure 2009146382

ただし、
Figure 2009146382

前記ポテンシャル勾配導出部は、前記ノードごとのポテンシャルエネルギー勾配を、前記すべてのノード間のエネルギーの総和Ψを前記ノードごとに偏微分した次の式に基づいて算出する
Figure 2009146382

ことを特徴とする請求項1に記載のグラフ可視化座標計算装置。
ただし、xj,yjはj番目のノードのx座標、y座標、xi,yiはi番目のノードのx座標、y座標、Ai,Biはi番目のノードのx軸方向、y軸方向のサイズ、Aj,Bjはj番目のノードのx軸方向、y軸方向のサイズ、α,k,kαは無次元量の定数、qiはi番目のノードの反発係数、qjはj番目のノードの反発係数、Eはエッジの総数、Eiはi番目のノードにつながっているエッジの数、Nはノードの総数とする。
Under the model, the sum Ψ of the energy between all the nodes is given by the following equation where the first term on the right side represents the attractive energy and the second term on the right side represents the repulsive energy:
Figure 2009146382

However,
Figure 2009146382

The potential gradient deriving unit calculates a potential energy gradient for each of the nodes based on the following expression obtained by partial differentiation of the total energy Ψ of all the nodes for each of the nodes.
Figure 2009146382

The graph visualization coordinate calculation apparatus according to claim 1.
Where xj and yj are the x-coordinate and y-coordinate of the j-th node, xi and yi are the x-coordinate and y-coordinate of the i-th node, and Ai and Bi are the x-axis direction and y-axis direction sizes of the i-th node. , Aj, Bj are the sizes of the j-th node in the x-axis direction and the y-axis direction, α, k, k α are constants of dimensionless quantities, qi is the restitution coefficient of the i-th node, and qj is the j-th node The coefficient of restitution, E is the total number of edges, Ei is the number of edges connected to the i-th node, and N is the total number of nodes.
大きさを有する複数のノード、および、前記ノード間をつなぐ複数のエッジ、を備えるネットワークをグラフとして可視化するグラフ可視化座標計算装置によるグラフ可視化座標計算方法であって、
前記グラフ可視化座標計算装置は、
対象となるネットワークのノードの個数、各ノードの空間軸方向ごとのサイズ、エッジ情報を入力する入力手段と、
演算を行う演算手段と、
計算結果を記憶する記憶手段と、
前記計算結果を出力する出力手段と、を有し、
前記演算手段において、
初期配置部が、すべての前記ノードの初期座標を設定するステップを行い、
その後、
エネルギー導出部が、すべての前記ノード間に所定の斥力が働いて斥力エネルギーが発生し、前記エッジでつながれた前記ノード間にそのノード間の距離に応じた所定の引力が働いて引力エネルギーが発生し、前記ノードごとに、そのノードの空間軸方向ごとのサイズに基づいてエネルギーのポテンシャルが設定され、少なくとも前記斥力エネルギーは前記ポテンシャルに依存して発生するというモデルの下、前記ノードごとに、発生する前記斥力エネルギーと前記引力エネルギーとの総和をそのノードのポテンシャルエネルギーとして算出するステップと、
ポテンシャル勾配導出部が、前記ノードごとに、前記算出したそのノードのポテンシャルエネルギーに基づいてポテンシャルエネルギー勾配を算出するステップと、
座標更新処理部が、前記算出したノードごとのポテンシャルエネルギー勾配に基づいて、すべての前記ノードの座標更新を行うステップと、を、所定の計算終了条件が満たされるまで繰り返し、
所定の計算終了条件が満たされた場合、データ制御部が、すべての前記ノードの座標を含む計算結果を前記記憶手段および前記出力手段の少なくとも一方に与えるステップを行う
ことを特徴とするグラフ可視化座標計算方法。
A graph visualization coordinate calculation method by a graph visualization coordinate calculation device for visualizing a network including a plurality of nodes having a size and a plurality of edges connecting the nodes as a graph,
The graph visualization coordinate calculation apparatus includes:
An input means for inputting the number of nodes of the target network, the size of each node in the spatial axis direction, and edge information;
A calculation means for performing a calculation;
Storage means for storing calculation results;
Output means for outputting the calculation result,
In the calculation means,
An initial placement unit performs a step of setting initial coordinates of all the nodes;
afterwards,
The energy deriving unit generates repulsive energy by applying a predetermined repulsive force between all the nodes, and generates a repulsive energy between the nodes connected by the edge according to a predetermined attractive force according to the distance between the nodes. For each node, an energy potential is set based on the size of each node in the spatial axis direction, and at least the repulsive energy is generated depending on the potential. Calculating the sum of the repulsive energy and the attractive energy as the potential energy of the node;
A potential gradient deriving unit, for each node, calculating a potential energy gradient based on the calculated potential energy of the node;
The coordinate update processing unit repeats the step of updating the coordinates of all the nodes based on the calculated potential energy gradient for each node, until a predetermined calculation end condition is satisfied,
The graph visualization coordinates, wherein when a predetermined calculation termination condition is satisfied, the data control unit performs a step of providing a calculation result including coordinates of all the nodes to at least one of the storage unit and the output unit. Method of calculation.
請求項6に記載のグラフ可視化座標計算方法をコンピュータに実行させることを特徴とするグラフ可視化座標計算プログラム。   A graph visualization coordinate calculation program that causes a computer to execute the graph visualization coordinate calculation method according to claim 6. 請求項7に記載のグラフ可視化座標計算プログラムが記録されたことを特徴とするコンピュータに読み取り可能な記録媒体。   A computer-readable recording medium in which the graph visualization coordinate calculation program according to claim 7 is recorded.
JP2008159841A 2007-11-19 2008-06-19 Graph visualization coordinate calculation apparatus, method, program, and recording medium recording the program Active JP4939486B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008159841A JP4939486B2 (en) 2007-11-19 2008-06-19 Graph visualization coordinate calculation apparatus, method, program, and recording medium recording the program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007299938 2007-11-19
JP2007299938 2007-11-19
JP2008159841A JP4939486B2 (en) 2007-11-19 2008-06-19 Graph visualization coordinate calculation apparatus, method, program, and recording medium recording the program

Publications (2)

Publication Number Publication Date
JP2009146382A true JP2009146382A (en) 2009-07-02
JP4939486B2 JP4939486B2 (en) 2012-05-23

Family

ID=40916877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008159841A Active JP4939486B2 (en) 2007-11-19 2008-06-19 Graph visualization coordinate calculation apparatus, method, program, and recording medium recording the program

Country Status (1)

Country Link
JP (1) JP4939486B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014146299A (en) * 2013-01-30 2014-08-14 Fujitsu Ltd Simulation program, simulation method, and simulation device
CN106709897A (en) * 2016-12-28 2017-05-24 武汉大学 Method and system for searching optimal splicing lines among orthographic images based on gradient domain
JP2017151780A (en) * 2016-02-25 2017-08-31 富士通株式会社 Plotting method, plotting device and plotting program
JP2018156234A (en) * 2017-03-16 2018-10-04 株式会社アルム Information processing apparatus, information processing method, and information processing program
US10187271B2 (en) 2013-11-13 2019-01-22 Nec Corporation Network-diagram rendering system, network-diagram rendering method, and network-diagram rendering computer readable medium
CN112632196A (en) * 2021-01-06 2021-04-09 中国工商银行股份有限公司 Data visualization method and device and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0830799A (en) * 1994-07-13 1996-02-02 Fujitsu Ltd Automatically laying out method for graph
JP2003016465A (en) * 2001-06-19 2003-01-17 Internatl Business Mach Corp <Ibm> Graphics image generating device, and its method and program
JP2006092354A (en) * 2004-09-24 2006-04-06 Nippon Telegr & Teleph Corp <Ntt> Visualization method, visualization apparatus and visualization program using spherical surface,
JP2007213623A (en) * 2002-07-08 2007-08-23 Toshiba Corp Virtual makeup device and method therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0830799A (en) * 1994-07-13 1996-02-02 Fujitsu Ltd Automatically laying out method for graph
JP2003016465A (en) * 2001-06-19 2003-01-17 Internatl Business Mach Corp <Ibm> Graphics image generating device, and its method and program
JP2007213623A (en) * 2002-07-08 2007-08-23 Toshiba Corp Virtual makeup device and method therefor
JP2006092354A (en) * 2004-09-24 2006-04-06 Nippon Telegr & Teleph Corp <Ntt> Visualization method, visualization apparatus and visualization program using spherical surface,

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014146299A (en) * 2013-01-30 2014-08-14 Fujitsu Ltd Simulation program, simulation method, and simulation device
US10187271B2 (en) 2013-11-13 2019-01-22 Nec Corporation Network-diagram rendering system, network-diagram rendering method, and network-diagram rendering computer readable medium
JP2017151780A (en) * 2016-02-25 2017-08-31 富士通株式会社 Plotting method, plotting device and plotting program
CN106709897A (en) * 2016-12-28 2017-05-24 武汉大学 Method and system for searching optimal splicing lines among orthographic images based on gradient domain
CN106709897B (en) * 2016-12-28 2019-11-26 武汉大学 Optimal splicing line finding method and system between orthography based on gradient field
JP2018156234A (en) * 2017-03-16 2018-10-04 株式会社アルム Information processing apparatus, information processing method, and information processing program
CN112632196A (en) * 2021-01-06 2021-04-09 中国工商银行股份有限公司 Data visualization method and device and storage medium
CN112632196B (en) * 2021-01-06 2024-05-28 中国工商银行股份有限公司 Data visualization method, device and storage medium

Also Published As

Publication number Publication date
JP4939486B2 (en) 2012-05-23

Similar Documents

Publication Publication Date Title
JP4939486B2 (en) Graph visualization coordinate calculation apparatus, method, program, and recording medium recording the program
US9041742B2 (en) Displaying an image based on layers of a layer tree
US11697205B2 (en) Determining control policies for robots with noise-tolerant structured exploration
TW201907270A (en) Reorientation for VR in a virtual reality
JP2009069929A (en) Method for constructing surface of fluid simulation based on particle method, program and storage medium with its program stored
Spillmann et al. Efficient updates of bounding sphere hierarchies for geometrically deformable models
US20230298237A1 (en) Data processing method, apparatus, and device and storage medium
CN108027809A (en) The function of body design based on deep learning is related
CN105096361A (en) Technique for processing a character string for graphical representation on a man/machine interface
JP5903394B2 (en) Graph visualization display device, method, and program
JP2013161455A (en) Graph data visualization display device, method, and program
Mackaness et al. Automated displacement for large numbers of discrete map objects
TWI694355B (en) Tracking system, tracking method for real-time rendering an image and non-transitory computer-readable medium
Liu et al. Deformation of soft tissue and force feedback using the smoothed particle hydrodynamics
Guo et al. The simulation of the brush stroke based on force feedback technology
Kudelka et al. Efficient visualization of social networks based on modified Sammon׳ s mapping
US9240062B2 (en) Node arranging apparatus, node arranging method, and storage medium
Du et al. A rapid oriented detection method of virtual components for augmented assembly
Yuan et al. Real-time simulation of tissue cutting with CUDA based on GPGPU
US10546559B2 (en) Multi-layer rendering for visualizations
US10249083B2 (en) Strain based dynamics for rendering special effects
Tan et al. A hybrid model method for accurate surface deformation and incision based on fem and PBD
Li et al. Towards a useful grammar implementation: beginning to learn what designers want
Quan et al. Coordinate system and attitude representation
Liu et al. Design and implementation of a line simplification algorithm for network measurement system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100721

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110811

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120213

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120224

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

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4939486

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