JP6178506B2 - 情報処理システムおよび情報処理方法 - Google Patents

情報処理システムおよび情報処理方法 Download PDF

Info

Publication number
JP6178506B2
JP6178506B2 JP2016518659A JP2016518659A JP6178506B2 JP 6178506 B2 JP6178506 B2 JP 6178506B2 JP 2016518659 A JP2016518659 A JP 2016518659A JP 2016518659 A JP2016518659 A JP 2016518659A JP 6178506 B2 JP6178506 B2 JP 6178506B2
Authority
JP
Japan
Prior art keywords
identifier data
computer
vertex
held
data
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.)
Expired - Fee Related
Application number
JP2016518659A
Other languages
English (en)
Other versions
JPWO2015173854A1 (ja
Inventor
純一 宮越
純一 宮越
泰幸 工藤
泰幸 工藤
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2015173854A1 publication Critical patent/JPWO2015173854A1/ja
Application granted granted Critical
Publication of JP6178506B2 publication Critical patent/JP6178506B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Description

本発明は、グラフ処理を実行する情報処理システムおよび情報処理方法に関する。
社会インフラや都市などを効率的に設計、運用するため、実社会やサイバー空間に分散するデータを処理し、社会インフラなどの状態の解析、予測や社会を構成する要素を制御する技術が注目されている。
上述の分散するデータとは、温度、湿度などの環境のセンシングデータ、自動車などの機械に関するログデータ、メールやSNSなどの人間や組織に関するログデータから構成される。また、そうした分散データの処理内容は、該当データを分類してラベルやインデックスを付加するクラスタリング処理や、機械学習処理、また、社会を構成する要素(人、モノ、情報など)を最適に配置する制御処理となる。これら処理で得られる、分散データに関する処理結果は、分散した使用者や制御対象に展開される。使用者または制御対象物は、その処理結果に従って、例えば移動手段や移動方向の決定や制御パラメータの決定を行うことになる。
そうした技術として以下の技術が従来から提案されている。すなわち、物理的に分散したセンシングデータを、インターネットなどの通信手段を介して計算機システムに集約して処理し、この処理の結果を制御対象に展開することにより、社会インフラの解析や予測または制御を行う技術(特許文献1参照)などである。
US2013/0151536
しかしながら、上述したような従来技術(Personalized Pagerank Algorithm)では、並列計算の実行時に各計算主体間での同期を必要とし、また、分散したデータを並列計算機に集約しないと処理が出来ない。更に、計算して得られた計算結果は、分散した各制御対象に展開する必要がある。ゆえに、非常に大規模で一箇所に集めることが困難なデータや、集約と展開に時間が掛かる上に時々刻々と更新されるデータ等については、従来技術で処理することができない。
そこで本発明の目的は、大規模で一箇所に集めることができないデータや、時々刻々と更新されるデータに対する効率的な計算を可能とする技術を提供することにある。
上記課題を解決する本発明の情報処理システムは、解析対象の事象に対応した複数の頂点と、対応する事象間の関係性に応じて該当頂点間を結ぶ辺とで構成されるグラフ構造をモデルとして、前記各頂点にそれぞれ対応し、前記辺に対応してデータ授受可能に互いに接続される複数の計算機と、前記各計算機に蓄積される、前記頂点の事象に対する1つ以上の状態をあらわす属性を持つ識別子データを保持する記憶装置と、前記記憶装置において前記各頂点に関して保持する識別子データの個数を、前記頂点の分布に基づく空間分布図として表示する表示装置と、を含み、前記各計算機は、前記辺で結ばれて隣接する前記頂点に対応する計算機との間で、互いの保持する識別子データの個数に基づく所定のアルゴリズムにより、互いの計算機の間での識別子データの遷移確率を計算し、当該計算結果に応じて、互いの計算機の保持する識別子データの個数を更新するものである、ことを特徴とする。
また、本発明の情報処理システムは、管理計算機と、倉庫内の棚各々に設置された計算機と、前記棚に配置された荷物を集荷する各作業員が所持して前記計算機にアクセス可能な携帯端末と、を含み、前記各計算機は、前記棚ないし該当棚に配置された荷物に関する所定事象に対応した複数種類の識別子データの個数の情報を保持しており、前記各携帯端末からのアクセスを受けて、該当携帯端末が保持する識別子データを受信し、当該計算機が既に保持する前記識別子データの過去の変動状況に基づき決定した識別子データを前記携帯端末へ送信し、前記携帯端末との前記識別子データの送受信の結果の差引数で、当該計算機が保持している前記複数種類の識別子データの個数を更新するものであり、前記各携帯端末は、前記計算機から前記識別子データを受信し、当該受信した識別子データにより、自身が保持している識別子データを更新するものであり、前記各計算機は、前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数のうち一番多い種類に対応付けられた配置先へ、自身が設置されている棚を移動する指示を前記管理計算機へ出力するものである、ことを特徴とする。
また、本発明の情報処理システムは、管理計算機と、データセンタ内の各データに対応付けた計算機と、を含み、前記各計算機は、前記データに関する所定事象に対応した複数種類の識別子データの個数の情報を保持しており、前記各データを利用するプログラムからのアクセスを受けて、該当プログラムが保持する識別子データを受信し、当該計算機が既に保持する前記識別子データの過去の変動状況に基づき決定した識別子データを前記プログラムへ与え、前記プログラムとの前記識別子データの送受信の結果の差引数で、当該計算機が保持している前記複数種類の識別子データの個数を更新するものであり、前記各プログラムは、前記計算機から前記識別子データを受信し、当該受信した識別子データにより、自身が保持している識別子データを更新するものであり、前記各計算機は、前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数のうち一番多い種類に対応付けられた配置先へ、自身が対応付けされているデータを移動する指示を前記管理計算機へ出力するものである、ことを特徴とする。
また、本発明の情報処理システムは、ネットワークを介してメッセージを送受信する複数の端末と管理計算機とを含み、前記各端末は、複数種類の識別子データの個数に関する情報を保持し、前記メッセージを送信する場合、自身が既に保持している前記識別子データの個数の過去の変動状態に基づき決定した前記識別子データを付加したメッセージを、前記複数の端末のなかの他の端末に送信し、当該送信した識別子データの個数を差し引くことにより、自身が保持している前記複数種類の識別子データの個数を更新し、前記メッセージを受信する場合、受信した前記メッセージに付加された識別子データの個数を加えることにより、自身が保持している前記複数種類の識別子データの個数を更新し、前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数を前記管理計算機に送信するものであり、前記管理計算機は、前記各端末より前記複数種類の識別子データの個数を受信して、前記識別子データの個数が最も多い種類が共通する端末が同じグループであることを示す情報を、前記管理計算機が有する表示端末に表示するものである、ことを特徴とする。
また、本発明の情報処理方法は、解析対象の事象に対応した複数の頂点と、対応する事象間の関係性に応じて該当頂点間を結ぶ辺とで構成されるグラフ構造をモデルとして、前記各頂点にそれぞれ対応し、前記辺に対応してデータ授受可能に互いに接続され、前記頂点の事象に対する1つ以上の状態をあらわす属性を持つ識別子データを保持する複数の計算機が、前記辺で結ばれて隣接する前記頂点に対応する計算機との間で、互いの保持する識別子データの個数に基づく所定のアルゴリズムにより、互いの計算機の間での識別子データの遷移確率を計算し、当該計算結果に応じて、互いの計算機の保持する識別子データの個数を更新し、前記各頂点に関して保持する識別子データの個数を、前記頂点の分布に基づく空間分布図として表示装置にて表示する、ことを特徴とする
本発明によれば、大規模で一箇所に集めることができないデータや、時々刻々と更新されるデータに対する効率的な計算が可能となる。
実施例1における解析対象となるグラフ構造モデルの例を示す図である。 実施例1における解析対象となるグラフ構造モデルの概念図である。 実施例1における情報処理システムを含むネットワーク構成図である。 実施例1の情報処理方法における手順例1を示すフロー図である。 実施例1の情報処理方法における手順例2を示すフロー図である。 実施例1の情報処理方法における手順例3を示すフロー図である。 実施例1の情報処理方法における手順例4を示すフロー図である。 実施例1における計算順序の概略を示す説明図である。 実施例1における更に具体的な計算モデル例を示す図である。 実施例2の情報処理システムにおける計算機の構成例を示す図である。 実施例2における計算モデルの辺に重みがある場合のグラフ構造データを示す図である。 実施例2における辺の重みと遅延時間との関係表を示す図である。 実施例2における情報子の遷移時間例を示す図である。 実施例3における実社会活動に即したグラフ構造データの取得概念例1を示す図である。 実施例3における実社会活動に即したグラフ構造データの取得概念例2を示す図である。 実施例3における情報処理システムの構成例を示す図である。 実施例3の情報処理方法における手順例1を示すフロー図である。 実施例3の情報処理方法における手順例2を示すフロー図である。 実施例3の情報処理方法における手順例3を示すフロー図である。 実施例3の情報処理方法における手順例4を示すフロー図である。 実施例4における情報処理システムの構成例を示す図である。 実施例4におけるプロセスのデータブロックへのアクセスチャート例を示す図である。 実施例4におけるプロセスの関係性の例を示す図である。 実施例4における情報処理システムの概略を示す図である。 実施例4におけるプロセスのアクセスチャート例を示す図である。 実施例4におけるデータブロックに対応する情報子格納領域への処理例を示す図である。 実施例4における各情報子の格納領域が保存する情報子の数の時間変化例を示す図である。 実施例5における倉庫の構成例を示す図である。 実施例5におけるピックアップ作業の概念例を示す図である。 実施例5における棚に備わる計算機および作業者が保持する移動端末の例を示す図である。 実施例5における計算機および移動端末のハードウェア構成例を示す図である。 実施例5における情報処理方法のフロー概念を示す図である。 実施例5における各棚に備えられた計算機と移動先の関係を記述した表を示す図である。 実施例5における計算機のフローチャート例を示す図である。 実施例5における計算結果の取得処理に関するフローチャート例を示す図である。 実施例5における効果例を示す図である。 実施例6における概念例を示す図である。 実施例6における情報子の交換例を示す図である。 実施例6における各頂点の情報子数から各ユーザの所属コミュニティを特定する概念例を示す図である。 実施例7における概念例を示す図である。 実施例8における遷移確率表の例1を示す図である。 実施例8における遷移確率表の例2を示す図である。 実施例8における遷移確率表の例3を示す図である。
以下に本発明の実施形態について図面を用いて詳細に説明する。まず本実施形態における情報処理方法の技術思想について、従来技術での課題も踏まえてその概念を説明しておく。従来技術においては、対象データを全て一箇所に集めた上でなければデータ解析が実行できず、大規模データいわゆるビッグデータが解析対象である場合、非常に広範囲に散在する各データを即時性を持って漏れなく効率的に収集してこれを解析し、更にこの解析結果をデータ起源の各対象に応答する処理が必要となり、更新が頻繁なデータには特に適用が困難であった。そこで本実施形態の情報処理方法においては、こうした不具合を解決すべく、分散したデータごとに解析を行う自律分散型のデータ解析を行うこととなる。この自律分散型のデータ解析は、分散したデータを管理する各要素(具体的には計算機)が、自身のデータと隣接する他の要素のデータに関して所定計算を行い、要素全体として所望の計算を行う手法である。
上述した自律分散の概念に対応する現象は、自然界では良く見られる現象であり、例えば生物学分野における反応拡散モデルが良く知られている。この反応拡散モデルのうち、例えばシマウマの縞模様形成に関するモデルにおいて、シマウマの縞模様は、各細胞における蛋白質の拡散が個別に行われることによって生じるとされる。本実施形態においては、こうした自律分散の反応拡散モデルを、物や情報などの拡散が各所、各要素にて個別に行われる状況に置き換えてデータ解析に応用した技術について示すものとする。
−−−実施例1−−−
まず、本発明の情報処理システムの概念的な動作について説明する。図1に、本情報処理システムにおける解析対象となるグラフ構造モデル(以下、計算モデル10)の概念図を示す。この計算モデル10は、頂点110〜114とこれら頂点間を結ぶ辺120で構成されるグラフ構造に対し、情報単位である情報子を拡散させることで計算を実施し、各頂点110〜114上の情報子数を解とする計算モデルである。また、本例では計算対象を分類問題とする。
ここで、情報の単位である情報子(識別子)を定義する。情報子は状態の変数を持つデータで、本例では状態数=2とし(すなわちデータ容量は1ビット)、それぞれ状態u、状態vとする。図1に、状態uの情報子130と状態vの情報子131を例示する。各情報子は辺120に沿って拡散(情報子の拡散140)する。計算結果は各頂点上の情報子数から得ることができる。各頂点上の情報子数の表150(図2参照)から、例えば頂点A(頂点110)は情報子数(状態u)=0、情報子数(状態v)=2で、情報子数(状態v)が最大となる。最大となった情報子の状態を分類結果に対応、すなわち状態uを分類結果A、状態vを分類結果Bとすると、頂点Aは分類結果Bとなる。各頂点において同様に計算すると、全ての頂点をAかBのどちらかに分類することができる。
続いて、本実施形態における情報処理システム100の構成例について説明する。図3は本実施形態における情報処理システム100を含むネットワーク構成例を示す図である。図3に示す情報処理システム100は、1つ以上の計算機220−1〜220−4を含むものであり、これら計算機間はネットワーク1で接続されている。なお、以降は、特に計算機間の区別を行わない限り、計算機220と記すものとする。
これら計算機220は、CPU221、RAMなど揮発性記憶装置で構成される主記憶装置222、ハードディスクドライブなど適宜な不揮発性記憶装置で構成されるストレージ223、キーボードやマウス、ディスプレイ等の入出力装置224、ネットワークI/F225を含んでいる。こうした構成を備える計算機220は、CPU221が、主記憶装置222に保持するプログラム226を実行して必要な機能を実装し、計算機自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なう。従って、本実施形態の情報処理方法に対応する機能は、上述の計算機220がプログラム226の実行により実装される機能に該当する。
次に、上述の図3の計算モデルをあらためて説明しつつ、本実施形態における情報処理方法の実際手順について図に基づき説明する。図4は本実施形態の情報処理方法における手順例を示すフロー図である。この場合、まずステップ311において、各計算機220−1〜220−4は、各計算機毎に分割して配置された、上述のグラフ構造モデル10における該当頂点に関するデータを、自身のストレージ223などに保存する。例えば計算機220−1がストレージ223にて保存するデータは、例えば図3に例示するように、ストレージ223における所定データ領域230−1に格納される。ここで、図1と同様のグラフ構造モデル10を想定し、同一の記号を付している。
上述のデータ領域230−1では、頂点Aたる頂点110と、頂点Bたる頂点111と、各頂点の接続先の情報、すなわち頂点Aたる頂点110は頂点Dたる頂点113、頂点Bたる頂点111は頂点Aたる頂点110、頂点Cたる頂点112、頂点Dたる頂点113と接続されている情報、が保存される。
続いて、ステップ312において、各計算機220は、上述のステップ311で取得したグラフ構造モデル10に含まれる全ての頂点に対し、各頂点に割り当てられている情報子の数を予め決められた数で初期化する。例えば、頂点Aたる頂点110について予め決められた数が状態u=0、状態v=2であった場合、計算機220は、ストレージ223にて保持するデータのうち、頂点Aに割り当てられる情報子数を、情報子数(状態u)=0、情報子数(状態v)=2とする。
上述したステップ312の後、各計算機220は、一定回数のループ処理(ステップ313−1〜313−2)を実行する。各計算機220は、当該ループ処理内において、上述のステップ311にてデータ取得した全頂点に対しループ処理(ステップ314−〜314−2)を実行し、情報子の受信処理(ステップ315)と送信処理(ステップ316)を実行する。上述の二つのループ処理(ステップ313、ステップ314)が終了後、各計算機220は、計算結果の取得処理(ステップ317)を実行して本フローを終了する。
続いて、上述したフローのうち、受信処理(ステップ315)、送信処理(ステップ316)、および、計算結果の取得処理(ステップ317)について説明する。このうち受信処理(ステップ315)のフローチャートを図5に示す。各計算機220は、当該フローの開始後、情報子を他頂点から受信したかについて判定を行う(ステップ411)。この判定文が真であれば(ステップ411:Y)、計算機220はストレージ223にてデータを保持する情報子数を更新し(ステップ412)、上述の判定分が偽ならば(ステップ411:N)、本フローを終了する。
また、送信処理(ステップ316)のフローチャートを図6に示す。各計算機220は、、当該フローの開始後、上述の頂点に関するループ処理(ステップ314)で選択された頂点に辺で接続された頂点(隣接する頂点と呼称する)上の情報子数を取得する(ステップ512)。なお、ここで得る情報子数は、過去に取得した情報子数の場合でも良い。
その後、計算機220は、上述のステップ314で選択された頂点上の情報子に対するループ処理(ステップ513−1〜513−2)を実行する。計算機220は、当該ループ内において、上述のステップ314で選択された情報子に対し遷移確率を算出する(ステップ514)。この遷移確率の算定式を数式1として以下に示す。
・・・・・(数式1)
ただし、Ndjは頂点jの次数。また、左辺Pは遷移確率を示し、Puは状態uの情報子の遷移確率を示す。また、uとvは情報子の異なる状態を表す。例えば、2状態(1ビット)の情報子であれば、uは状態=0、vは状態=1となる。また、NuおよびNvは情報子数を表す。例えば、Nuは状態uの情報子数、Nvは状態 vの情報子数となる。また、第3項および第4項のΣは近傍範囲内のデバイスに対し計算する。NuiおよびNvjは近傍範囲内のデバイスjの各状態の情報子数となる。また、f,gは関数、α、βは正の定数である。
なお、計算機220は過去の情報子の更新履歴に基づく予測にて遷移確率を算定するとしても良い。こうした予測方法にける計算機220は、予め、テストパターンを上述の数式1に入力して得られた結果を正解データ、過去の情報子の更新履歴と該頂点の情報子数を入力データとして、所定のニューラルネットワークで学習させ、こうして学習させたモデルを遷移確率の算出に用いるものとする。計算機220は本モデルを用いることで、隣接する頂点の情報子数を過去の情報子の更新履歴に置き換えることができる。
上述のステップ514に続き、計算機220は、ステップ515において、上述のステップ514で算出した遷移確率と予め決められた閾値とを比較する。その結果、例えば、閾値が0.5で、0.5≦遷移確率≦1の場合(ステップ515:Y)、すなわち確率が高いと認識した計算機220は処理をステップ516に進める。他方、例えば、0≦遷移確率<0.5である場合(ステップ515:N)、計算機220は遷移確率が低いと認識し、処理を終了(ステップ520)に進める。
計算機220は、ステップ516において、ステップ512で情報子数を得ている隣接する頂点から一つの頂点を選択する。ここでの選択方法は、ランダムやラウンドロビンなどが考えられる。次に計算機220は、ステップ517において、上述のステップ516で選択した隣接する頂点(に対応する計算機)に対し、該情報子のデータ(状態)をネットワークI/F125から送信する。また計算機220は、ステップ518において、当該頂点の情報子数を更新(情報子を送信したため、情報子数−1を実行)する。
続いて、図4のフローにおける計算結果の取得処理(ステップ317)に関する詳細フローの例を図7にて示す。計算機220は、当該フロー開始後、ステップ611において、自身がストレージ223にて保持する各頂点の各状態の情報子数を比較し、最大の情報子数を保有する状態を選択する。例えば、状態数が2状態(uとv)であって、ある頂点上の状態uの情報子数が1、状態vの情報子数が2の場合、計算機220は状態vを選択する。
次に計算機220は、ステップ612において、上述のステップ611で選択した状態に対応する結果を、ネットワーク1上の所定の表示装置ないし入出力装置224に表示する。例えば、状態vに対応する結果が分類結果Bであった場合、該頂点が分類Bに属していることが分かる(状態uはコミュニティA)。他の頂点も同様に分かる。
ここで、本計算モデルの特徴として、計算結果は情報子の計算順序に依存しないという点がある。図4、図6にて例示したフローにおいて、頂点のループ(ステップ314−1)および頂点上の情報子のループ(513−1)は、その頂点や情報子の計算順序が自由であって、例えば、ある頂点Aを処理し、その後頂点Bを処理した場合と、頂点Bを処理し、その後頂点Aを処理した場合で、計算結果が変化しない。すなわち計算順序は自由である。 図8に、図3の計算モデル10および情報処理システム100を想定した際の計算順序について、その概略を示す。図8では、計算順序の異なる二つのフローを示しており、それぞれ処理順序1と処理順序2として記載する。また、頂点間の送信受信によるデータ(情報子)の移動は、頂点Dが関連する移動のみ示している。
このうち処理順序1において、頂点Dは頂点Aと頂点Bと頂点Eと辺を持つため、当該頂点間で情報子の移動が発生する。計算順序1では、頂点Dの受信処理の前に、頂点Aの頂点Dと同一周期の送信処理、頂点Eの頂点Dと同一周期の送信処理が実行されているが、頂点Bの頂点Dと同一周期の送信処理はまだ実行されていないため、頂点Dの受信処理では、頂点Aからの同一周期の情報子の移動710と、頂点Bからの前の周期の情報子の移動712と、頂点Eからの同一周期の情報子の移動711が発生する。一方、前記処理順序2では、頂点Dの受信処理の前に頂点A、頂点B、頂点Eの送信処理が実行されていないため、頂点Aからの前の周期の情報子の移動750と、頂点Bからの前の周期の情報子の移動750と、頂点Eからの前の周期の情報子の移動750が発生する。これから、処理順序1と処理順序2では情報子の移動するタイミングが異なる。しかしこれら処理順序1と処理順序2のどちらでも、ある程度の時間、情報子の送受信処理を繰り返した後では、同じ計算結果に収束する。以上から、本計算モデルは、図3にて示した構成例では、並列計算時に、各計算機が独立に計算を実施しても計算結果が変化しないことを示しており、各計算機220が広域に分散し、計算機間の通信手段の遅延の問題で同期などの連携が実行できない場合でも処理が実行できることとなる。ゆえに、広域にデータが分散した対象問題に対し分類問題を解くことが可能である。
更に具体的な例を図9にて示す。図9に示す例は頂点数が4096の計算モデルである。なお図9では辺は図が煩雑化するため示していない。図9は、円の中心付近では頂点が密集しており、外周に行くほど頂点の密度が低くなる。また、円を横切っている頂点が無い波状のギャップは、円の中心付近のギャップより、円の外周付近の頂点間の距離の方が大きい。そのため、従来の統計的手法の1つである距離の閾値による分類を行った場合、波状のギャップを認識することができず、正しく分類できない。一方で、本発明の手法では、自律分散的に分類を行うため、中心付近の高密度の領域でのギャップと外周付近の低密度でのギャップを正しく認識できる。この図9で示す計算モデルにおいて、情報子の状態数は2とし、この情報子数の初期化において、頂点群810−1に情報子(状態u)、頂点群810−2に情報子(状態v)を、それぞれ4096×8個を割り当てたとする。また図9の各頂点において、情報子数が、状態uが多い場合と状態vが多い場合で、図示する濃度(白色からグレーを経て黒色に至る色調濃度)を変えている。
図9のループ回数tの状態810において、情報子はグラフ構造データの上端と下端の一部に拡散しているだけであるが、ループ回数t+nの状態820において、情報子は全体に行き渡っている。しかし、上述のループ回数t+nの状態では、グラフ構造データ中心のギャップ付近で、分類精度が落ちている。一方、ループ回数t+2nの状態830では綺麗な分類を行っている。
−−−実施例2−−−
続いて、実施例1の計算モデルにて定義した各辺が重み係数を保持している場合について、実施例2として説明する。この実施例2においては、実施例1にて示した送信処理に各辺の重み係数に基づいた遅延処理が加わる。そのため計算機220は該当処理を実行する遅延器を備える構成となっている。
この場合の情報処理システムにおける計算機910の構成例は図10に示すとおりである。ここで示す計算機910は、図3で示した各計算機220−1〜220−4に相当するもので、同一機能をもつモジュールは同一記号を付してある。実施例2における当該計算機910は、計算機220−1〜220−4に対し、遅延器911を新たに備えている。
これを踏まえて、計算モデルの辺に重みがある場合のグラフ構造データ920を図11にて示す。当該グラフ構造データ920では、頂点A950と頂点B951と頂点C952が含まれ、頂点A−B間の辺には値が1である重み960、頂点A−C間の辺には値が10である重み961が存在するとする。こうしたグラフ構造データ920において、情報子が頂点A950から頂点B951に移動するとき、計算機910は、上述の重み960に従って、遅延器911により情報子の遷移を遅延させる。そうした辺の重みと遅延時間との関係について規定した表940を図12にて示す。計算機910は、すなわち、情報子の遷移時間を制御し、たとえば図13にて示すように情報子の遷移時間930は、頂点A950から頂点B951に移動するとき、重み=1であるから遅延時間t=1(970)とする。同様に、頂点A950から頂点C952に移動するとき、重み=10(961)であるから、遅延時間はt=10(971)となる。重みと遅延時間の関係は、図12の如く予め表940で与えても良いし、予め定めた所定の数式などを用いて計算機910が算出するとしても良い。
−−−実施例3−−−
続いて、実施例1にて示した図4のフローにおけるステップ311、すなわちグラフ構造データの取得処理に際し、実社会の活動に即して自動的に取得する機能を備えた情報処理システムの例について説明する。この場合の概念において、計算モデルであるグラフ構造データを情報処理システム上で算出せず、実社会の活動をそのまま用いることとなる。
その具体例を図14にて示す。図14において、例えば、実社会の活動として人の会話を想定した場合、計算モデルたるグラフ構造データは、人の会話のログ(誰と誰が、何回、どのくらいの時間、会話したかのログ)から構造化される。
例えば実社会における活動(1000)で人A(1001)と人B(1002)が会話を行った場合、その記録データを得た計算機220は、該当会話の頻度および時間を表現したグラフ構造データ1010として、上述の人Aに相当する頂点A(1011)と人Bに相当する頂点B(1012)との間に辺1013を生成する。計算機220は、そのようにして構造化1030を行う。もちろん、実社会の活動は、人の会話に限らず、物と物の間の活動(例えば、ロボット、自動車、信号機などの機械の通信)、人と物の間の活動、また人を介した物の間の活動(複数の施設や棚を巡回する人を介して、場所や施設間の間接的な通信)、仮想空間上でのSNSのユーザ間の交流(メッセージ通信、電子メールなど)等でも良い。この場合の計算機220は、実社会における活動をグラフ構造データに構造化し、その後、実施例1で例示した処理と同様に解析する。
一方で、グラフ構造データを構造化するときの入力データである実社会における活動に、情報子を付随させれば、グラフ構造データを構造化する間の入力データそのものを利用した計算が可能である。実社会における活動に付随して情報子を交換する様子1050を図15に示す。上述の人Aと人Bは情報子を保持でき、人Aと人Bとの会話時にこの情報子を更新できる場合、計算機220は、実社会の活動を使用した計算1070を実行して、その計算結果たる解析結果1060として、実社会上すなわち人Aと人Bが保持する情報子数が得られる。実施例3〜6においては本概念に対応した具体的な構成について説明することとする。
こうした実施例3における情報処理システムの構成について以下説明する。図16に本実施例3における情報処理システム100の構成例を示す。ここで例示する情報処理システム100は、デバイス群3001と頂点に保持または実装されるデバイス3020によって構成される。本例では、一例として実社会を処理対象とした情報処理システムを記載し、デバイス群3001は実社会の人の集まり、各デバイスは人等が保有するスマートデバイスとする。もちろん、デバイス群は人に限らず、車などの移動体、機械に付随するスマートフォン、組み込みコンピュータのような機器やデータに付随するプログラムでも良い。解析対象となる問題は、頂点群の分類問題とする。各頂点が人の場合、例えば、ある集団のコミュニティ検出などに応用される。
この場合、計算機たるデバイス3020は、CPU3021、プログラム3026を保持する主記憶装置3022、ストレージ3023、入出力装置3024、ネットワークI/F3025で構成される。またデバイス3020は通信可能と認識される近傍範囲3030を有するものとする。図16の例では、人や機器に付随するデバイス3010において、該デバイス3010を中心とし、予め決められた値を半径とする円が近傍範囲3030となる。こうした近傍範囲3030はデバイス間の物理的な距離から算出できるが、ネットワークI/F3025の発信する無線電波等の到達範囲や、デバイス間(すなわちデバイスを保有する頂点間)のコミュニケーションの頻度、例えばメールの交換回数などがある閾値以上の範囲でもよい。
また、デバイス3020はネットワークI/F3025などを用いて近傍範囲3030内において通信可能である。図16の例では頂点3010は近傍範囲3030内に存在する別のデバイス3011に通信を行う機能を備える。この近傍範囲3030に存在するデバイスが、実施例1で示した辺で接続された頂点に相当するため、実社会の活動そのものが辺となる。つまり実施例1のグラフ構造データが不要となる。また、本実施例3では、デバイス3020を頂点と呼称する。
次に、本実施例3における情報処理方法の処理手順例について説明する。図17は本実施例3の情報処理方法における処理手順を示すフロー図である。ここで、情報の単位である情報子は実施例1で定義したものと同様である。
この場合、各デバイス3020は、フロー開始後、まず該当頂点の情報子数を初期化する(ステップ3111)。当該ステップ3111の処理内容は、当該デバイス3020において、情報子の数を予め決められた数で初期化するものとなる。例えば、頂点Aの予め決められた数が状態u=0、状態v=2であった場合、デバイス3020は頂点Aに割り当てられる情報子数を、情報子数(状態u)=0、情報子数(状態v)=2とする。その後、デバイス3020は、ステップ3112において、受信処理のプロセスの起動、ステップ3113において送信処理のプロセスの起動を行う。
次にデバイス3020は、ステップ3114において、計算結果の取得処理のプロセスを起動する。デバイス3020は、受信処理のプロセス(ステップ3112)と送信処理のプロセス(ステップ3113)と計算結果の取得処理のプロセス(ステップ3114)を並列に実行してもよい。
以下、上述の各プロセスのうち受信処理のプロセス(ステップ3112)について説明する。本実施例3における受信処理と、実施例1での受信処理との主な違いは、一定時間経過による処理の追加である。図18に当該プロセスのフローチャートを示す。デバイス3020は、当該プロセス開始後、ステップ3211において、予め決められた時間を経過したか判定する。判定文が真ならば(ステップ3211:Y)、デバイス3020は、ステップ3212に処理を移す。
また、ステップ3212においてデバイス3020は、他のデバイスより情報子を受信したかどうか判定し、判定文が真ならば(ステップ3212:Y)、ステップ3213において、自デバイスの情報子数を更新する。該プロセスは終了の割り込みなどで終了する。また、一定時間経過でなく通信をトリガとした処理でもよい。
続いて上述の送信処理のプロセス(ステップ3113)について具体的に説明する。本実施例3における送信処理と実施例1の送信処理との主な違いは、一定時間経過による処理の追加である。
図19に当該プロセスのフローチャートを示す。デバイス3020は、当該プロセス開始後、ステップ3311において、予め決められた時間を経過したか判定する。この判定文が真ならば(ステップ3311:Y)、デバイス3020はステップ3312に処理を移す。このステップ3312においてデバイス3020は、前述した近傍範囲3030内に存在する頂点に対し通信を行い、この頂点が保持する情報子数を取得する。
続くステップ3313−1〜ステップ3313−2は自頂点の各情報子に対するループ処理である。当該ループ処理において、ステップ3314では、デバイス3020は、自情報子の遷移確率を算出する。当該ステップは実施例1のステップ514の処理と同様である。
その後、デバイス3020は、ステップ3315において、上述のステップ3314で算出された遷移確率と予め決められた閾値とを比較する。その結果、真であるならば(ステップ3315:Y)、ステップ3316に処理を進める。例えば、閾値が0.5で、0≦遷移確率<0.5の時、デバイス3020は、処理をステップ3311に進め、他方、0.5≦遷移確率≦1ならば、処理をステップ3316に進める。
デバイス3020は、ステップ3316において、近傍範囲330内の頂点から一つの頂点を選択する。この選択方法は、ランダムや順番などが考えられる。その後、デバイス3020は、ステップ3317において、上述のステップ3316で選択した頂点(のデバイス)に対し、自情報子のデータ(状態)をネットワークI/F3025から送信する。またデバイス3020は、ステップ3318において、自頂点の情報子数を更新する(情報子を送信したため、情報子数−1を実行する)。また、これらの処理のパラメータ(例えば遷移確率の算出式の係数、閾値、選択方法など)は頂点で異なっても良い。
次に、上述の計算結果の取得処理のプロセス(ステップ3114)について具体的に説明する。図20に計算結果の取得処理のフローチャートを示す。この場合、デバイス3020は、計算結果の取得処理の開始後、ステップ3411にて、入出力装置3024から結果取得の要求があるか判定する。この判定が真ならば(ステップ3411:Y)、デバイス3020は、ステップ3412およびステップ3413を実行する。当該ステップは実施例1のステップ611とステップ612とそれぞれ同様であり、説明は省略する。
以上の処理により、実施例1と同様に頂点に対する分類問題が解ける。実施例3における頂点は、実社会に分散するデバイスであるので、つまり、実社会に分散するデバイスに対する分類問題をグラフ構造データを生成せずに効率的に解ける。
−−−実施例4−−−
次に、上述の実施例3における各頂点がデータであり、頂点間の辺がデータ間のアクセスの連続性とした計算モデルに対応した情報処理システムの例として実施例4を示す。本実施例4では、複数の計算機上で複数のプロセスが処理される時の、各プロセスに必要なデータを効率よく計算機に配置する方法を提供するものである。
図21で例示する情報処理システム4000において、計算機120−1と計算機120−2がネットワーク1で接続されており、計算機120−1でプロセス1が処理されており、当該計算機120−1のデータ領域130−1にデータブロック1、2、3が保存されているとする。また計算機120−2でプロセス2が処理されており、当該計算機120−2のデータ領域130−2にデータブロック4、5、6が保存されているとする。また上述のデータブロックは、上述のプロセス1、2に必要なデータが保存されている。
こうした各プロセス1、2の各データブロックへのアクセスチャート4010の例を図22にて示す。図22に例示するアクセスチャート4010において、時間区画Tにおける時間方向に隣接するデータブロックを関係性ありとする。具体的には、プロセス1がデータブロック1にアクセスし、その後、連続してデータブロック2にアクセスした場合、データブロック1−データブロック2の関係性を「+1」する。
そのようにして、各プロセスの関係性を積算して算出した関係性4020の例を図23にて示す。図23における表4021において、行のデータブロック1と列のデータブロック2の値(4022)の「2」は、上述の時間区間Tにおいて、データブロック1へのアクセス後に連続してデータブロック2へアクセスした回数が「2」回であることを示している。また、図23の関係性の表4021をグラフ表記すると関係グラフ4023となる。当該グラフ4023は回数「0」の辺を表記していない。この結果から、本来は、データブロック1、2、6がプロセス1の処理計算機のデータ領域すなわちデータ領域(130−1)、データブロック3、4、5がプロセス2の処理計算機のデータ領域すなわちデータ領域(130−2)に保存されているのが好ましいことを示している。
ここで、本実施例4における情報処理システム4100の概略図を図24に示す。当該情報処理システム4100は、図21の情報処理システム4000のデータ領域の構成を詳細化した図である。情報処理システム4100は、各データ領域130−1、130−2に、各データブロックに対応する情報子格納領域1〜6(4101−1〜4101−6)を持つ。この格納領域はひとつ以上の情報子を保存する機能を持つ。
続いて、本実施例4の情報処理方法について説明する。図25に各プロセスのアクセスチャート4200を示す。本実施例4では、各データブロックのアクセス時に、各データブロックに対応する情報子格納領域に対し処理を実施するものとする。この処理例4300を図26に示す。ここでは、プロセス1がデータブロック1にアクセスした時、情報子の格納領域1に対する処理4201として、当該領域1に保存されている情報子を取得する。すなわち情報子数を減算する。当該例では、当該処理前には情報子数=10に対し、当該処理4210において、上述の領域1に保存されている情報子を5個取得している(情報子数=10−5=5)。その後、プロセス1はデータブロック2にアクセスするため、上述のデータブロックに対応する情報子の格納領域2に対し処理4202を実施する。本処理では、前処理4201で取得した5つの情報子を、当該領域2に加算する(4211)。そしてさらに、当該処理では、当該領域から情報子を取得する(4212)。このような処理を繰り返すことで、情報子を各データブロックに対応する格納領域間で循環させる。関連性の高い(連続してアクセスされやすい)データブロックは、情報子の分布によって、同一のクラスタに分類される。定期的に、情報子の分布に従ってデータブロックを計算機のデータ領域間で移動させることで、関連性の高いデータブロックを同一の計算機に集めることができる。
次に、本実施例4の計算例を示す。図27に、各情報子の格納領域1〜6が保存する情報子の数の時間変化を示す。また当該図27において、各情報子の格納領域に保存される情報子の数の初期状態を表4310にて示す。ここで、本例は、情報子の状態数は2(状態uと状態v)で、上述の時間変化や表4310の情報子数は状態u―状態vの式で算出している。また、初期状態は、データ領域130−1上の領域1〜3は情報子u=10、情報子v=0(情報子uー情報子v=10)、データ領域130−2上の上記領域4〜6は情報子u=0、情報子v=10(情報子uー情報子v=−10)とする。各領域の情報子数は、データブロックへのアクセス毎に更新され、図27のように時間変化していく。
図27の時刻Tpに着目すると、格納領域3と格納領域6の情報子の状態数の大小が反転している。そのため、初期状態では、領域1〜3と領域4〜6というクラスタであるが、時刻Tfでは、領域1、2、6と領域3、4、5というクラスタに変化している。これは、図23のデータブロック間の関係性4020で前述した好ましいデータブロックの配置になっている。
−−−実施例5−−−
次に、倉庫における荷物のピックアップ作業に関し、当該作業を行う作業者の動線距離を短くするように、倉庫内の棚の再配置を行う問題を扱う場合の情報処理方法について実施例5として示す。図28にて、対象とする倉庫500の構成を例示する。当該倉庫500は複数の領域を持つ。図28における倉庫500は、領域A(5010−1)〜領域D(5010−4)の4つの領域を持つ。これら各領域A〜Dは、該当領域内に複数の棚が配置されている。図28の例では、領域A(5010−A)に置かれている棚の1つとして棚5011−A1を図示しているが、その他の複数の棚が配置されているものとする。領域B〜領域Dも領域Aと同様に複数の棚を備えている。さらに、各棚は、複数の荷物を置くことができる。図28の例では、棚A−1(5011−A1)に荷物5012−A1−1、5012−A1−2が配置された例を図示している。他の棚についても同様に複数の荷物を配置可能である。
続いて、上述の各棚に配置された荷物のピックアップ作業について説明する。図29にピックアップ作業の概念例を示す。図29において、作業者5100は所定の荷物リスト5110に従って、各棚に置いてある荷物をピックアップする。本例では、ピックアップする荷物は荷物5012−A1−1、5012−B1−2、5012−D1−1であるから、作業者5100は、各荷物が置かれている棚5011−A1、5011−B1、5011−D1を訪問することになる。その場合、該当作業者の移動経路は移動経路5120のようになる。ここで、荷物のピックアップ順は規定されない。
次に、上述の荷物のピックアップ作業において、複数の作業者がいた場合、本実施例の情報処理方法により作業者の移動経路を削減する方法について説明する。図30に棚に備わる計算機および作業者が保持する移動端末を示す。本例では、各棚に計算機5210が設置されており、また、各作業者5100は移動端末5220を保持している。こうした計算機5210および移動端末5220の構成例を図31にて示す。
続いて本例の情報処理方法におけるフローの概念について説明する。図32において、作業者5100が棚B−1(5011−B1)から荷物を取得した状態1(5301)の後、上述の作業者5100が棚B−1(5011−B1)から棚D−1(5011−D1)に移動して状態2(5302)となり、その後、作業者5100が棚−1(5011−1)から荷物を取得して、状態3(5303)に至った一連の作業例を示している。
上述の状態1(5301)において、作業者5100が棚B−1から荷物を取得する時、該当作業者5100が保持する移動端末5220と棚B−1に備えられた計算機5210−B1との間で通信を実施し、互いの情報子数を更新する。また、状態2において作業者5100が棚を移動し、状態3で別の棚5011−D1から荷物を取得する時、該当作業者5100が保持する移動端末5220と棚D−1に備えられた計算機5210−D1との間で通信を実施し、互いの情報子数を更新する。すなわち、作業者5100を介して、棚B−1から棚D−1へ情報子が移動している。こうした動作を複数の各作業者で実施することで、棚間で情報子が循環することになる。
その後、各棚の計算機5210は、自身に備えられた情報子数から、各棚の移動先を算出する。たとえば、情報子の種類が2種(状態uと状態v)であった場合、状態u>状態vの時、移動先の領域をA、状態u<=状態vの時、移動先の領域をBとする。図33において、各棚に備えられた計算機5210と移動先の関係を記述した表5400を示す。この表5400から、棚A−1と棚B−2とは領域B、棚A−2、棚B−1、棚B−3は領域Aとなる。その後、各棚は上述の移動先領域に従って移動することとなる。この移動は、計算機5210からの指示を受けた棚の自走機構や、或いは棚の移動を実行するロボットにより実行される。またこうした移動の実行タイミングは、計算機5210からの指示により毎日夜間でも良いし、隔日などであってもよい。
次に、本例における計算機5210のフローチャートについて説明する。図34に各計算機5210のフローチャートを示す。各計算機5210は、当該フロー開始後、情報子数を初期化(ステップ5511)する。その後、当該計算機5210の受信処理(ステップ5512)、送信処理(ステップ5513)のプロセスを起動する。その後、計算機5210は計算結果の取得処理(ステップ5514)を起動する。こうした各処理(ステップ5511〜5513)は、実施例3に関する図17に記載の各処理(ステップ3111〜3114)と同様なものとできる。
このうち計算結果の取得処理(ステップ5514)に関するフローチャートを図35にて示す。このフローにおけるステップ5611にて、各計算機5210は、自身が保持する各状態の情報子数を比較し、最大の情報子数を保有する状態を選択する。例えば、状態数が2状態(uとv)であって、ある頂点上の状態uの情報子数が1、状態vの情報子数が2の場合、計算機5210は状態vを選択する。その後、計算機5210は、ステップ5612において、上述のステップ5611で選択した状態に対応する移動先領域を決定し、ネットワーク等で接続された所定の表示装置ないし自身の入出力装置1024に表示する。例えば、状態vが最大の状態であった場合、対応する領域は領域B(状態uは領域A)である。
本実施例5の効果は図36に示す通りである。図36においては、計算機5210による上述の棚移動のシミュレーションによる、作業者の移動距離削減効果について示している。この例では、初期状態5700の時の移動距離を1とした時、本実施例5による解析結果に基づく棚移動を実施した場合の収束状態5701において、倉庫にてピックアップ作業を行う作業者の移動距離は0.08となり、削減効果は92%となった。
−−−実施例6−−−
次に、ソシアルネットワークサービスなどの複数のユーザ間の交流サービスにおいて、ユーザのクラスタリング、すなわちコミュニティを検出する問題を扱う際の、情報処理方法について実施例6として説明する。ここでは、上述の実施例3において各頂点がユーザで、頂点間の辺がユーザ間の交流とする情報処理システムを想定する。ここで、交流とは、例えば、メール送受信、メッセージ送受信、個人のページへの訪問や投稿などが該当する。
図37に本実施例6の概念例を示す。図37において、ユーザ1(6011)とユーザ2(6012)が、それぞれ保有する端末6031、6032を利用し、交流サービスを通じてメッセージ送信(6020)を行った場合を想定する。この場合、ユーザ1は、保有する端末1(6031)を操作し、例えばメッセージ送信画面6040から、ユーザ2に宛ててメッセージを送信する。このメッセージはサーバなどの交流サービスの情報処理システムを介し、ユーザ2の端末2(6032)に届けられ、例えば、メッセージ受信画面6041が該当端末にて表示されることになる
図38に本実施例6における情報子の交換例を示す。図38において、情報子を、各ユーザが保持する端末または上述の交流サービスを提供している情報処理サービスの各ユーザの記憶領域、に保存するものとする。この場合、初期状態を状態1(6101)とする。
その後、ユーザ1(6011)がユーザ2(6012)にメッセージを送信する時、該当端末6031、6032はメッセージに情報子を付加する。状態2(6102)にて、端末6031、6032がメッセージに付加する情報子数6113の例を示す。ここでは、ユーザ1の端末6031から情報子5個が付加された例となっている。
その後、状態3(6103)において、上述のメッセージをユーザ2の端末6032が受信した時、上述のメッセージに付加された情報子に基づき、ユーザ2の端末6032で保持する情報子数6112を更新する。以上の一連の手順から、メッセージを介してユーザ間で情報子が循環することとなる。実施例3や図39にて示すように、こうして更新された各頂点の情報子数(図39における時刻t+2の状態)から、各ユーザ(=頂点)の属するコミュニティを特定する。こうして特定されたコミュニティは、例えば、同一コミュニティに属するユーザの公開テキスト情報から頻出キーワードを抽出し、該当コミュニティに属するユーザにマーケティングを行うなどの応用が考えられる。以上から、本実施例にて交流サービス上でのユーザのコミュニティを検出できる。
−−−実施例7−−−
次に、上述の実施例5にて示した倉庫において、図29の各作業者5100の荷物リスト5110が予め入手できた場合の棚の最適配置をシミュレーションする形態について実施例7として示す。上述の実施例5においては、倉庫内での作業者5100の移動に合わせて棚の最適配置を実施するとしたが、本実施例7では、例えば計算機5210が荷物リスト5110を入手してから、該当荷物リスト5110中の荷物の発送まで十分な時間があるならば、計算機5210が、この荷物リスト5110からグラフ構造データを作成し、実施例1にて示した情報処理システム100と同様の計算を実行する。
計算機5210は、その計算結果(分類結果)から、上述の実施例5で示した、分類結果(情報子数)と移動先領域の関係表に基づき棚の移動先を算出する。こうした計算機5210による棚移動先の算出後、倉庫内にて実際に作業者5100が荷物のピックアップ作業に入る前に、計算機5210にて算出された棚の移動先に従って棚を配置する。棚の配置手段については実施例5と同様である。よって、本実施例7は、計算機5210が、1つ以上の荷物リスト5110からグラフ構造データを生成する方法に対応したものとなる。
計算機5210が上述の荷物リストからグラフ構造データを生成する概念について説明する。図40に実施例7の概念図を示す。この場合、例えば、3つの荷物リスト7001、7002、7003が存在し、作業者5100はこれらリスト7001〜7003の番号順に荷物をピックアップするとする。また、各棚を頂点とすると、倉庫内における作業者5100の移動の軌跡は作業者5100の軌跡のグラフ7010のようにできる。このグラフ7010の各辺に付加された値は、該当作業者の通過回数である。グラフ7010の辺を、上述の通過回数の最大数で規格化すると、規格化された作業者の軌跡のグラフ7011のようになる。このグラフ7011は、各辺に重みを付加されたグラフ構造データとなる。
こうしたグラフ構造データを、実施例1、2と同様の情報処理システムが処理することで、頂点すなわち棚を分類することが可能であり、この分類結果に対応する移動先を実施例5の方法で算出することで、各棚の移動先を算出できる。
−−−実施例8−−−
次に、情報処理システムの計算機が実施例1における遷移確率式(数式1)を表として持つ形態について、実施例8として示す。図41〜43において、遷移確率表1〜3として、遷移確率表8001〜8003の各例を示している。情報処理システムの計算機は、この遷移確率表8001〜8003に、自頂点の情報子数(u,v)と隣接頂点の情報子数(ΣNju、ΣNjv)とを照合し、表中での対応値を特定することで遷移確率を決定する事ができる。上記の各表8001〜8003の値は、計算機が予めシミュレーションを実行し、目的とする結果が得られる値を実験的に算出したものとなる。
以上、本実施形態の情報処理システムおよび情報処理方法によれば、大規模で一箇所に集めることができないデータや、時々刻々と更新されるデータに対する効率的な計算が可能となる。
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の情報処理システムにおいて、前記各計算機は、前記頂点に関して自身が保持している前記識別子データのうち個数が最も多い識別子データの属性を、該当頂点の属性と判定するものである、としてもよい。これによれば各頂点に対応する事象について、そのクラスタリングを効率的に行うことができる。
また、上述の情報処理システムにおいて、前記各計算機は、前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数とを変数とした所定関数により、自計算機から隣接する他の計算機への該当識別子データの遷移確率を計算する数式を保持しており、当該数式を用いて前記遷移確率を計算するものである、としてもよい。これによれば、各事象のクラスタリングの根拠となる識別子データの個数に関して効率的で精度良好な更新処理を行うことが可能となる。
また、上述の情報処理システムにおいて、前記各計算機は、前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数との関係に応じて予め定められた 自計算機から隣接する他の計算機への該当識別子データの遷移確率を規定する表を保持しており、当該表を用いて前記遷移確率を計算するものである、としてもよい。これによれば、各事象のクラスタリングの根拠となる識別子データの個数に関して更に効率的で精度良好な更新処理を行うことが可能となる。
また、上述の情報処理システムにおいて、前記各計算機は、前記遷移確率の計算結果に応じて識別子データの個数を更新する際、自身と前記隣接する計算機とで保持する識別子データの個数の総和を維持するよう更新を行うものである、としてもよい
また、上述の情報処理システムにおいて、前記グラフ構造における複数頂点に対して1つの計算機が対応するとしてもよい。これによれば、複数の頂点すなわち複数の事象に関して統括するサーバ装置において本発明の情報処理方法を実行することが可能となる。
また、本実施形態における、ネットワークを介してメッセージを送受信する複数の端末と管理計算機とを含む情報処理装システムにおいて、前記各端末は、前記ネットワークを介したメッセージの送受信に代えて、各端末が物理的に近接した場合に該当端末間で直接通信を行い、該当端末が保持している識別子データの個数を更新するものである、としてもよい。これによれば、インターネット等の広域通信回線だけでなく各種の近接無線通信等の手段によるメッセージ授受の形態にも対応して処理を行うことが可能となる。
また、本実施形態の情報処理方法において、前記各計算機が、前記頂点に関して自身が保持している前記識別子データのうち、個数が最も多い識別子データの属性を、該当頂点の属性と判定する、としてもよい。
また、上述の情報処理方法において、前記各計算機が、前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数とを変数とした所定関数により、自計算機から隣接する他の計算機への該当識別子データの遷移確率を計算する数式を保持しており、当該数式を用いて前記遷移確率を計算する、としてもよい。
また、上述の情報処理方法において、前記各計算機が、前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数との関係に応じて予め定められた 自計算機から隣接する他の計算機への該当識別子データの遷移確率を規定する表を保持しており、当該表を用いて前記遷移確率を計算する、としてもよい。
1 ネットワーク
100 情報処理システム
220 計算機
221 CPU
222 主記憶装置
223 ストレージ
225 ネットワークインターフェイス
226 プログラム
3020 デバイス
5011 棚
5220 移動端末

Claims (14)

  1. 解析対象の事象に対応した複数の頂点と、対応する事象間の関係性に応じて該当頂点間を結ぶ辺とで構成されるグラフ構造をモデルとして、前記各頂点にそれぞれ対応し、前記辺に対応してデータ授受可能に互いに接続される複数の計算機と、
    前記各計算機に蓄積される、前記頂点の事象に対する1つ以上の状態をあらわす属性を持つ識別子データを保持する記憶装置と、
    前記記憶装置において前記各頂点に関して保持する識別子データの個数を、前記頂点の分布に基づく空間分布図として表示する表示装置と、を含み、
    前記各計算機は、前記辺で結ばれて隣接する前記頂点に対応する計算機との間で、互いの保持する識別子データの個数に基づく所定のアルゴリズムにより、互いの計算機の間での識別子データの遷移確率を計算し、当該計算結果に応じて、互いの計算機の保持する識別子データの個数を更新するものである、
    ことを特徴とする情報処理システム。
  2. 前記各計算機は、
    前記頂点に関して自身が保持している前記識別子データのうち、個数が最も多い識別子データの属性を、該当頂点の属性と判定するものである、
    ことを特徴とする請求項1に記載の情報処理システム。
  3. 前記各計算機は、
    前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数とを変数とした所定関数により、自計算機から隣接する他の計算機への該当識別子データの遷移確率を計算する数式を保持しており、当該数式を用いて前記遷移確率を計算するものである、
    ことを特徴とする請求項1に記載の情報処理システム。
  4. 前記各計算機は、
    前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数との関係に応じて予め定められた 自計算機から隣接する他の計算機への該当識別子データの遷移確率を規定する表を保持しており、当該表を用いて前記遷移確率を計算するものである、
    ことを特徴とする請求項1に記載の情報処理システム。
  5. 前記各計算機は、
    前記遷移確率の計算結果に応じて識別子データの個数を更新する際、自身と前記隣接する計算機とで保持する識別子データの個数の総和を維持するよう更新を行うものである、
    ことを特徴とする請求項1に記載の情報処理システム。
  6. 前記グラフ構造における複数頂点に対して1つの計算機が対応することを特徴とする請求項1に記載の情報処理システム。
  7. 管理計算機と、倉庫内の棚各々に設置された計算機と、前記棚に配置された荷物を集荷する各作業員が所持して前記計算機にアクセス可能な携帯端末と、を含み、
    前記各計算機は、
    前記棚ないし該当棚に配置された荷物に関する所定事象に対応した複数種類の識別子データの個数の情報を保持しており、
    前記各携帯端末からのアクセスを受けて、該当携帯端末が保持する識別子データを受信し、当該計算機が既に保持する前記識別子データの過去の変動状況に基づき決定した識別子データを前記携帯端末へ送信し、前記携帯端末との前記識別子データの送受信の結果の差引数で、当該計算機が保持している前記複数種類の識別子データの個数を更新するものであり、
    前記各携帯端末は、
    前記計算機から前記識別子データを受信し、当該受信した識別子データにより、自身が保持している識別子データを更新するものであり、
    前記各計算機は、
    前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数のうち一番多い種類に対応付けられた配置先へ、自身が設置されている棚を移動する指示を前記管理計算機へ出力するものである、
    ことを特徴とする情報処理システム。
  8. 管理計算機と、データセンタ内の各データに対応付けた計算機と、を含み、
    前記各計算機は、
    前記データに関する所定事象に対応した複数種類の識別子データの個数の情報を保持しており、
    前記各データを利用するプログラムからのアクセスを受けて、該当プログラムが保持する識別子データを受信し、当該計算機が既に保持する前記識別子データの過去の変動状況に基づき決定した識別子データを前記プログラムへ与え、前記プログラムとの前記識別子データの送受信の結果の差引数で、当該計算機が保持している前記複数種類の識別子データの個数を更新するものであり、
    前記各プログラムは、
    前記計算機から前記識別子データを受信し、当該受信した識別子データにより、自身が保持している識別子データを更新するものであり、
    前記各計算機は、
    前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数のうち一番多い種類に対応付けられた配置先へ、自身が対応付けされているデータを移動する指示を前記管理計算機へ出力するものである、
    ことを特徴とする情報処理システム。
  9. ネットワークを介してメッセージを送受信する複数の端末と管理計算機とを含み、
    前記各端末は、
    複数種類の識別子データの個数に関する情報を保持し、
    前記メッセージを送信する場合、自身が既に保持している前記識別子データの個数の過去の変動状態に基づき決定した前記識別子データを付加したメッセージを、前記複数の端末のなかの他の端末に送信し、当該送信した識別子データの個数を差し引くことにより、自身が保持している前記複数種類の識別子データの個数を更新し、
    前記メッセージを受信する場合、受信した前記メッセージに付加された識別子データの個数を加えることにより、自身が保持している前記複数種類の識別子データの個数を更新し、
    前記識別子データの個数の更新から所定時間経過後、自身が保持している前記複数種類の識別子データの個数を前記管理計算機に送信するものであり、
    前記管理計算機は、
    前記各端末より前記複数種類の識別子データの個数を受信して、前記識別子データの個数が最も多い種類が共通する端末が同じグループであることを示す情報を、前記管理計算機が有する表示端末に表示するものである、
    ことを特徴とする情報処理システム。
  10. 前記各端末は、
    前記ネットワークを介したメッセージの送受信に代えて、各端末が物理的に近接した場合に該当端末間で直接通信を行い、該当端末が保持している識別子データの個数を更新するものである、
    ことを特徴とする請求項9に記載の情報処理システム。
  11. 解析対象の事象に対応した複数の頂点と、対応する事象間の関係性に応じて該当頂点間を結ぶ辺とで構成されるグラフ構造をモデルとして、前記各頂点にそれぞれ対応し、前記辺に対応してデータ授受可能に互いに接続され、前記頂点の事象に対する1つ以上の状態をあらわす属性を持つ識別子データを保持する複数の計算機が、
    前記辺で結ばれて隣接する前記頂点に対応する計算機との間で、互いの保持する識別子データの個数に基づく所定のアルゴリズムにより、互いの計算機の間での識別子データの遷移確率を計算し、当該計算結果に応じて、互いの計算機の保持する識別子データの個数を更新し、
    前記各頂点に関して保持する識別子データの個数を、前記頂点の分布に基づく空間分布図として表示装置にて表示する、
    ことを特徴とする情報処理方法。
  12. 前記各計算機が、
    前記頂点に関して自身が保持している前記識別子データのうち、個数が最も多い識別子データの属性を、該当頂点の属性と判定する、
    ことを特徴とする請求項11に記載の情報処理方法。
  13. 前記各計算機が、
    前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数とを変数とした所定関数により、自計算機から隣接する他の計算機への該当識別子データの遷移確率を計算する数式を保持しており、当該数式を用いて前記遷移確率を計算する、
    ことを特徴とする請求項11に記載の情報処理方法。
  14. 前記各計算機が、
    前記アルゴリズムとして、自身で保持する前記各頂点に関する識別子データの個数と、前記隣接する計算機が保持する前記各頂点に関する識別子データの個数との関係に応じて予め定められた 自計算機から隣接する他の計算機への該当識別子データの遷移確率を規定する表を保持しており、当該表を用いて前記遷移確率を計算する、
    ことを特徴とする請求項11に記載の情報処理方法。
JP2016518659A 2014-05-12 2014-05-12 情報処理システムおよび情報処理方法 Expired - Fee Related JP6178506B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/062563 WO2015173854A1 (ja) 2014-05-12 2014-05-12 情報処理システムおよび情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2015173854A1 JPWO2015173854A1 (ja) 2017-04-20
JP6178506B2 true JP6178506B2 (ja) 2017-08-09

Family

ID=54479428

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016518659A Expired - Fee Related JP6178506B2 (ja) 2014-05-12 2014-05-12 情報処理システムおよび情報処理方法

Country Status (3)

Country Link
US (1) US10635986B2 (ja)
JP (1) JP6178506B2 (ja)
WO (1) WO2015173854A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017056168A1 (ja) * 2015-09-28 2017-04-06 株式会社日立製作所 情報処理システムおよび情報処理方法
JP6611679B2 (ja) * 2016-06-30 2019-11-27 株式会社日立製作所 データ生成方法及び計算機システム
US10511585B1 (en) * 2017-04-27 2019-12-17 EMC IP Holding Company LLC Smoothing of discretized values using a transition matrix
US10572854B2 (en) * 2017-11-09 2020-02-25 Locus Robotics Corporation Order grouping in warehouse order fulfillment operations
CN110019989B (zh) * 2019-04-08 2023-11-03 腾讯科技(深圳)有限公司 一种数据处理方法及装置
US11816095B2 (en) * 2019-11-27 2023-11-14 128 Technology, Inc. Metrics and events infrastructure
WO2022009339A1 (ja) * 2020-07-08 2022-01-13 日本電気株式会社 会話監視装置、制御方法、及びコンピュータ可読媒体
CN112256801B (zh) * 2020-10-10 2024-04-09 深圳力维智联技术有限公司 抽取实体关系图中关键实体的方法、系统和存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8429184B2 (en) * 2005-12-05 2013-04-23 Collarity Inc. Generation of refinement terms for search queries
US9063979B2 (en) * 2007-11-01 2015-06-23 Ebay, Inc. Analyzing event streams of user sessions
JP4720853B2 (ja) * 2008-05-19 2011-07-13 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
EP2326626B1 (en) * 2008-08-20 2013-10-16 Merck Sharp & Dohme Corp. Ethenyl-substituted pyridine and pyrimidine derivatives and their use in treating viral infections
US8190119B2 (en) * 2009-03-03 2012-05-29 E3 Llc System and method for direct communication between wireless communication devices
US9270518B2 (en) * 2010-05-17 2016-02-23 Hitachi, Ltd. Computer system and rule generation method
JP2013041530A (ja) * 2011-08-19 2013-02-28 Fuji Xerox Co Ltd 経路算出のためのプログラム及び経路算出装置
US8903824B2 (en) 2011-12-09 2014-12-02 International Business Machines Corporation Vertex-proximity query processing
AU2013200876A1 (en) * 2012-02-24 2013-09-12 Callum David Mcdonald Method of graph processing
US9374310B2 (en) * 2013-10-08 2016-06-21 Dell Products L.P. Systems and methods of inter data center out-bound traffic management
US9894633B2 (en) * 2013-12-06 2018-02-13 Google Llc Reminders based on device proximity using bluetooth LE

Also Published As

Publication number Publication date
US20170083824A1 (en) 2017-03-23
US10635986B2 (en) 2020-04-28
JPWO2015173854A1 (ja) 2017-04-20
WO2015173854A1 (ja) 2015-11-19

Similar Documents

Publication Publication Date Title
JP6178506B2 (ja) 情報処理システムおよび情報処理方法
Wang et al. A knowledge-guided multi-objective fruit fly optimization algorithm for the multi-skill resource constrained project scheduling problem
US11392843B2 (en) Utilizing a machine learning model to predict a quantity of cloud resources to allocate to a customer
EP3716075A1 (en) Utilizing machine learning models to process resource usage data and to determine anomalous usage of resources
Yang et al. A spatiotemporal compression based approach for efficient big data processing on cloud
Jung et al. New modularity indices for modularity assessment and clustering of product architecture
Fukunari et al. An efficient cycle time model for autonomous vehicle storage and retrieval systems
US11663282B2 (en) Taxonomy-based system for discovering and annotating geofences from geo-referenced data
US20190303836A1 (en) Determining optimal workforce types to fulfill occupational roles in an organization based on occupational attributes
Shafiei-Monfared et al. A novel approach for complexity measure analysis in design projects
CN109669985A (zh) 在微服务环境中使用相关数据分配执行任务
Zhuo et al. Scheduling dynamic block assembly in shipbuilding through hybrid simulation and spatial optimisation
Chen et al. GraphLoc: A graph-based method for indoor subarea localization with zero-configuration
Mo et al. Cloud-based query evaluation for energy-efficient mobile sensing
JP6363305B2 (ja) 情報処理システムおよび情報処理方法
US11782923B2 (en) Optimizing breakeven points for enhancing system performance
Azimi et al. Performance management in clustered edge architectures using particle swarm optimization
CN114386734A (zh) 使用人工智能和机器学习用于技术分析的企业管理系统
Carvalho et al. Improving cellular automata scheduling through dynamics control
CN113761381A (zh) 兴趣点推荐的方法、装置、设备以及存储介质
Zaher et al. An effective model for Selection of the best IoT platform: A critical review of challenges and solutions
Ma Discovering consensus preferences visually based on Gower plots
Han et al. A data mining trajectory clustering methodology for modeling indoor design space utilization
US11973657B2 (en) Enterprise management system using artificial intelligence and machine learning for technology analysis and integration
US20230316372A1 (en) Peer-based selection using machine learning

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161031

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161031

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170713

R150 Certificate of patent or registration of utility model

Ref document number: 6178506

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees