(57)【要約】【課題】  モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、前記第一領域に配列された各テナントと前記第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、前記第一領域と前記第二領域とで共通のテナントがある場合には前記第二領域のテナントで得られた出力要素群を前記第一領域の共通のテナントの入力要素群とする構造の３領域ハウジングを一つの処理単位とし、構造が単純で、登録作業が理解しやすく、登録作業も簡単で、ハウジングの多階層化が容易に理解できるように、３領域ハウジングの各領域のテナントとして下位ハウジングを階層的に入れ子可能とする。【解決手段】  入れ子ハウジングが上位域ハウジングのどの領域にあるかにより処理を分類し、入れ子ハウジングの演算処理をそれ自身で閉じた処理とする。【選択図】  図８
2004178573.tif 000002
【特許請求の範囲】
【請求項１】
モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、前記第一領域に配列された各テナントと前記第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、前記第一領域と前記第二領域とで共通のテナントがある場合には前記第二領域のテナントで得られた出力要素群を前記第一領域の共通のテナントの入力要素群とする構造の３領域ハウジングを一つの処理単位とし、
この３領域ハウジングの各領域のテナントとして下位ハウジングを階層的に入れ子可能とする
演算処理方法において、
上位の３領域ハウジングの第一領域と第二領域とで共通の下位ハウジングがテナントとなっている場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの第一領域の当該テナントの情報としてその上位の３領域ハウジングの演算を継続し、
上位の３領域ハウジングの第一領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングにおける当該テナントの演算を開始する前に下位ハウジングの演算を行って、その結果を上位の３領域ハウジングの当該テナントの情報としてその上位の３領域ハウジングの演算を継続し、
上位の３領域ハウジングの第二領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの当該テナントの情報とする
ことを特徴とする演算処理方法。
【請求項２】
下位ハウジングはそれ自身がひとつの３領域ハウジングであり、上位の３領域ハウジングからの情報を第一領域の情報とし、第二領域に得られた情報を上位の３領域ハウジングに渡す請求項１記載の演算処理方法。
【請求項３】
下位ハウジングは入出力要素群がそれぞれテナントとして１行または１列に配列されそれ自身では演算を実行する必要のない１領域ハウジングである請求項１記載の演算処理方法。
【請求項４】
１領域ハウジングにはさらに別の１領域ハウジングあるいは３領域ハウジングをテナントとして入れ子可能である請求項３記載の演算処理方法。
【請求項５】
上位の３領域ハウジングの第三領域のテナントとして下位ハウジングを入れ子可能であり、その下位ハウジングには前記上位の３領域ハウジングの第一領域の対応するテナントと第二領域の対応するテナントとの間で情報を受け渡すためのテーブルが登録され、前記上位の３領域ハウジングの第一領域の対応するテナントからの情報を下位ハウジングに渡し、その下位ハウジングの演算結果を前記上位の３領域ハウジングの第二領域の対応するテナントの情報とする請求項1記載の演算処理方法。
【請求項６】
前記第二領域の対応するテナントに別の下位３領域ハウジングが入れ子になっている場合には、その下位３領域ハウジングの第一領域にあって第二領域にはないテナントに情報を渡す請求項５記載の演算処理方法。
【請求項７】
ハウジングの構造に対応して各テナントを識別する情報およびその配置をルーミング・テーブルとして画面表示するとともに、この画面表示されたルーミング・テーブル上での操作者の操作にしたがって各テナントの登録および内容編集を行い、
下位ハウジングについては、操作者が当該テナントを指定する毎に別のルーミング・テーブルを画面表示して、その下位ハウジングへのテナントの登録およびその内容編集を行う
請求項１記載の演算処理方法。
【請求項８】
請求項１ないし６のいずれか記載の方法をコンピュータに実行させるためのプログラム。
【請求項９】
モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、前記第一領域に配列された各テナントと前記第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、前記第一領域と前記第二領域とで共通のテナントがある場合には前記第二領域のテナントで得られた出力要素群を前記第一領域の共通のテナントの入力要素群とし、各領域のテナントとして下位ハウジングを階層的に入れ子可能な構造の３領域ハウジングを一つの処理単位として演算を実行する演算手段を備えた演算処理装置において、
前記演算手段は、
上位の３領域ハウジングの第一領域と第二領域とで共通の下位ハウジングがテナントとなっている場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの第一領域のテナントの情報として返してその上位の３領域ハウジングの演算を継続する手段と、
上位の３領域ハウジングの第一領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングにおける当該テナントの演算を開始する前に下位ハウジングの演算を行って、その結果を上位の３領域ハウジングの当該テナントの情報としてその上位の３領域ハウジングの演算を継続する手段と、
上位の３領域ハウジングの第二領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの当該テナントの情報とする手段と
を含む
ことを特徴とする演算処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経営現象、社会・経済現象、あるいは自然現象の因果関係をモデルとしてあらわす技術に関する。特に、企業経営の実績計算および計画立案と評価、社会・経済の分野の計画および評価を行うための情報処理技術に関する。さらに詳しくは、情報処理装置により、計算論理の膨大な連鎖として記述される複雑な現象を多階層化し、全体として解りやすく、可視性を備え、詳細分部への到達性能が高く、かつ効率的な記述に基づく計算を行うことのできる技術に関する。
【背景技術】
【０００２】
経営現象、社会・経済現象、あるいは自然現象の因果関係をモデルとして表す場合、その仕組みとなるデータとその演算論理を、全体として、透明性を備えた可視性をもって表現することが望ましい。そのような技術として本願発明者らは、処理ステップ毎に明確にとらえて表す独特の構造体、すなわち「３領域ハウジング」という構造体を発明し、既に特許出願した（特許文献１参照）。
【０００３】
３領域ハウジングは、上辺部、中央部、左辺部の３領域からなる格子状の構造をもち、個々の格子（これを「ルーム」という）内にテナントとなる情報を格納し、３領域の情報の間で垂直および水平方向の関係付けと中央部テナントの指定する演算とを可能とする仕組みを保つ構造体である（図１参照）。
【０００４】
この構造体では、ルーム収納情報に関する配置と管理情報を持つ３領域ルーミング・テーブルによって全体と演算の関係を俯瞰することができるとともに（図３参照）、３領域ルーミング・テーブルのテナントをクリックすることで、テナント情報にアクセスできる。
【０００５】
上辺部と左辺部のルームには共通のテナント名を登録でき、そのテナント情報は共有できる（「中間テナント」という）。上辺部にあって左辺部にないテナント名（「先決テナント」という）から出発して、その直下の中央部のルームの情報（「中央部テナント」という）と演算する。同様の演算を経てきた平行列のルームの結果同士を水平方向に演算し、その結果を直左の左辺部ルームの情報（「左辺部テナント」という）とする。上辺部と左辺部とに共通のテナント名が登録されている場合には、上辺部のテナントをあらためて出発点とし、同様な演算を進行し、順次、左辺部テナントに演算結果を得て、ルーミング・テーブルから読み出せる演算の全てが終わるまで進行する。
【０００６】
演算には算術演算、行列演算、繰り込み級数演算、条件演算、リストデータ処理等、広範な演算が可能であり、ハウジング全体の条件ループ演算も可能とする。また、単に情報を受け渡したり、選択するだけの処理も可能である。さらには、マクロやコマンド等を含む実行可能なオブジェクトを実行することも可能である。本明細書において「演算」とは、これらのすべての処理を含むものとする。
【０００７】
中央部のルームには、演算を特徴付けるタイプ記号を冠したテナントを配置し、これを解釈することにより上辺部と左辺部にまたがる演算を行い、これにより、従来のプログラミングを大幅に不要とする。
【０００８】
また、これらテナントには、数値データ、文字データ、バイナリーデータの他に、入れ子となるハウジングが可能で、ルーミング・テーブルの上辺部、左辺部および中央部の３領域を上位ハウジングに配置することにより、入れ子ハウジングと一体となったモデル作成、変更、演算などを実現することができる。
【０００９】
上位の３領域ハウジングに下位の３領域ハウジングを入れ子にするには、上位３領域ハウジングのルーミング・テーブルにおいて、下位の入れ子３領域ハウジングを三領域に分解して扱う（図５参照）。すなわち、入れ子３領域ハウジングの左辺部を上位ハウジングの上辺部に、入れ子３領域ハウジングの上辺部を左辺部のルームに交差的に登録して、上下の３領域ハウジング連鎖を可能とする。これを階層化し、表示画面上のルーミング・テーブルから下位の３領域ハウジングへ展開可能とし、また、上位３領域ハウジングの演算の一環としてこれらの計算を可能として、より巨大なモデル構造体を構成できる。上位３領域ハウジングの中央部には、入れ子３領域ハウジングとの間で受け渡しを可能とするリンク・テーブルを配置し、細かな受け渡しを行う。
【００１０】
上位３領域ハウジングに入れ子３領域ハウジング構造を配置し、演算の途中で入れ子ハウジングを経由するには、ルーミング・テーブル上に中間テナント領域を確保し、上位３領域ハウジングのルーミング・テーブルにおいて、上位３領域ハウジングからの入力を受け取るため左辺部に、入れ子3領域ハウジング名に加えその上辺部を認識する文字列（例えば「Ｕ」）を付加し、さらに、それを上位３領域ハウジングの上辺に渡す意味で、この同じ文字列（「Ｕ」を付加したもの）を上位３領域ハウジングの上辺部に配置し、ルーミング・テーブルの中央部域の直下に、入れ子３領域ハウジングの中央部を意味する入れ子３領域ハウジング名を配置し、その左辺部に、入れ子３領域ハウジング名と左辺部を認識する文字列（例えば「Ｌ」）を付加して配置し、さらに、それを上位３領域ハウジングの上辺に回す意味で、同じ文字列を上辺部に配置することによって、３領域ハウジングと入れ子３領域ハウジングの受け渡しと上位３領域ハウジングからの演算実行を行う。
【００１１】
しかし、従来の演算処理方法では、上位３領域ハウジングのルーミング・テーブルに登録しなければならない入れ子３領域ハウジングの登録箇所が、上位３領域ハウジングの上辺部と左辺部と入れ子となっている場合で５箇所、上辺部のみまたは左辺部のみに入れ子となっている場合で各４箇所と多く、しかも領域を分けた名称として扱う必要があり、さらに上位ルーミング・テーブルの上辺部には入れ子３領域ハウジングの左辺部名を認識できるように配置するという、操作作業者の直感に逆らう煩雑な配置が発生せざるを得ず、誤り作業が多く発生する可能性があり、登録作業効率および画面操作効率の点で大きな課題があった。
【００１２】
また、上位３領域ハウジングのルーミング・テーブルに登録する箇所が多くなるため、ルーミング・テーブルも大きくなり、画面に表示できる領域を縦および横に大きく占有し、表示効率や必要箇所への到達作業効率が良好とは言えず、モデル作業に対する俯瞰的把握も容易とはいえなかった。
【００１３】
さらに、入れ子３領域ハウジングを領域に分割して登録しているために、構造表現の制約上、ルーミング・テーブル上に大きな入力禁止区域が発生し、画面表示効率を下げ、テーブル・スクロールの頻度を高めるなど、画面操作の非効率を招き、ユーザーにとって表示モデルの直感的理解の困難を招く可能性のある無意味な区域が発生していた。
【００１４】
また、入れ子３領域ハウジングの上辺部テナントのデータをその入れ子３領域ハウジング以外のテナント（入れ子ハウジングを含む）にも渡したい場合、その入れ子３領域ハウジングを演算実行して左辺部テナントとして得た後、必要とする中央部テナントの上辺部テナントとして上辺部に回す必要があり、モデリング上、煩雑で演算効率も良いとは言えなかった。
【特許文献１】特開２００１−３５７１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
現実の現象に照らして、人間が一覧でき、想像し、扱いやすい広がりには、現実的限界がある。このため、表現すべきモデルの対象が極めて大きく、取り扱い要素間の関係が複雑・多岐にわたる場合は、これを扱いやすくするコンピュータ技術が必要であると共に、
１．地図帳のように、マクロ的表現から、その表現上である部分を特定するとミクロ的表現へと順次展開していき、全体的にも部分的にも理解可能で、しかも表現されたモデルを計算実行できること、
２．全体イメージはあくまでも一つの巨大世界があって、あり得る全ての相互の因果関係を表せること
が必要である。
【００１６】
しかし、特許文献１に記載された方法では、入れ子ハウジングをルーミング・テーブルに登録するためには、上位ハウジングとの情報の受け渡しを設定する関係から、入れ子ハウジングについても上位ハウジングのルーミング・テーブル内に展開する必要があり、必ずしも単純な構造とならず、登録作業も簡単とはいえない課題があった。
【００１７】
本発明は、このような課題を解決し、構造が単純で、登録作業が理解しやすく、登録作業も簡単で、ハウジングの多階層化が容易な演算処理方法および装置ならびにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明は、入れ子ハウジングが上位域ハウジングのどの領域にあるかにより処理を分類し、入れ子ハウジングの演算処理をそれ自身で閉じた処理とすることを最も重要な特徴とする。
【００１９】
すなわち、本発明の第一の観点によると、モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、前記第一領域に配列された各テナントと前記第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、前記第一領域と前記第二領域とで共通のテナントがある場合には前記第二領域のテナントで得られた出力要素群を前記第一領域の共通のテナントの入力要素群とする構造の３領域ハウジングを一つの処理単位とし、この３領域ハウジングの各領域のテナントとして下位ハウジングを階層的に入れ子可能とする方法において、
上位の３領域ハウジングの第一領域と第二領域とで共通の下位ハウジングがテナントとなっている場合（このような下位ハウジングを上位ハウジングの演算の途中で演算を行うハウジングという意味で「中間ハウジング」という）には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの第一領域の当該テナントの情報としてその上位の３領域ハウジングの演算を継続し、
上位の３領域ハウジングの第一領域のみにテナントとなっている下位ハウジングがある場合（このような下位ハウジングを上位ハウジングの演算に先立って演算を行うという意味で「先決ハウジング」という）には、その上位の３領域ハウジングにおける当該テナントの演算を開始する前に下位ハウジングの演算を行って、その結果を上位の３領域ハウジングの当該テナントの情報としてその上位の３領域ハウジングの演算を継続し、
上位の３領域ハウジングの第二領域のみにテナントとなっている下位ハウジングがある場合（このような下位ハウジングを上位ハウジングの演算の結果を演算するという意味で「後決ハウジング」という）には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの当該テナントの情報とする
ことを特徴とする演算処理方法が提供される。
【００２０】
ここでいう「演算」は、算術演算、行列演算、繰り込み級数演算、条件演算、リストデータ処理等の演算のみならず、単なる情報の受け渡しや選択、マクロやコマンド等を含む実行可能なオブジェクトの実行などの処理を含むものとする。
【００２１】
下位ハウジングはそれ自身がひとつの３領域ハウジングであり、上位の３領域ハウジングからの情報を第一領域の情報とし、第二領域に得られた情報を上位の３領域ハウジングに渡すことができる。
【００２２】
下位ハウジングとして、３領域ハウジングだけでなく、入出力要素群がそれぞれテナントとして１行または１列に配列されそれ自身では演算を実行する必要のない１領域ハウジングを用いることもできる。その場合に、１領域ハウジングにさらに別の１領域ハウジングあるいは３領域ハウジングをテナントとして入れ子にすることができる。
【００２３】
上位の３領域ハウジングの第三領域のテナントとして下位ハウジングを入れ子可能であり、その下位ハウジングには前記上位の３領域ハウジングの第一領域の対応するテナントと第二領域の対応するテナントとの間で情報を受け渡すためのテーブル（これを「リンク・テーブル」という）が登録され、上位の３領域ハウジングの第一領域の対応するテナントからの情報を下位ハウジングに渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの第二領域の対応するテナントの情報とする。このリンク・テーブルは、それ自身が下位ハウジング（リンクテーブル）を入れ子とすることができる。第三領域のテナントにリンク・テーブルが入れ子になっており、かつ第二領域の対応するテナントにも別の下位３領域ハウジングが入れ子になっている場合には、その下位３領域ハウジングの第一領域にあって第二領域にはないテナント（先決テナント）にリンク・テーブルからの情報を渡す。
【００２４】
ハウジングの構造に対応して各テナントを識別する情報およびその配置をルーミング・テーブルとして画面表示するとともに、この画面表示されたルーミング・テーブル上での操作者の操作にしたがって各テナントの登録および内容編集を行い、下位ハウジングについては、操作者が当該テナントを指定する毎に別のルーミング・テーブルを画面表示して、その下位ハウジングへのテナントの登録およびその内容編集を行うことが望ましい。
【００２５】
以上の方法は、コンピュータプログラムにより実施することができる。
【００２６】
本発明の第二の観点によると、モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、前記第一領域に配列された各テナントと前記第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、前記第一領域と前記第二領域とで共通のテナントがある場合には前記第二領域のテナントで得られた出力要素群を前記第一領域の共通のテナントの入力要素群とし、各領域のテナントとして下位ハウジングを階層的に入れ子可能な構造の３領域ハウジングを一つの処理単位として演算を実行する演算手段を備えた演算処理装置において、前記演算手段は、上位の３領域ハウジングの第一領域と第二領域とで共通の下位ハウジングがテナントとなっている場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの第一領域のテナントの情報として返してその上位の３領域ハウジングの演算を継続する手段と、上位の３領域ハウジングの第一領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングにおける当該テナントの演算を開始する前に下位ハウジングの演算を行って、その結果を上位の３領域ハウジングの当該テナントの情報としてその上位の３領域ハウジングの演算を継続する手段と、上位の３領域ハウジングの第二領域のみにテナントとなっている下位ハウジングがある場合には、その上位の３領域ハウジングの演算順にしたがってその第二領域のテナントとなっている下位ハウジングに情報を渡し、その下位ハウジングの演算結果を上位の３領域ハウジングの当該テナントの情報とする手段とを含むことを特徴とする演算処理装置が提供される。
【発明の効果】
【００２７】
本発明では、下位ハウジングが上位ハウジングのどの領域に入れ子になっているかを分類し、それぞれに対応して処理を行う。これにより、上位ハウジングとの情報の受け渡しに関して上位ハウジングのルーミング・テーブルに展開する必要がなく、下位ハウジングの処理を上位ハウジングの処理から閉じたものとすることができる。このため、ハウジングおよびルーミング・テーブルの構造が単純になり、ルーミング・テーブル上での登録作業が理解しやすくなり、登録作業も簡単になる。
【００２８】
また、本発明によれば、入れ子ハウジングとして、３領域ハウジングだけでなく、演算を伴わない１領域ハウジングも同様に扱うことが可能となる。
【発明を実施するための最良の形態】
【００２９】
図１および図２は、本発明で用いられるハウジングの構成例として、３領域ハウジングおよび１領域ハウジングの構成を示す。
【００３０】
３領域ハウジングは、モデル化しようとする事象の各種の入力要素群がそれぞれテナントとして１行または１列に配列される第一領域と、この第一領域に配列された個々のテナントと因果関係のある出力要素群がテナントとして1列または1行に配列される第二領域と、第一領域に配列された各テナントと第二領域に配列された各テナントとのそれぞれの関係を表す論理がテナントとして格子状に配列される第三領域とからなり、第一領域と第二領域とで共通のテナントがある場合には第二領域のテナントで得られた出力要素群を第一領域の共通のテナントの入力要素群とする構造をもつ。
【００３１】
図１では、第一領域が上辺部、第二領域が左辺部、第三領域が中央部に配置された例を示す。各領域は格子状に配列されたルームにより構成され、これらのルームにそれぞれテナントが格納される。これらのテナントとして、別の３領域ハウジングを階層的に入れ子にすることもできる。
【００３２】
図１の例では、上辺部にテナントＡ、Ｂ、Ｃ、ＧおよびＤが格納され、左辺部にテナントＢ、Ｃ、Ｄ、ＥおよびＦが格納されている。また、中央部には、上辺部のテナントＡに対応する列の左辺部のテナントＢに対応する行に、これらの関係を表すテナントＭが格納され、以下同様に、テナントＡ列のテナントＣ行にテナントＮ、テナントＢ列のテナントＤ行にテナントＯ、テナントＣ列のテナントＥ行にテナントＰ、テナントＧ列のテナントＦ行にテナントＱ、テナントＤ列のテナントＦ行にテナントＲが格納されている。このとき、上辺部左を演算の始点とし、上辺部テナントＡに対して中央部テナントＭの演算を施してその結果を左辺部テナントＢの情報とするとともに、さらに中央部テナントＮの演算を施してその結果を左辺部テナントＣの情報とする。左辺部テナントＢの情報はそのまま上辺部テナントＢの情報となり、中央部テナントＯの演算が施され、その結果が左辺テナントＤの情報となる。以下同様にして、上辺部テナントＡおよびＧの入力に対して、左辺部テナントの各出力が得られる。これを式で表すと、演算順に、
Ｂ＝Ｍ＊Ａ
Ｃ＝Ｎ＊Ａ
Ｄ＝Ｏ＊Ｂ
Ｅ＝Ｐ＊Ｃ
Ｆ＝（Ｑ＊Ｇ）★（Ｒ＊Ｄ）
ただし、＊は縦方向演算（例えば内積）、★は横方向演算（例えば加算）、
となる。
【００３３】
また、本発明では、３領域ハウジングに加え、上位ハウジングと入れ子の関係に同様の関係を受け継ぐ１領域ハウジングを導入する。この１領域ハウジングは、それ自身では情報の受け渡し以外の処理を伴わない（ただし、このハウジングのテナントに３領域ハウジングを入れ子とした場合には、その入れ子ハウジングを演算実行する）ものとし、上位ハウジングにおいて上辺部に配置されれば横長のものとして、左辺部に配置されれば縦長のものとして扱う。これにより、入れ子構造に関し、１領域ハウジングも３領域ハウジングと同等に扱うことが可能なる。
【００３４】
図３および図４はそれぞれ図１および図２に示したハウジングに対応するルーミング・テーブルを示す。このルーミング・テーブルは、ハウジングの構造に対応して、各テナントを識別する情報およびその配置を画面表示するとともに、この画面表示されたルーミング・テーブル上での操作者が操作することにより、各テナントの登録および内容編集を行うことができる。テナントを識別する情報としては、上辺部および左辺部に関してはテナント名、中央部に関しては演算を特徴付けるタイプ記号を用いる。
【００３５】
ここで、本発明の実施形態について説明する前に、上述の特許文献１に示された入れ子構造について詳しく説明する。
【００３６】
図５は上位３領域ハウジングに下位の３領域ハウジングを入れ子にした場合の従来のルーミング・テーブルの一例を示す。ここでは、上位３領域ハウジングの演算の途中で得られた情報が受け渡され、それに演算を施して上位３領域ハウジングに情報を受け渡す中間ハウジングの例として入れ子ハウジングＡ、上位３領域ハウジングの演算とは因果関係のない情報を演算して上位３領域ハウジングに渡す先決ハウジングの例として入れ子ハウジングＢ、上位３領域ハウジングの演算の結果を演算する後決ハウジングの例として入れ子ハウジングＣを示す。
【００３７】
入れ子ハウジングＡは、その上辺部および左辺部が上位３領域ハウジングのそれぞれ上辺部および左辺部のルームに登録されるとともに、その左辺部が上位３領域ハウジングの上辺部のルームに、その上辺部が左辺部のルームに交差的に登録される。また、上位３領域ハウジングの中央部には、上位３領域ハウジングから入れ子ハウジングＡの上辺部に情報を受け渡すための演算のテナントと、入れ子ハウジングＡの中央部のテナントと、入れ子ハウジングＡの左辺部から上位３領域ハウジングへ情報を受け渡すための演算のテナントとが登録される。
【００３８】
入れ子ハウジングＢは先決ハウジングであり、その上辺部および左辺部が上位３領域ハウジングのそれぞれ上辺部および左辺部のルームに登録されるとともに、その左辺部が上位３領域ハウジングの上辺部のルームに登録される。また、上位３領域ハウジングの中央部には、入れ子ハウジングＢの中央部のテナントと、入れ子ハウジングＢの左辺部から上位３領域ハウジングへ情報を受け渡すための演算のテナントとが登録される。
【００３９】
入れ子ハウジングＣは、上位３領域ハウジングの演算の結果を演算するハウジングであり、その上辺部および左辺部が上位３領域ハウジングのそれぞれ上辺部および左辺部のルームに登録されるとともに、その上辺部が上位３領域ハウジングの上辺部のルームに登録される。また、上位３領域ハウジングの中央部には、上位３領域ハウジングから入れ子ハウジングＣの上辺部に情報を受け渡すための演算のテナントと、入れ子ハウジングＣの中央部のテナントとが登録される。
【００４０】
図６は本発明により上位３領域ハウジングに下位の３領域ハウジングを入れ子にした場合のルーミング・テーブルの一例を示す。ここでは、図５の従来例と同様に、中間、先決および後決の三つの入れ子ハウジングＡ、Ｂ、Ｃを例に説明する。
【００４１】
ハウジングによる演算を行うためには、まず、ルーミング・テーブルへの登録および内容編集を行う。すなわち、上位３領域ハウジングのルーミング・テーブル（以下「上位ルーミング・テーブル」という）の上辺部、左辺部にはテナント名を登録し、中央部には演算を特徴付けるタイプ記号を登録する。また、個々のテナントを選択して、その内容を作成または編集する。入れ子となるハウジングについては、名称のみを登録する。上位ルーミング・テーブルでの入れ子ハウジングの領域名の指定作業は不要である。また、上位ルーミング・テーブルの中央部への入れ子ハウジングの登録も不要であり、その中央部への中間テナント領域の確保も行わずに、冗長な表現を避ける。ただし、理解の上で必要になるときには、従来の冗長な表示方式も選択により表示可能とする。上位ルーミング・テーブルの表示画面で入れ子ハウジング名を選択した場合には、入れ子ハウジングのモードとなってそのルーミング・テーブルが表示され、入れ子ハウジングとしての通常の作成・登録・表示などの一連の画面に展開できる。
【００４２】
ルーミング・テーブルへの登録および編集が終了すると、その内容に規則上の問題がないかをチェックし、問題がなければ、実際の演算処理を行う。
【００４３】
この演算処理において、入れ子ハウジングＡについては、上位の領域ハウジングの上辺部（第一領域）と左辺部（第二領域）とで共通にテナントとなっているので、上位３領域ハウジングの演算順にしたがってその左辺部のテナントとなっている入れ子ハウジングＡに情報を渡し、その入れ子ハウジングＡの演算結果を上位３領域ハウジングの上辺部の当該テナントの情報として、その上位３領域ハウジングの演算を継続する。入れ子ハウジングＢについては、上位３領域ハウジングの上辺部のみにテナントとなっており、その上位の３領域ハウジングにおける当該テナントの演算を開始する前に入れ子ハウジングＢの演算を行って、その結果を上位の３領域ハウジングの当該テナントの情報としてその上位の３領域ハウジングの演算を継続する。入れ子ハウジングＣについては、上位３領域ハウジングの左辺部のみにテナントとなっており、上位の３領域ハウジングの演算順にしたがって入れ子ハウジングＣに情報を渡し、入れ子ハウジングＣの演算結果を上位の３領域ハウジングの当該テナントの情報とする。
【００４４】
図７は上位３領域ハウジングに下位の１領域ハウジングを入れ子にした場合のルーミング・テーブルの例を示す。この例においても、図６と同様に、中間、先決および後決の三つの入れ子ハウジングＡ、Ｂ、Ｃを例に説明する。
【００４５】
中間入れ子１領域ハウジングの場合は、図７に示す入れ子ハウジングＡとして示すように、上位３ハウジングの左辺部で上位３領域ハウジングのテナントから情報を受け取り、３領域ハウジングの上辺部の同名の１領域ハウジングにそのまま情報を渡し、上位ハウジングの演算順に復帰する。先決入れ子１領域ハウジングの場合は、図７の入れ子ハウジングＢとして示すように、上位３領域ハウジングの上辺部にのみ登録され、上位３領域ハウジングの演算実行において、この入れ子ハウジングＢそのものが先決として、その内部構造であるテナントから上位ハウジングのテナントに情報を渡し、上位ハウジングの演算順に沿った展開をする。同様に、後決入れ子一領域ハウジングの場合は、図７に入れ子ハウジングＣとして示すように、上位３領域ハウジングの左辺部にのみ存在し、上位３領域ハウジングの演算実行においては、この後決入れ子そのものが後決として、その内部構造であるテナントに、上位ハウジングのテナントから情報を渡し保存し、上位ハウジングの演算順に戻る。
【００４６】
図８に、図６および図７を参照して説明した演算実行時の処理の流れを示す。
【００４７】
図９は上位ハウジングと下位の入れ子ハウジングとの組み合わせ例を示す。上述の説明では、上位ハウジングが３領域ハウジングであり、そこに下位の３領域ハウジングまたは１領域ハウジングが入れ子となる場合について説明したが、１領域ハウジングにも、３領域ハウジングまたは１領域ハウジングを入れ子とすることができる。
【００４８】
図１０は上位３領域ハウジングへ中間ハウジングを入れ子にする場合のモデル作成および修正作業の処理の流れを示す。ここではハウジングは全て３領域ハウジングとし、「３領域」を省略して説明する。
【００４９】
ハウジング・ドメインＺＺの作業者が、ハウジング・リストから入れ子ハウジングをもつ（中間入れ子ハウジング、先決入れ子ハウジング、後決入れ子ハウジング、各１つをもつ）上位ハウジングＸＹＺを選択し、上位ルーミング・テーブルを表示し、中間入れ子ハウジング名ＣＣＣを選択し、作業者のドメインとは異なる遠隔のドメインＲＲに入り、そこで管理されているハウジングＣＣＣの表示を画面でモデル作成・修正作業を行う。
【００５０】
上位ルーミング・テーブルにおいて中間テナントは、上・左辺部双方に登録する必要から、中間入れ子ハウジングＣＣＣも入れ子ハウジング名を上左辺部双方に登録している。なお、中央部において、この登録名の交点に当たる交点の場所は、演算ループを構成するため入力禁止として、入力作業を受け付けない。
【００５１】
このルーミング・テーブルの登録修正作業の結果、画面からは、次の演算順設定が読み取れる。
【００５２】
上辺部テナントＡＡＡと中央テナントＮＮＮの演算結果は中間テナントＢＢＢとなる。ＢＢＢから左曲がり矢印で示されるリンク・テーブルを経由して、ＣＣＣの上辺部先決テナントに渡され、ＣＣＣの演算が行われ、その結果であるＣＣＣ左辺部のテナントがルーミング・テーブル上辺部のＣＣＣに受け渡しされる。
【００５３】
後決テナントＤＤＤへは、左曲がり矢印でＣＣＣからリンク・テーブル経由で渡るデータと、テナントＢＢＢと中央部テナントＯＯＯで決まる演算結果と、横方向演算の結果が渡される。
【００５４】
先決入れ子ハウジングＦＦＦの演算結果である左辺部テナントは、ＰＰＰと縦方向演算を行い、左辺部にある後決入れ子テナントＥＥＥに渡り、ＥＥＥの演算を行う。
【００５５】
このような演算を想定し、この中間入れ子ハウジングＣＣＣのモデル作成・修正作業に入るには、上辺部または左辺部のＣＣＣをクリックし、入れ子のルーミング・テーブルに展開し（この場合、中間入れ子であるため、いずれのＣＣＣをクリックしても同じ展開となる）モデル作成・修正作業へ、さらに、必要により、テナントに関する展開に進んでデータの前提修正作業を行う。同様に、先決入れ子テナント、後決入れ子テナントの登録・修正作業は同様に上位から下位に展開して行う。設定作業は再び上位ハウジングの画面に戻り終了する。
【００５６】
図１１は上位３領域ハウジングの演算実行にしたがって入れ子ハウジングの演算実行を行う処理の流れを示す。
【００５７】
既登録の入れ子ハウジングをもつ上位ハウジングＸＹＺの演算実行は、演算実行のフェーズで、内部的に、上位ハウジングのルーミング・テーブルを呼び出し、展開した演算シーケンスに従って、そのステップ毎に実行し、入れ子ハウジングに遭遇した都度に、入れ子ハウジングを呼び出し、その演算シーケンスを展開し、実行し、その全ステップを実行した時点で、上位ハウジングの実行シーケンスに戻って演算を実行して、演算を終了する。
【００５８】
この実施例では、上位ハウジングＸＹＺの演算実行シーケンスで先決入れ子ハウジングＦＦＦに遭遇した時点で、この入れ子ハウジングの演算を実行し、その結果である左辺部のテナントを上位ハウジングに受け渡し、これを先決として上位ハウジングの演算を進行する。
【００５９】
また、この例では、後決入れ子ハウジングＥＥＥに遭遇した時点で、この後決入れ子ハウジングの上辺部の先決テナントにデータを受け渡し、演算を実行し、終了し、上位ハウジングに戻り、以降の演算ステップは残されていないので、上位ハウジングＸＹＺの演算実行を終了する。
【００６０】
図１２は従来の方法における入れ子ハウジングの三層構造を説明する図であり、図１３は本発明における入れ子ハウジングの三層構造を説明する図である。本発明では、層構造形成の場合を図１２のように形成する必要があったが、本発明により、図１３のように操作者にとって自然なイメージで多階層構造を形成できることとなる。これにより、３領域ハウジングの上・左辺部に他のハウジングを入れ子として階層化する場合に、
１．入れ子ハウジングをもつ上位ハウジングのルーミング・テーブルを縦横共に大幅にコンパクトにでき、モデル表示領域を広げスクロール作業を大幅に削減できる、
２．上位ハウジングのルーミング・テーブルへの登録作業が、
中間入れ子の場合：５箇所から２箇所
先決および後決入れ子の場合：４箇所から１箇所
と簡潔となり、作業が大幅に減少する、
３．登録名に領域区分を付す必要がないため登録名も短くなり、設定作業量が減少するだけでなく、上位ハウジングの領域名とこれに登録する入れ子ハウジングの領域区分名を交差的に配置する場合の混乱を避けることができる。
４．上位のルーミング・テーブルにおける入力禁止区域を削減でき（中間入れ子の場合、中央部に無意味な区域がでるが、これはシステム側から排除可能）、作業者の混乱を避けることができる
という効果が得られる。
【００６１】
さらに、一領域ハウジングの考案により、入れ子ハウジングそのものの登録作業が簡略になり、演算実行が無いため、演算実行の効率が向上する。さらに、これにより、３領域ハウジングにおいて、上・左辺部は一領域ハウジングの多階層の入れ子のみで構成する構造も実現可能となる。
【００６２】
以上の説明では３領域ハウジングの上・左辺部へのハウジングの入れ子構造について説明したが、中央部テナントについても同様に階層構造のとすることができる。
【００６３】
図１４は入れ子ハウジングをテナントとするハウジングにおける中央部の受け渡し階層構造の例を示す。上位３領域ハウジングの中央部テナントとして下位ハウジングを入れ子可能であり、その下位ハウジングには、上位３領域ハウジングの上辺部の対応するテナントＴＵの情報と左辺部の対応するテナントＴＬとの間で情報を受け渡すためのテーブル（リンク・テーブル）が登録される。そして、テナントＴＵからの情報をリンク・テーブルに渡し、そのリンク・テーブルの演算結果をテナントＴＬの情報とする。
【００６４】
ここで、テナントＴＵに３領域ハウジングが入れ子となっている場合には、その入れ子となっている３領域ハウジングの左辺部の情報をリンク・テーブルの上辺部に渡す。テナントＴＬに３領域ハウジングが入れ子となっている場合には、リンク・テーブルの左辺部に得られた情報を、テナントＴＬに入れ子となっている３領域ハウジングの上辺部のテナントのうち先決テナントに渡す。
【００６５】
入れ子となっているリンク・テーブルについても、図１４に示すように、さらに入れ子構造とすることができる。
【００６６】
このようにして、中央部ハウジングについても、上・左辺部ハウジングと同様に、操作者にとって自然なイメージで多階層構造を形成することができ、ルーミング・テーブルをコンパクトにしてモデル表示領域を広げ、スクロール作業を大幅に削減できる。
【図面の簡単な説明】
【００６７】
【図１】本発明で用いられる３領域ハウジングの構成例を示す図。
【図２】本発明で用いられる１領域ハウジングの構成例を示す図。
【図３】図１に示したハウジングに対応したルーミング・テーブルを示す図。
【図４】図２に示したハウジングに対応したルーミング・テーブルを示す図。
【図５】上位３領域ハウジングに下位の３領域ハウジングを入れ子にした場合の従来のルーミング・テーブルの一例を示す図。
【図６】上位３領域ハウジングに下位の３領域ハウジングを入れ子にした場合のルーミング・テーブルの一例を示す図。
【図７】上位３領域ハウジングに下位の１領域ハウジングを入れ子にした場合のルーミング・テーブルの一例を示す図。
【図８】演算実行時の処理の流れを示すフローチャート。
【図９】上位ハウジングと下位の入れ子ハウジングとの組み合わせ例を示す図。
【図１０】上位３領域ハウジングへ中間ハウジングを入れ子にする場合のモデル作成および修正作業の処理の流れを示す図。
【図１１】上位３領域ハウジングの演算実行にしたがって入れ子ハウジングの演算実行を行う処理の流れを示す図。
【図１２】従来の方法における入れ子ハウジングの三層構造を説明する図。
【図１３】本発明における入れ子ハウジングの三層構造を説明する図。
【図１４】入れ子ハウジングをテナントとするハウジングにおける中央部の受け渡し階層構造の例を示す図。
【図１】
2004178573.tif 000003
【図２】
2004178573.tif 000004
【図３】
2004178573.tif 000005
【図４】
2004178573.tif 000006
【図５】
2004178573.tif 000007
【図６】
2004178573.tif 000008
【図７】
2004178573.tif 000009
【図８】
2004178573.tif 000010
【図９】
2004178573.tif 000011
【図１０】
2004178573.tif 000012
【図１１】
2004178573.tif 000013
【図１２】
2004178573.tif 000014
【図１３】
2004178573.tif 000015
【図１４】
2004178573.tif 000016