(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-30
(45)【発行日】2024-10-08
(54)【発明の名称】位置制御装置、方法およびプログラム
(51)【国際特許分類】
H04L 41/22 20220101AFI20241001BHJP
【FI】
H04L41/22
(21)【出願番号】P 2022572880
(86)(22)【出願日】2021-01-04
(86)【国際出願番号】 JP2021000033
(87)【国際公開番号】W WO2022145055
(87)【国際公開日】2022-07-07
【審査請求日】2023-05-12
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】野末 晴久
(72)【発明者】
【氏名】明石 和陽
【審査官】小林 義晴
(56)【参考文献】
【文献】特開2019-179471(JP,A)
【文献】武田修平,外2名,ローカルな美的基準を考慮した力指向におけるレイアウト制御方式,第76回(平成26年)全国大会講演論文集(4) インタフェース コンピュータと人間社会,日本,一般社団法人情報処理学会,2014年03月11日,pp.4-291~4-292
(58)【調査した分野】(Int.Cl.,DB名)
H04L 41/22
(57)【特許請求の範囲】
【請求項1】
画面上に表示可能である複数のノードおよび前記複数のノードのうち2つのノードを接続する少なくとも1つのエッジに係る情報を入力し、前記入力した情報で示される前記複数のノードのうち所定の特徴を有するノードに対する引力または斥力が生じる仮想的なノードを設定する設定部と、
前記複数のノードと前記設定部により設定された
前記仮想的なノードとに係る引力または斥力を計算する計算部と、
前記計算部により計算された引力または斥力に基づいて、前記画面上における前記複数のノードの表示位置を制御する制御部と、
を備え
、
前記複数のノードは、複数の階層を有するネットワーク構成をなし、
前記設定部は、
前記入力した情報で示される前記複数のノードのうち前記ネットワーク構成における所定の階層に属するノードのみに対する引力または斥力が生じる前記仮想的なノードを設定する、
位置制御装置。
【請求項2】
前記計算部は、
前記複数のノードの間に生じる斥力を表す第1のベクトル、前記エッジが前記ノードに及ぼす引力を表す第2のベクトル、および前記設定部により設定された
前記仮想的なノードが前記複数のノードに及ぼす引力または斥力を表す第3のベクトルを計算し、前記第1、第2、および第3のベクトルが合算されたベクトルを計算し、
前記制御部は、
前記計算部により計算された前記合算されたベクトルに基づいて、前記画面上における前記複数のノードの表示位置を制御する、
請求項1に記載の位置制御装置。
【請求項3】
前記仮想的なノードは、
前記画面上における点状または線状をなすノードである、
請求項1に記載の位置制御装置。
【請求項4】
位置制御装置が行なう方法であって、
前記位置制御装置の設定部により、画面上に表示可能である複数のノードおよび前記複数のノードのうち2つのノードを接続する少なくとも1つのエッジに係る情報を入力し、前記入力した情報で示される前記複数のノードのうち所定の特徴を有するノードに対する引力または斥力が生じる仮想的なノードを設定することと、
前記位置制御装置の計算部により、前記複数のノードと前記
設定部により設定された
前記仮想的なノードとに係る引力または斥力を計算することと、
前記位置制御装置の制御部により、前記
計算部により計算された引力または斥力に基づいて、前記画面上における前記複数のノードの表示位置を制御することと、
を備え
、
前記複数のノードは、複数の階層を有するネットワーク構成をなし、
前記設定部は、
前記入力した情報で示される前記複数のノードのうち前記ネットワーク構成における所定の階層に属するノードのみに対する引力または斥力が生じる前記仮想的なノードを設定する、
位置制御方法。
【請求項5】
前記計算
部は、
前記複数のノードの間に生じる斥力を表す第1のベクトル、前記エッジが前記ノードに及ぼす引力を表す第2のベクトル、および前記
設定部により設定された
前記仮想的なノードが前記複数のノードに及ぼす引力または斥力を表す第3のベクトルを計算し、前記第1、第2、および第3のベクトルが合算されたベクトルを計算
し、
前記制御部は、
前記計算部により計算された前記合算されたベクトルに基づいて、前記画面上における前記複数のノードの表示位置を制御する、
請求項
4に記載の位置制御方法。
【請求項6】
前記仮想的なノードは、
前記画面上における点状または線状をなすノードである、
請求項4に記載の位置制御方法。
【請求項7】
請求項1乃至
3のいずれか1項に記載の位置制御装置の
各部としてプロセッサを機能させる位置制御処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、位置制御装置、方法およびプログラムに関する。
【背景技術】
【0002】
通信ネットワーク(network)が効率的に保守および運用されるためには、対象であるネットワークの構成(ネットワークトポロジー(network topology))、ここでは、ネットワークを構成する各ノード(node)の接続関係が、目的に応じてネットワーク保守管理者(以下、保守者)が画面上で見易いように表示されることが求められる。特に、複雑なネットワーク、またはノードの数が多いネットワークでは、画面上で、どのようにノードが配置されれば良いかが特定されることが課題である。
【0003】
ネットワークの構成が画面に適切に表示されるための、各ノードの自動的な配置については、様々な方法、例えば以下の(1)および(2)で示される方法が挙げられる。
(1) 力学モデル(dynamic model)によるノード配置(既知の第1の技術)
ネットワークトポロジーに基づいて、保守者が見易い配置が実現されるアルゴリズム(algorithm)として、力学モデルによるアルゴリズムであるForce-directed法が良く知られている(例えば非特許文献1を参照)。
この力学モデルは、ノード間には斥力を与え(例えば、分子間に働くクーロン(coulomb)斥力のように)、接続されているノード間であるエッジ(edge)に、例えばバネ(spring)のように作用する引力が与えられ、これら引力と斥力の総和が用いられてエネルギー(energy)が最小化される各ノードの配置が計算されるために用いられるモデルである。各ノード間の引力および斥力が釣り合うと、各ノード間が、程良い距離感で見易い配置結果が得られる。
【0004】
力学モデルが適切に適用されることにより、ノードおよびエッジが程良い距離感で重ならず、かつ互いに接続関係を有するノードが近くに配置され、見易い配置が得られる。
ただし、ここでは、ノード間の接続関係の情報にのみに基づいて各ノードの配置が決められるため、上記接続関係以外の情報が考慮された配置は得られない。
【0005】
(2) 階層的なネットワークでのノード配置(既知の第2の技術)
ネットワークの階層に基づくノード配置が実現される技術が提案および実装されているが、これら技術の多くは、有向非巡回グラフ(Directed acyclic graph, DAG)が前提とされていたり、同じ階層のノードが単純に、例えば画面の横方向に一列に並べられるような配置が実行されていたりするものが多い。
【先行技術文献】
【非特許文献】
【0006】
【文献】Fruchterman, T. M. J., Reingold, E. M.: Graph Drawing by Force-directed Placement, Software - Practice and Experience, 11, 21, 1129-1174 (1991).
【文献】wikipedia「Layered_graph_drawing」、https://en.wikipedia.org/wiki/Layered_graph_drawing
【発明の概要】
【発明が解決しようとする課題】
【0007】
ネットワークが幾つかの階層に分かれており、かつリング(ring)状の構成により冗長性を有するネットワークがある。
このようなネットワークの構成の表示において、以下の(1)~(3)のような要望がある。しかし、上記の既知の第1および第2の技術だけでは、保守者にとって見易い配置を得ることは困難である。
【0008】
(1) ネットワークの階層が意識されて、例えば上位階層のノードは画面の上部に表示されるように配置され、下位階層のノードは画面の下部に表示されるように配置される要望
(2) リング状に構成される装置群がリング状に画面に表示される要望
(3) 上記(1)および(2)に基づいて、力学モデルのように、ノードおよびエッジが出来るだけ重ならずに見易く配置される要望
この発明は、上記事情に着目してなされたもので、その目的とするところは、ノードの特徴が考慮されてノードを適切に配置することができるようにした位置制御装置、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0009】
本発明の一態様に係る位置制御装置は、画面上に表示可能である複数のノードおよび前記複数のノードのうち2つのノードを接続する少なくとも1つのエッジに係る情報を入力し、前記入力した情報で示される前記複数のノードのうち所定の特徴を有するノードに対する引力または斥力が生じる仮想的なノードを設定する設定部と、前記複数のノードと前記設定部により設定された前記仮想的なノードとに係る引力または斥力を計算する計算部と、前記計算部により計算された引力または斥力に基づいて、前記画面上における前記複数のノードの表示位置を制御する制御部と、を備え、前記複数のノードは、複数の階層を有するネットワーク構成をなし、前記設定部は、前記入力した情報で示される前記複数のノードのうち前記ネットワーク構成における所定の階層に属するノードのみに対する引力または斥力が生じる前記仮想的なノードを設定する。「仮想的なノード」とは、画面に直接表示されるものではないが、ノードの配置に影響を与えるものという意味で、「仮想」という言葉を用いている。
【0010】
本発明の一態様に係る位置制御方法は、位置制御装置が行なう方法であって、前記位置制御装置の設定部により、画面上に表示可能である複数のノードおよび前記複数のノードのうち2つのノードを接続する少なくとも1つのエッジに係る情報を入力し、前記入力した情報で示される前記複数のノードのうち所定の特徴を有するノードに対する引力または斥力が生じる仮想的なノードを設定することと、前記位置制御装置の計算部により、前記複数のノードと前記設定部により設定された前記仮想的なノードとに係る引力または斥力を計算することと、前記位置制御装置の制御部により、前記計算部により計算された引力または斥力に基づいて、前記画面上における前記複数のノードの表示位置を制御することと、を備え、前記複数のノードは、複数の階層を有するネットワーク構成をなし、前記設定部は、前記入力した情報で示される前記複数のノードのうち前記ネットワーク構成における所定の階層に属するノードのみに対する引力または斥力が生じる前記仮想的なノードを設定する。
【発明の効果】
【0011】
本発明によれば、ノードの特徴が考慮されてノードを適切に配置することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、本発明の一実施形態に係るネットワーク構成図生成装置の適用例を示すブロック図(block diagram)である。
【
図2】
図2は、本発明の一実施形態に係るネットワーク構成図生成装置による処理動作の一例を示すフローチャート(flow chart)である。
【
図3】
図3は、一般的な力学モデルによる各ノードの配置結果の一例を示す図である。
【
図4】
図4は、本発明の一実施形態に係るネットワーク構成図生成装置による各ノードの配置結果の一例を示す図である。
【
図5】
図5は、本発明の一実施形態に係るネットワーク構成図生成装置のハードウエア(hardware)構成の一例を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、図面を参照しながら、この発明に係わる一実施形態を説明する。
本発明の一実施形態に係るネットワーク構成図生成装置(位置制御装置)は、特定の特徴を備えたノードに対してのみ引力または斥力を作用させる仮想ノードを配置して、上記特定の特徴を備えたノードの位置を制御する。仮想的なノードの形状は、点状または線状が挙げられる。
【0014】
例えば、ネットワークの階層が3つの階層であると仮定すると、ネットワーク構成図生成装置は、上位の階層の装置にのみ引力を作用させる横線状の仮想ノードを画面の上部に配置し、中位の階層の装置にのみ引力を作用させる横線状の仮想ノードを画面の中央付近に配置し、下位の階層の装置にのみ引力を作用させる横線状の仮想ノードを画面の下部に配置する。
ネットワーク構成図生成装置は、上記の仮想ノードが配置された状態を踏まえて、力学モデルにより、各階層のノードを配置する。
【0015】
図1は、本発明の一実施形態に係るネットワーク構成図生成装置の適用例を示すブロック図(block diagram)である。
図1に示されるように、本発明の一実施形態に係るネットワーク構成図生成装置100は、ネットワーク構成情報入力部11、ネットワーク構成情報記憶部12、仮想ノード情報入力部13、仮想ノード情報記憶部14、配置情報決定部15、配置情報記憶部16、および配置情報出力部17を備える。
【0016】
ネットワーク構成情報入力部11は、外部からネットワーク構成情報を入力する。このネットワーク構成情報は、ノードの情報、エッジの情報、およびノードの特徴(または属性)が示される情報を含む。
ネットワーク構成情報入力部11に入力された情報は、ネットワーク構成情報記憶部12に記憶される。以下、ネットワーク構成情報記憶部12に記憶される情報で示されるノードは通常ノードと称されることがある。
【0017】
仮想ノード情報入力部13は、外部から仮想ノード情報を入力する。この仮想ノード情報は、(1)仮想的なノードである各仮想ノードの位置および形状が示される情報、(2)各仮想ノードが引力または斥力を及ぼすノードの特徴が示される情報、および(3)各仮想ノードから生じる力の種類および力の強さが示される情報、を含む。各仮想ノードから生じる力の種類は、仮想ノードから生じる引力または斥力である。
仮想ノード情報入力部13に入力された情報は、仮想ノード情報記憶部14に記憶される。
ネットワーク構成図生成装置100の他の各部については後述する。
【0018】
図2は、本発明の一実施形態に係るネットワーク構成図生成装置による処理動作の一例を示すフローチャートである。
配置情報決定部15は、仮想ノード情報記憶部14に記憶される、各仮想ノードの情報を取得する。配置情報決定部15は、ネットワーク構成情報記憶部12に記憶される、各ノードおよび各エッジの情報を取得する。配置情報決定部15は、仮想ノードを含む各ノードの初期配置を決定する(S11)。
【0019】
配置情報決定部15は、以降のS13からS17の処理がなされて、S17の処理の結果が完了条件を満たしていなければ(S12のNo)、ネットワーク構成情報記憶部12に記憶される情報で示される全てのノードに対し、ノード間の斥力を表すベクトルを計算する(S13)。
上記完了条件としては、例えばノードの配置が安定するのに十分な回数にわたってS13からS17の処理が繰り返しされたか否か、または、ノードの配置が安定しているかを、その都度判定する等、様々な条件が考えられる。上記回数は事前に定義される。
【0020】
次に、配置情報決定部15は、ネットワーク構成情報記憶部12に記憶される情報で示されるエッジが当該情報で示されるノードに及ぼす引力を表すベクトルを計算し、このベクトルをS13で計算された、ノードごとのベクトルに合算する(S14)。
【0021】
配置情報決定部15は、以降のS16の処理を、仮想ノード情報記憶部14に記憶される情報で示される全ての仮想ノードについて完了していなければ(S15のNo)、処理前の仮想ノードのうち1つを処理対象の仮想ノードをとして選択する。
そして、配置情報決定部15は、この処理対象の仮想ノードが、ネットワーク構成情報記憶部12に記憶される情報で示されるノードに及ぼす引力または斥力を表すベクトルを計算する。配置情報決定部15は、この計算されたベクトルを、S14までで計算された、ネットワーク構成情報記憶部12に記憶される情報で示されるノードごとのベクトルに合算する(S16)。
【0022】
配置情報決定部15は、上記S16の処理を、仮想ノード情報記憶部14に記憶される情報で示される全ての仮想ノードについて完了していれば(S15のYes)、S16まででノードごとに計算された引力または斥力を表すベクトルを、各ノードの位置に反映することで、各ノードの新たな位置を決定する(S17)。
【0023】
S17の終了後、このS17の処理の結果が上記完了条件を満たしていれば(S12のYes)、配置情報決定部15は、S17で決定された各ノードの位置を示す位置情報である配置情報を配置情報記憶部16に記憶する。
【0024】
配置情報出力部17は、ネットワーク構成情報記憶部12に記憶されるネットワーク構成情報、および配置情報記憶部16に記憶される位置情報に基づいて、画面上の新たな位置に配置された各ノード、および各ノードをつなげるエッジを示す情報を図示しない表示装置に表示することで保守者に提示し、または他の機能部に対して出力する。これにより、一連の処理が終了する。
【0025】
図2に示された線F1で囲まれたS12からS14、およびS17の処理については、例えば非特許文献1に記載される既知の技術が適用され得る。
ただし、
図2に示された線F2で囲まれたS15およびS16は、本実施形態にて追加される処理である。S13、S14およびS16でのベクトルの計算については、例えば非特許文献1に記載される既知の技術が適用され得る。
【0026】
図3は、一般的な力学モデルによる各ノードの配置結果の一例を示す図である。
図3に示された例では、ノード(ここでは通常ノード)a-aeeにノードb-aee、c-see、およびd-seeが直接接続される。ノードc-seeから、ノードb-aeeを経てノードd-seeが接続される。
ノードd-seeにはノードe-smdbが接続される。このノードe-smdbには、当該ノードe-smdbからノードf-smdb、g-smdb、およびh-smdbを経てノードe-smdbに戻るリング状のノードが接続される。
ノードc-seeにはノードi-smdbが接続される。このノードi-smdbには、当該ノードi-smdbからノードj-smdbおよびk-smdbを経てノードi-smdbに戻るリング状のノードが接続される。
上記
図3に示される配置結果は、通常ノードに対し仮想ノードが設定されない配置結果である、一般的な力学モデルによる各ノードの配置結果に対応する。
【0027】
図4は、本発明の一実施形態に係るネットワーク構成図生成装置による各ノードの配置結果の一例を示す図である。
図4に示された例では、通常ノードc-seeに通常ノードa-aee、b-aee、およびd-seeの順で接続され、通常ノードc-seeが通常ノードb-aeeにさらに接続され、通常ノードd-seeが通常ノードa-aeeにさらに接続される。
通常ノードd-seeには通常ノードe-smdbが接続され、この通常ノードe-smdbには、当該通常ノードe-smdbから通常ノードf-smdb、g-smdb、およびh-smdbを経て通常ノードe-smdbに戻る第1のリング状のノードが接続される。
通常ノードc-seeには通常ノードi-smdbが接続され、この通常ノードi-smdbには、当該通常ノードi-smdbから通常ノードj-smdbおよびk-seeを経て通常ノードi-smdbに戻る第2のリング状のノードが接続される。
【0028】
上記
図4に示される配置結果は、
図3で配置が例示されたネットワークと同じ構造の対象について、通常ノードに対し仮想ノードが設定された場合の配置結果に対応する。
図4に示された例では、ネットワークの上位階層にのみ引力を作用させる、線状の仮想ノードL1により、通常ノードa-aeeおよびb-aeeが仮想ノードL1の配置位置に引っ張られるように位置が制御される。
【0029】
また、
図4に示された例では、ネットワークの中位階層にのみ引力を作用させる、線状の仮想ノードL2により、通常ノードc-seeおよびd-seeが仮想ノードL2の配置位置に引っ張られるように位置が制御される。
【0030】
また、
図4に示された例では、ネットワークの下位階層にのみ引力を作用させる、線状の仮想ノードL3により、通常ノードe-smdb、f-smdb、g-smdb、h-smdbで成る上記第1のリング状のノード、および通常ノードi-smdb、j-smdb、およびk-seeで成る上記第2のリング状のノードが仮想ノードL3の配置位置に引っ張られるように位置が制御される。
【0031】
図3に示されるような、一般的な力学モデルによる配置結果は、ある程度見易い配置結果であるが、ネットワークの階層が考慮された配置結果ではない。
一方で、本実施形態に係る処理により、
図4に示されるような、ネットワークの階層が考慮された、通常ノードの配置結果が得られる。これにより一般的な力学モデルによる配置結果のような見易さに加え、複数の仮想ノードのそれぞれに応じて、各階層の上下関係に沿ってノードが配置されるので、ノードの様々な特徴が考慮された配置が可能となる。また、本実施形態に係る処理により、人手による配置の調整の手間が大きく減少するため、稼働削減に繋がる。
【0032】
次に、リングを構成している装置群が、表示画面においてリング状に配置される手順の例について説明する。
リングによる冗長構成を有する階層ネットワークにおいて、上記の既知の第2の技術である、階層的なネットワークのノード配置技術により、例えば階層ごとにノードの座標が固定的に決定されると、階層が考慮された配置結果が得られるが、表示画面において、同じ階層の装置が一列に並んでしまう。
【0033】
同じ階層の装置群がリングを構成している場合、上記のように同じ階層の装置が一列に並んでしまうと、表示画面にてリングが押し潰されたような配置結果となる。このような配置結果は、マクロ(macro)の視点で階層を確認するような場合は見易いかもしれないが、ミクロ(micro)の視点でリングによる階層ネットワークの構成を保守者が見たい場合は見づらい配置結果である。
【0034】
また、リングによる冗長構成を有する階層ネットワークにおいて、上記の既知の第1の技術であるノード間の斥力とエッジの引力とを用いてノードを配置すると、これらの斥力および引力の作用により、リングの部分が、ある程度の広がりを有して配置される。この配置の結果は、ミクロの視点では見易い配置結果である。
【0035】
上記の既知の第1および第2の技術による利点を両立させるために、本実施形態では、上記階層ごとのノードの座標の決定において斥力および引力が導入される。
より具体的に述べると、既知の第2の技術では、階層ごとにノードの座標が固定的に配置されたが、本実施形態では、これに代えて、階層ごとにノードの座標が例えば他のノードからの引力に応じて配置されることにより、既知の第1の技術で用いられるノード間の斥力およびエッジの引力と、既知の第2の技術で模擬される、階層ごとの装置群を引き寄せる引力とが纏めて一括で反映される。よって、上記の既知の第1および第2の技術による利点を両立させることができる。このため、リングによる冗長構成を有する階層ネットワークにおいて、階層が反映されつつ、リングが潰れない配置が実現され得る。
【0036】
図5は、本発明の一実施形態に係るネットワーク構成図生成装置のハードウエア構成の一例を示すブロック図である。
図5に示された例では、上記の実施形態に係るネットワーク構成図生成装置100は、例えばサーバコンピュータ(server computer)またはパーソナルコンピュータ(personal computer)により構成され、CPU(Central Processing Unit)等のハードウエアプロセッサ(hardware processor)111Aを有する。そして、このハードウエアプロセッサ111Aに対し、プログラムメモリ(program memory)111B、データメモリ(data memory)112、入出力インタフェース(interface)113及び通信インタフェース114が、バス(bus)120を介して接続される。
【0037】
通信インタフェース114は、例えば1つ以上の無線の通信インタフェースユニットを含んでおり、通信ネットワークNWとの間で情報の送受信を可能にする。無線インタフェースとしては、例えば無線LAN(Local Area Network)などの小電力無線データ通信規格が採用されたインタフェースが使用される。
【0038】
入出力インタフェース113には、ネットワーク構成図生成装置100に付設される、保守者用の入力デバイス200(device)および出力デバイス300が接続される。
入出力インタフェース113は、キーボード、タッチパネル(touch panel)、タッチパッド(touchpad)、マウス(mouse)等の入力デバイス200を通じて利用者により入力された操作データを取り込むとともに、出力データを液晶または有機EL(Electro Luminescence)等が用いられた表示デバイスを含む出力デバイス300へ出力して表示させる処理を行なう。なお、入力デバイス200および出力デバイス300には、ネットワーク構成図生成装置100に内蔵されたデバイスが使用されてもよく、また、ネットワーク(network)NWを介してネットワーク構成図生成装置100と通信可能である他の情報端末の入力デバイスおよび出力デバイスが使用されてもよい。
【0039】
プログラムメモリ111Bは、非一時的な有形の記憶媒体として、例えば、HDD(Hard Disk Drive)またはSSD(Solid State Drive)等の随時書込みおよび読出しが可能な不揮発性メモリ(non-volatile memory)と、ROM(Read Only Memory)等の不揮発性メモリとが組み合わせて使用されたもので、一実施形態に係る各種制御処理を実行する為に必要なプログラムが格納されている。
【0040】
データメモリ112は、有形の記憶媒体として、例えば、上記の不揮発性メモリと、RAM(Random Access Memory)等の揮発性メモリ(volatile memory)とが組み合わせて使用されたもので、各種処理が行なわれる過程で取得および作成された各種データが記憶される為に用いられる。
【0041】
本発明の一実施形態に係るネットワーク構成図生成装置100は、ソフトウエア(software)による処理機能部として、
図1に示されるネットワーク構成情報入力部11、仮想ノード情報入力部13、配置情報決定部15、および配置情報出力部17を有するデータ処理装置として構成され得る。
【0042】
ネットワーク構成情報記憶部12、仮想ノード情報記憶部14、および配置情報記憶部16は、
図5に示されたデータメモリ112が用いられることで構成され得る。ただし、これらの領域はネットワーク構成図生成装置100内に必須の構成ではなく、例えば、USB(Universal Serial Bus)メモリなどの外付け記憶媒体、又はクラウド(cloud)に配置されたデータベースサーバ(database server)等の記憶装置に設けられた領域であってもよい。
【0043】
上記のネットワーク構成情報入力部11、仮想ノード情報入力部13、配置情報決定部15、および配置情報出力部17の各部における処理機能部は、いずれも、プログラムメモリ111Bに格納されたプログラムを上記ハードウエアプロセッサ111Aにより読み出させて実行させることにより実現され得る。なお、これらの処理機能部の一部または全部は、特定用途向け集積回路(ASIC(Application Specific Integrated Circuit))またはFPGA(Field-Programmable Gate Array)などの集積回路を含む、他の多様な形式によって実現されてもよい。
【0044】
以上説明したように、本発明の一実施形態に係るネットワーク構成図生成装置は、画面上に表示可能である複数のノードおよび複数のノードのうち2つのノードを接続する少なくとも1つのエッジに係る情報を入力し、複数のノードのうち所定の特徴を有するノードに対する引力または斥力が生じる仮想的なノードを設定し、複数のノードと設定された仮想的なノードとに係る引力または斥力を計算し、上記計算された引力または斥力に基づいて、画面上における複数のノードの表示位置を制御するので、ノードの特徴が考慮されてノードを適切に配置することができる。
【0045】
次に、本実施形態に係る、その他の応用について説明する。
例えば、ノードに対応する装置が収容(配置)されるビル(building)の経度を画面上でのノードの配置に反映させるために、本実施形態が適用されることで、画面上で、上記装置が収容されるビルの経度にノードが画面上で引っ張られるように、本実施形態では、各ビルの経度ごとの縦線の引力源を仮想ノードとして画面に配置することができる。この仮想ノードは、所定の経度に対応するビルに収容されるノードのみに作用する。これにより、各ノードを、当該ノードが収容されるビルの経度に応じて適切に配置された結果が得られる。
【0046】
また、例えば、クラスタリング(clustering)されたノードを、クラスタごとに定められた場所に集めた画面を生成する場合、本実施形態が適用されることで、画面上でのクラスタリングされたノードの各々に対応する箇所に、各クラスタに属するノードにのみに引力を作用させる点状の仮想ノードを画面上に配置することができる。
【0047】
上記説明した実施形態では、ネットワーク構成の表示に適用される例について説明したが、これに限らず、例えば画面上での一般的なグラフのプロット(plot)の配置についても適用可能である。
【0048】
また、各実施形態に記載された手法は、計算機(コンピュータ)に実行させることができるプログラム(ソフトウエア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク(Floppy disk)、ハードディスク(hard disk)等)、光ディスク(optical disc)(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ(Flash memory)等)等の記録媒体に格納し、また通信媒体により伝送して頒布され得る。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段(実行プログラムのみならずテーブル(table)、データ構造も含む)を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスク、半導体メモリ等の記憶媒体を含むものである。
【0049】
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【0050】
100…ネットワーク構成図生成装置
11…ネットワーク構成情報入力部
12…ネットワーク構成情報記憶部
13…仮想ノード情報入力部
14…仮想ノード情報記憶部
15…配置情報決定部
16…配置情報記憶部
17…配置情報出力部