JPH087685B2 - ル−ル動作モニタシステム - Google Patents

ル−ル動作モニタシステム

Info

Publication number
JPH087685B2
JPH087685B2 JP60042631A JP4263185A JPH087685B2 JP H087685 B2 JPH087685 B2 JP H087685B2 JP 60042631 A JP60042631 A JP 60042631A JP 4263185 A JP4263185 A JP 4263185A JP H087685 B2 JPH087685 B2 JP H087685B2
Authority
JP
Japan
Prior art keywords
rule
character string
item
box
rules
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 - Lifetime
Application number
JP60042631A
Other languages
English (en)
Other versions
JPS61202230A (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
Priority to JP60042631A priority Critical patent/JPH087685B2/ja
Publication of JPS61202230A publication Critical patent/JPS61202230A/ja
Publication of JPH087685B2 publication Critical patent/JPH087685B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、IF−THEN型ルールの内容と相互関係を整理
し、現況データやルールの起動状況を表示するルール動
作をモニタシステムに係り、特にルールの起動状況のチ
エツク、制御指令の妥当性のチエツクに好適なルール動
作モニタシステムに関する。
〔発明の背景〕
従来、ルールのチエツクは、「日本語スクリーンエデ
イタ(Screen editor)による因果知識の入力とその体
系化」(情報処理学会第27回全国大会前刷,pp1153〜115
4(昭58))に示されるようにルールの構造を階層化
し、画面上に図示するシステムを用いて行なわれてい
た。この方法ではルールの静的な構造を把握し、ルール
の抜けのチエツクを行なうことはできるが、初期現況
(ルールで結論されず、外部から与えられる条件部)、
中間結論(ルールで結論され、他のルールでも使用され
る条件部),最終結論(ルールで結論され、他のルール
でも使用される条件部といつた層分けや、ルールと文字
列の区別が明確にされておらず、チエツクに手間どる等
の問題があつた。このため層分けや、ルールと文字列の
区別を明確にし、これらの問題点を解決したルール構造
解析システムを先に出願した(特願昭59−92815)。し
かしながら、これらのような支援システムでは、どのよ
うな現況が揃い、そのもとで、どのルールがどのような
順序で起動され、どのような中間結論を出し、その結果
どのような制御指令(最終結論)が出たか、つまり、ル
ール起動状態の妥当性や制御指令の妥当性が動的にチエ
ツクできないという問題があつた。
〔発明の目的〕
本発明の目的は、ルールの起動状況の妥当性,制御指
令の妥当性のチエツクを支援するため、ルール群全体の
相互関連の上で、現況データやルール起動状況を表示す
るシステムを提供することにある。
〔発明の概要〕
上記目的実現のため、本システムでは、 (1)ルールの関連を階層的に表示する。
(2)制御指令の決定は、先ず、設備群の状態を文字列
に交換してワーク・テーブルに格納し、次にルールのIF
部の文字列とワークテーブル内の文字列のパターン・マ
ツチングによりIF部の条件判定を行ない、条件が満足さ
れたならば、THEN部文字列を結論として新しくワーク・
テーブルに書き加えるという方法を繰り返すことにより
行なう。ここで、IF部の条件判定が満足されて、ルール
が起動された時、静的に描かれたルール関連図上の該当
する文字列,IF部の条件が満足されたことによつて起動
されたルール,そのルールによつて導かれた結論,およ
び、その文字列−ルール−文字列間の配線を点滅させた
り重ね書きすることによりルールの起動状況を把握でき
るようにする。
(3)ルール関連図を構成する各文字列を示す図形の中
には、該当する文字列をしるす。この図形の中にしるす
文字列は、パラメータ部分(図1(b)の1110のように
‘<',‘>’で囲まれた部分)を除いた固定部(図1
(b)の1120)だけをしるし、固定部が等しい文字列
は、重複してルール関連図上に、書かないようにする。
このようにすることによつて関連図が複雑になることを
防ぐことができる。
(4)また、上記(3)のような特徴をもつルール関連
図において、パラメータ部分の矛盾をチエツクするため
に、(2)のような動的なチエツクが有効である。
〔発明の実施例〕
以下、本発明の一実施例を図面を用いて説明する。
第1図(a)は、ルールの記述方法を示す。IFの後に
続く文字列101をIF部文字列と呼び、THENの後に続く文
字列102をTHEN部文字列と呼ぶ。手続名103は、このルー
ルが使用する最適化プログラムの名称であり、必要でな
ければ省略される。IF部文字列が全て真となる時にの
み、THEN部の文字列が全て真となる。手続名103が記さ
れている場合、当該プログラムにより最適値が算出され
て、THEN部文字列中の変数に代入される。TYPEの後に
は、ルールタイプ104として0又は1が記されている。
ルールタイプが1とは、そのルールのTHEN部文字列が最
終結論を意味しているものであり、ルールタイプが0と
は、そのルールのTHEN部文字列が中間結論を意味してい
るものである。
第2図は、制御論理をIF〜TEHN型ルールで記述した例
である。制御の内容は、供給されたワークをステーシヨ
ンに割付ける作業割付けである。制御の方針は、(1)
ワークは供給された順序に割付ける、(2)ステーシヨ
ンは稼働率の小さいものを優先する、である。No.1のル
ールは割付けるべきワークを決定する。No.2,No.3のル
ールは、そのワークを割付ける対象ステーシヨンを決定
する。すなわち、No.2のルールによりそのワークの作業
を行なう機能がありかつ現在空いているステーシヨンが
候補に挙げられる。No.3のルールは、それらの候補のう
ち稼働率最小のものを選択する。No.4のルールは、供給
の台車が使えることを確認し、最終的に制御指令を決定
する。
第3図は、出力図面の1例を示したものであり、第2
図に記したルール群に対応している。この図の特徴は、
3種類の枠型301,302,303を使用する。3層(シス
テム現況、中間結論,制御指令)に分離して各枠を配置
する、配線の交叉数が最小となるように各枠を配置す
る、枠内にルール中の文字列や手続名を記述する、等
の点にある。枠型301は、IF部文字列、THEN部,文字列
を囲うものであり、それらの中で特に制御指令となる文
字列は枠型302で囲う。枠型303は、ルール識別名や手続
名を囲うものである。第2図における文字列201〜211,
ルール識別名221〜224,手続名231が、第3図の枠内に転
記されている。なお第4図中のシステム現況、「中間結
論」,「制御指令」の文字データは、表示処理505(後
出)にデータ文として与えられる。
第4図は、本発明を実現するシステム構成の1例を示
したものである。本システムは、各種プログラムの起動
コマンドやデータを入力するためのコンソール端末41
0。IF−THENルールのIF部文字列と設備群の状態を文字
列に変換した現況とのパターンマツチングにより最終結
論を決定するIF−THENルール実行計算機411,あるルール
のTHEN部文字列が、他のルールのIF部文字列となり、さ
らにそのTEHN部文字列が他のルールのIF部文字列になる
といつたルールの構造を解析し、起動ルールの表示処理
を行なうルール動作モニタ計算機412。各種データやテ
ーブルの格納を行なう記憶装置413。システムの状態を
入力したり、最終結論を設備群に出力する入出力装置41
4。ルールの構造をグラフイツクに表示し、起動ルール
の表示を行なうグラフイツクデイスプレイ415。ルール
関連図のハードコピーの出力を行なうXYブロツク416。
制御対象となる整備群417。および各種制御線418,419よ
り構成されている。
次に第5図を用いて全体の処理の流れの概要をテーブ
ルとの関連を含めて示す。まず、構造解析・配置・配線
プログラム510は、ルール入力プログラム501,ルール構
造解析プログラム502,配置処理プログラム503,作図処理
プログラム504,表示処理プログラム505からなる。又、
本図で512は、ルールデータテーブル、513は項目テーブ
ル、514は、項目関連テーブル、515は項目配置テーブ
ル、517は、文字列配置テーブル、516は、ルール配置テ
ーブル、518は、関連線テーブルである。ルール入力プ
ログラム501は、「IF〜THEN…」で記述されたルール
を、コンソール端末410或はデータフアイル511から読み
こみ、IF部文字列、THEN部文字列をルールデータテーブ
ル512に格納する。ルール構造解析プログラム502は、ル
ールデータテーブル512をもとにして、第4図の枠内に
記入する文字列やルール番号を1つの項目と見做し、そ
れらを項目テーブル513に格納するとともに、それらの
相互関連を項目関連テーブル514に格納する。これらの
データをもとに、配置処理プログラム503は階層構造化
を行ない、各項目の配置レベルを決定し、項目配置テー
ブル515に格納する。その配置データにもとづき、作図
処理プログラム504はデイスプレイ415画面上の文字列の
枠、および、ルールの枠を表示するデータを作成し、文
字列配置テーブル517,ルール配置テーブル516に格納す
る。また、枠間の配線データを作成し、関連線テーブル
518に格納する。表示処理プログラム505は、項目配置テ
ーブル515,関連線テーブル518,項目テーブルを基に、グ
ラフイツクデイスプレイ415やXYプロツタ406にルール関
連図を描き出す。
制御指令決定プログラム520は、ルールデータテーブ
ル512内のルール群のIF部文字列とワークフアイル522中
の設備群の状態の文字列とのパターンマツチングによ
り、IF部の条件判定を行ない、条件が満足されたなら
ば、THEN部の文字列を結論として新しくワーク・テーブ
ル521に書き加えるという処理を繰り返すことにより、
最終的に実行すべき最終結論を決定するプログラムであ
る。また、本プログラムにおいてIF部の文字列とワーク
テーブル521中の文字列のパターンマツチングにより、I
F部の条件が満足され適用ルールが決定した時、適用ル
ールのルール番号を適用ルールデータテーブル522に格
納するとともに、ルール動作モニタプログラム530に、
ルールが起動されたことを知らせるルール起動信号を制
御線418を介して送る。
ルール動作モニタプログラム530は、制御指令決定プ
ログラム520よりルール起動信号を受信すると、適用ル
ールデータテーブル522から適用ルールのルール番号を
読み出しディスプレイ415上に表示されているルール関
連図上の該当ルール,成立した文字列,該当ルールによ
り導かれた結論、および、該当ルールと文字列間の配線
を点滅させることにより表示する。
次に、各テーブルの詳細構造と各プログラムの詳細フ
ローを説明する。
「第7図は、ルールデータテーブル512の詳細を示す
ものである。文字列テーブル701はIF部文字列、THEN部
文字列を重複しないように格納する。文字列テーブルポ
インタ702は、文字列テーブル701が何番目まで使用され
ているかをさすポインタである。IF部文字列、THEN部文
字列は、文字列テーブルの何番目に格納されている文字
列と同一であるかにより識別され、それを文字列テーブ
ル番号と呼ぶことにする。IF部文字列番号テーブル704
は、IF部文字列の文字列番号を格納し、THEN部文字列番
号テーブル705は、THEN部文字列の文字列番号を格納す
る。手続名テーブル706は、手続名を格納し、ルールタ
イプテーブル703はルールタイプを格納する。IF部テー
ブルポインタ707は、各ルール毎のIF部文字列がIF部文
字列番号テーブル704のどこから(先頭位置)どこまで
(最終位置)に格納されているかをさすものである。以
上の、IF部テーブルポインタ707,THEN部文字列番号テー
ブル705,手続名テーブル706ルールタイプテーブル703
は、それぞれのi番目のエントリがi番目のルール番号
と暗黙に対応付けられている。ルール番号ポインタ708
は、何番目のルール番号まで使用されているかを示すも
のである。」 第6図は、ルール入力プログラム501の詳細フローで
ある。
ボツクス601は、文字列テーブル701,IF部テーブルポ
インタ707,IF部文字列番号テーブル704,THEN部文字列番
号テーブル705,手続名テーブル706,ルールタイプテーブ
ル703,文字列テーブルポインタ702,ルール番号ポインタ
708をクリアする。
ボツクス602は、データフアイル511或はコンソール端
末410からルールの1行を読み込む。もし、データがな
ければ終了する。データがあれば次へ進む。
ボツクス603は、読み込んだ1行が、TYPEの行なの
か、IFの行なのか、THENの行なのかを判定し、それぞれ
の結果において、ボツクス604,607,609にブランチす
る。
ボツクス604は、TYPEの行があつたことにより1つの
ルールの開始だと判断し、ルール番号ポインタを1だけ
加算する。
また、ルール番号ポインタ708のさすIF部テーブルポ
インタ707の先頭位置、最終位置の値を、(1つの前の
最終位置の値)+1とする。もし、ルール番号ポインタ
708の値が1であれば、先頭位置,最終位置の値を共に
1とする。
ボツクス605は、読み込んだ1行中のルールタイプ値
(0又は1)を抽出し、その値をルールタイプテーブル
703のルール番号ポインタのさす位置に格納する。
ボツクス606は、THEN部カウントを0とする。THEN部
カウントとは、1つのルール中に出現したTHEN部の数で
あり、後でボツクス609にて使用される。
ボツクス607,608はIF部文字列に対する処理を行な
う。ボツクス607は、読み込んだIF部文字列と同じ文字
列が文字列テーブル701に既に格納されているか否かを
判定する。もし格納されておれば、何番目に格納されて
いるかという格納番号を求める。もし格納されていなけ
れば、文字列テーブルポインタ702を1だけ増加し、そ
の指すところへ読み込んだIF部文字列を格納し、文字列
テーブルポインタ707の新たな値を格納番号とする。
ボツクス608は、IF部文字列番号テーブル704の更新を
行なう。まず、ルール番号ポインタ708の指しているIF
部テーブルポインタ707の最終位置ポインタを1だけ増
加する。それの指しているIF部文字列番号テーブル704
のフイールドにボツクス707で求まつた格納番号を格納
する。
ボツクス609から612は、THEN部文字列に対する処理を
行なう。
ボツクス609は、THEN部カウントを1だけ増加し、そ
の値が2以上の場合、ボツクス610へブランチし、その
値が1の場合、ボツクス611へブランチする。
ボツクス610は、1つのルール中に2つ以上THEN部が
出現した場合、2番目以降のTHEN部に対し、IF部とルー
ルタイプを保証するための処理を行なう。ルール番号ポ
インタ708を1だけ増加し、それの指すIF部テーブルポ
インタ707及びルールタイプテーブル703の各フイールド
に、それぞれ1つ直前のフイールドに格納されている値
を格納する。ボツクス611は、読み込んだTHEN部文字列
と同一の文字列が文字列テーブル701に格納されている
かを調べる。もし格納されておれば、その格納番号を求
める。もし格納されていなければ、文字列テーブルポイ
ンタ702を1だけ増加し、その指すフイールドへ、読み
込んだTHEN部文字列を格納し、ポインタの値を格納番号
とする。
ボツクス612は、ルール番号ポインタ708の指している
THEN部文字列番号テーブル705,手続名テーブル706の各
フイールドに、格納番号,読み込んだ手続名を格納す
る。
第8図は、項目テーブル513の詳細構造を示すもので
ある。IF部文字列,THEN部文字列,ルール番号,手続名
など,1つの枠内に記入する文字列を1つの項目と見做
す。今、文字列テーブルに格納されている文字列の数、
つまり、文字列テーブルポインタ702の値、をNとし、
ルール番号の数、つまり、ルール番号ポインタ708の
値、をMとする。
項目ID801は、項目内容802と属性803の検索キーとし
て使用するものである。IF部やTHEN部の文字列に対して
は、1〜NのID番号を与え、ルール番号と手続名の組に
はN+1〜N+MのID番号を与えるものとする。
項目内容802は、枠の内に記入する文字列である。項
目IDが1〜Nの項目の場合、IF部,THEN部の文字列が対
応し、項目IDがN+1〜N+Mの項目では、ルール番号
と手続名の組が対応する。尚、ルール中に手続名が記さ
れていない場合、項目内容の手続名のところは空白とす
る。
属性803は、属種別コードと枠種別コードの組であ
る。属種別コードは、例えば、システム現況,中間ルー
ル,制御指令の各層に対して、L1,L2,L3というコードを
割付けておく。枠種別コードは、例えば、枠型401,402,
403に対して、B1,B2,B3というコードを割付けておく。
例えば、第4図の枠403に対して、属性は(L2,B3)であ
る。
第9図は、項目関連テーブル514の詳細構造を示す。9
01,903は文字列番号、902,904はルール番号(N+M)
×(N+M)のマトリツクスであり、項目IDがiである
項目から、項目IDがiである項目へ関連があるとき、マ
トリツクスの(i,j)要素は1であり、関連がないとき
には(i,j)要素は0である。
第10図は、ルール構造解析プログラムの詳細フローを
示す。
ボツクス1101とボツクス1102は、項目内容の格納と項
目IDのセツトを行なう。
ボツクス1101は、文字列テーブル701の1番目のフイ
ールドから順に、格納してある文字列を読み出し、それ
を項目テーブル513の項目内容802の1番目のフイールド
から順に格納していく。これをN番目のフイールドまで
繰返す。このとき同時に、項目ID801のフイールドに、
順に1からNまでの値を格納する。
ボツクス1102は、手続名テーブル706の1番目のフイ
ールドから順に、格納してある手続名を読み出し、それ
とルール番号とを組合せた文字列を作成し(もし、手続
名がなければ、ルール番号だけから成る文字列とな
る。)、それを項目内容802のN+1番目のフイールド
から順に格納していく。これを手続名テーブルの706の
M番目のフイールドまで繰返す。このとき同時に、項目
ID801のフイールドに、順にN+1からN+Mまでの値
を格納する。
ボツクス1103とボツクス1104は属性の設定を行なう。
ボツクス1103は、層種別欄のセツトを行なう。まず初
期状態として、項目IDが1〜Nに対してはL1、項目IDが
N+1〜N+Mに対してはL2とする。次に、ルール番号
を示す一時的変数kを導入し、kを1からMまで順次変
えて次の操作を行なう。もし、ルールタイプテーブル70
3のk番目のフイールドに値1が格納されている場合、
そのルールに対応したルール番号をTHEN部文字列を、制
御指令層に入れる。そのため、THEN部文字列番号テーブ
ル705のk番目のフイールドに格納されている値xを読
み出し、項目IDがx及びN+kである項目の層種別コー
ドを共にL3に書き換える。
もし、ルールタイプテーブル703のk番目のフイール
ドの値が0であれば、そのルールに対応したルール番号
とTHEN部文字列を中間ルール層に入れる。そのため、TH
EN部文字列番号テーブル705のk番目のフイールドに格
納されている値xを読み出し、項目IDがx及びN+kで
ある項目の層種別コードを共にL2に書き換える。以上の
操作により、IF部文字列としてのみ使用されている文字
列に対応した項目の層種別コードはL1(システム現況
層)にセツトされている。
ボツクス1104は、枠種別欄のセツトを行なう。まず初
期設定として、項目IDが1〜Nに対してはB1,項目IDが
N+1〜N+Mに対してはB3とする。次に、前ボツクス
と同様の変数kを導入し、kを1からMまで順次変え
て、次の操作を行なう。もし、ルールタイプテーブルの
703のk番目のフイールドに値1が格納されている場
合、そのルールに対応したTHEN部文字列を囲む枠を枠型
2とする。そのために、その文字列番号xを読み出し、
項目IDがxである項目の枠種別コードをB2に書き換え
る。
ボツクス1105から1107は、項目関連テーブル514を作
成する。
ボツクス1105は、項目関連テーブル514を初期化(0
クリア)する。
ボツクス1106は、IF部文字列とルール番号との関連付
けを行なう。上記と同様の変数kを導入し、kを1から
Mまで順次変えて、次の操作を行なう。IF部テーブルポ
インタ707のk番目のフイールドに格納されている先頭
位置ポインタ値と最終位置ポインタ値とにもとづき、IF
部文字列番号テーブル704から当該する文字列番号y1,
y2,…,ypを読み出す。ここにpはそのルール中に含まれ
るIF文の数である。次に、IF部文字列とルール番号とを
関連付けるため、項目関連テーブル514の(y1,N+
k),(yZ,N+k),…,(yp,N+k)要素を全て1と
する。
ボツクス1107は、ルール番号とTHEN部文字列との関連
付けを行なう。上記と同様の変数kを導入し、kを1か
らMまで順次変えて、次の操作を行なう。THEN部文字列
番号テーブル705のk番目のフイールドに格納されてい
る文字列番号yを読み出し、項目関連テーブル514の
(N+k,y)要素を1とする。
第11図は配置処理プログラムの詳細フローである。ボ
ツクス111で、レベルカウンタを1にセツトし、ボツク
ス112で、初期現況を抽出する。初期現況は、他のルー
ルの結論となつておらず、ルールのIF部文字列としての
み現われるという定義を基に、項目関連テーブル514か
ら抽出可能である。このようにして抽出された初期現況
の文字列番号を項目配置テーブル515のレベルカウンタ
の指す列に順次格納する。つづいて、ボツクス113で
は、この項目配置テーブル515に格納された文字列が、
最終結論となつているかどうかを確認する。最終結論
は、他のルールで結論された文字列で、他のルールのIF
部文字列に使われていないという定義を基に項目関連テ
ーブル514から判定可能である。ここで、項目配置テー
ブル515のレベルカウンタが指す列に格納された文字列
が最終結論でなかつた場合は、ボツクス114でレベルカ
ウンタに1を加え、項目配置テーブル515のレベルカウ
ンタの指す列の項目の検索を続ける。本プログラムで実
現しようとするルール関連図(第3図)は文字列の枠40
1とルールの枠403が交互に現われるので、レベルカウン
タが奇数の列を指した時、その列に格納される項目は、
文字列番号であり、偶数の列を指した場合、その列に格
納される項目はルール番号である。したがつて、項目を
求めようとする列が偶数であつた場合は、求める列の1
つの前の列(レベルカウンタの指す列の1つの前の列)
に格納されている文字列がIF部に現われるルールを項目
関連テーブル514から抽出し、抽出されたルールのう
ち、IF部に表われる文字列がすべて、すでに現在、レベ
ルカウンタが指す列よりも前の列に格納されているルー
ルの番号を現在のレベルカウンタが指している項目配置
テーブルの列に順次格納してゆく。また、項目配置テー
ブル515の項目を求めようとする列(レベルカウンタの
示す種)が奇数のときは、まず、レベルカウンタの示す
値より1小さい列のルールのTHEN部文字列を抽出し、こ
の文字列をTHEN部の文字列として有するルールが、すべ
て、すでに現在、レベルカウンタが指す列よりも前の列
に格納されている文字列の番号を順次、項目配置テーブ
ル515のレベルカウンタの指す列に格納してゆく。次に
ボツクス113に戻り、項目配置テーブル515のレベルカウ
ンタが示している列の項目が最終結論であるかどうかの
判定を行なう最終結論であれば終了し、そうでなけれ
ば、上記の操作を繰り返すことによつて、項目配置テー
ブル515を作成してゆく。
第12図は、項目配置テーブル515の詳細である。本テ
ーブルの列121は、階層のレベルに対応している。した
がつて第1のレベルつまり、項目配置テーブル515の第
1列目には、システム現況の文字列番号が格納される。
また、本テーブルは、画面上のレール関連図の配置に対
応している。図を用いて具体的に示すと、例えば第12図
に示す項目配置テーブルの1行1例,2行1列,3行4列の
項目は、それぞれ第3図に示すルール関連図のA,B,Cの
項目に対応している。ここで行は、文字列の枠をルール
の枠、または、ルールの枠と文字列の枠を結ぶ配線の交
さ数が最少になるように決定する。また、本ルール関連
図第3図では、文字列とルールの枠が交互に現われるの
で項目配置テーブルもそれに対応して格納する必要があ
る。したがつて、奇数列は、文字列の番号が格納され、
偶数列にはルール番号が格納されるようになつている。
第13図は、作図処理プログラムの詳細フローである。
この例では、まず、ボツクス131で、項目配置テーブル
の1行1列のエリアのデイスプレイ画面上の座標X,Yを
任意に決める。次に、任意のエリアとX方向に隣りあう
エリアの距離Δxと、y方向に隣りあうエリアの距離Δ
yを任意に決める。ボツクス132では、列カウンタを1
にセツトし、ボツクス133では、行カウンタを1にセツ
トする。ボツクス134では、項目配置テーブルのこれら
のカウンタが指す項目番号エリアに格納されている項目
番号を調べ、もし0でなければ、ボツクス135でその項
目配置テーブルのディスプレイ画面上での座標を上記の
基準座標X,YとΔX,ΔYを基にして計算し、ボツクス136
で列カウンタが偶数か奇数かを判定し、偶数であればル
ール番号が格納されている列であるのでボツクス137で
ルール配置テーブルにその座標を格納し、また奇数であ
れば、文字列番号が格納されている列であるので、ボツ
クス138で、文字列配置テーブル138に、座標を格納す
る。次に、ボツクス139で、行カウンタが項目配置テー
ブルの最終行に等しいかどうかを判定し、等しくなけれ
ば、ボツクス140で行カウンタを+1し、上記操作を繰
り返す。また、等しければ、ボツクス141に進み、列カ
ウンタが項目配置テーブルの最終列であるかどうかを判
定し、最終列でなければ列カウンタに1を加え、上記の
操作を繰り返し、最終列であれば、終了する。
第14図は、表示処理プログラムの詳細フローである。
ボツクス144では、文字列配置テーブル517に格納されて
いるデータを基に、全文字列の枠を画面上に表示し、ボ
ツクス145では、ルール配置テーブル516に格納されてい
るデータを基に、全ルールの枠を画面上に表示する。ボ
ツクス146では、関連線テーブル518を基に文字列−ルー
ル,ルール−文字列間の全配線を画面上に表示する。
第15図は、ルール配置テーブル516と文字列配置テー
ブル517の詳細図である。ルール配置テーブル516の第1
列目5161はルール番号,第2列目5162は、該当するルー
ル番号の画面上のX座標,第3列目5163は、該当するル
ール番号の画面上のY座標である。同様に、文字列配置
テーブル517の第1列目5171は文字列番号、第2列目517
2は該当する文字列番号の画面上のX座標,第3番目517
3は、該当する文字列番号の画面上のY座標である。
第16図は、関連線テーブル518の詳細である。関連線
テーブル518の各関連線データ161a,161b…は、関連線の
始点側の項目番号162,終点側の項目番号163,関連線の始
点,折れ曲り点、および終点の位置座標164a,164b,164
c,…と、各関連線が文字列からルールへの配線である
か、あるいは、ルールから文字列への配線であるかの区
別をあらわす属性165から構成される。本実施例では、
ルール関連図の関連線は最大4つの折れ曲り点をもつの
で、位置座標セツトエリアは、164a,164b,164c,164d,16
4e,164fの6つである。関連線の各々の位置座標はX,Yの
座標の対で表わされる。それらの座標は、始点,折れ曲
り点,終点の順に164a,164b,…に順次セツトされ、未使
用の位置座標セツトエリアは0がセツトされる。
第17図は、ルール動作モニタプログラム530の詳細フ
ローである。
ボツクス171では、制御指令決定プログラム520からの
ルール起動信号が入力されたかどうかを判断し、もし入
力されていれば次に進む。ボツクス172では、適用ルー
ルデータテーブルポインタ191が指す適用ルールデータ
テーブル192中のルールNo.を読み込み、ボツクス173で
は、ルール配置テーブルより516、該当するルールの画
面上の座標を読み込んで、ボツクス174で、デイスプレ
イ画面の関連図の該当ルールの部分を点滅させる。
ボツクス175では、関連図テーブル518の行カウンタを
0にセツトし、ボツクス177で同カウンタに1を加え
る。ボツクス178では、行カウンタの指す関連図テーブ
ル518の属性の列165を調べ、これが0であれば文字列の
枠からルールの枠への関連線であり、それ以外であれ
ば、ルールの枠から文字列の枠への関連線であることを
示すものとする。したがつて、もし、最終列が0であれ
ばボツクス179で行カウンタの示す行の第2列目つま
り、配線の終点側のナンバーが、該当するルールのナン
バーに等しければ、ボツクス180で、その行の第1列目
に示される番号(文字列の番号)を読み出し、ボツクス
181で該当する文字列の座標を文字列配置テーブルより
読み出して、デイスプレイ画面のルール関連図上の該当
文字列の部分を点滅させる。ボツクス185では、この関
連図テーブルを基に、文字列−ルール間の配線を点滅さ
せる。一方、最終列が1であれば、ボツクス182で行カ
ウンタの示す行の第1列目つまり、配線の始点側のナン
バーが、該当するルールのナンバーに等しいかどうかを
調べ、等しければ、ボツクス183で該当する行の第2列
目に示される番号(文字列の番号を読み出し、文字列配
置テーブルより該当する文字列の画面上の座標を読み出
して、ボツクス184でデイスプレイのルール関連図上の
該当文字列の部分を点滅させる。ボツクス185では、こ
の関連図テーブルを基に、ルール−文字列間の配線を点
滅させる。次にボツクス176に戻り、行カウンタが関連
線テーブル518の最終行を指しているかどうかを判定
し、最終行でなければボツクス177で行カウンタに1を
加え、上記と同様の操作を繰り返す。また、行ポインタ
が、関連線テーブルの最終行に等しければ終了する。
第18図は、適用ルールデータテーブル522の詳細を示
すものである。制御指令決定プログラム520により起動
されたルールのルール番号は、適用ルールデータテーブ
ル192に順次格納される。適用ルールデータテーブルが
何番目まで使われているかを示す適用ルールデータテー
ブルポインタ191である。
次に、ルール動作モニタシステムのオペレーシヨンを
説明する。
ユーザは、コンソール端末410からルール入力501を起
動し、ルールを1行ずつコンソール端末410から入力す
る。全てのルールの入力を終了すると、空白行を入力す
ることにより、ルール入力501の実行を終了させる。以
上により、ルールデータテーブル512へデータの格納が
終了する。次に、ユーザは、コンソール端末410より、
ルール構造解析502を起動する。このプログラムの実行
により、項目テーブル513,項目関連テーブル514が出来
上る。次はにユーザは配置処理503を起動する。以降、
順次、作図処理504,表示処理505を起動する。これによ
り、データとして入力したルールに対する構造図がグラ
フイツクデイスプレイス415やXYプロツタ416上に描き出
される。尚、ルールデータの入力は、コンソール端末41
1から行なう他に、ルールデータが既に格納されている
データフアイル511をルール入力501にアサインすること
によつても実行する。
このようにして入力したルールに対する構造図をグラ
フイツクデイスプレイ上に表示した後、制御指令決定プ
ログラム520を起動し、このプログラムによつて、ルー
ルが起動されると、適用ルールデータテーブル522に適
用ルールの番号が記憶されると同時に、ルール動作モニ
タプログラム530にルール起動信号を送る。この信号を
ルール動作モニタプログラム530が受信すると、構造解
析・配置・配線プログラム510によつて作成された各種
テーブルを基に、起動ルール、および該当する現況およ
び、機能ルールによる結論およびそれらを結ぶ配線を点
滅させる。
本実施例によれば、(1)文字列はシステム現況,中
間結論,制御指令の3層に分離されて表示される。シス
テム現況の層に出ている文字列全体をチエツクすること
により、現況データとして入手可能か否かの判定、さら
に、それだけで十分か否かの判定が容易にできる。制御
指令の層に出ている文字列全体をチエツクすることによ
り、制御指令として実施可能な否か、十分か否かの判定
が容易にできる。(2)同一の文字列は1つだけ表示
し、重複表示は行なわないので、誤記された文字列の検
出も容易にできる(誤記された文字列の場合、配線が途
絶える。)といつた入力されたルールの構造からルール
及び制御指令の妥当性をチエツクするといつた静的なチ
エツクに加えて、制御指令決定プログラムの起動時に、
今どのルールのIF部の文字列が満足されて、どのルール
が起動され、その結果どのような結論が出たかといつ
た、ルールの進行状況の確認やその妥当性のチエツクを
するといつた動的なチエツクが可能である。
〔発明の効果〕
本発明によれば、IF−THEN型ルールの内容や相互関連
が整理された形で配置・配線されて表示されたルール関
連図上で、ルールの起動状況や制御指令の妥当性を動的
にチエツクできるので、複雑な運用ルールを用いる場合
には、修正作業等の工数の低減が可能である。
【図面の簡単な説明】
第1図(a)はルール型式例、第1図(b)はIF−THEN
ルールの文字列の型式、第2図はルール記述例、第3図
は出力図例、第4図はシステム構成図、第5図はソフト
構成図、第6図はルール入力プログラム詳細フロー、第
7図はルールデータテーブル詳細構造、第8図は項目テ
ーブル詳細構造、第9図は項目関連テーブル、第10図は
ルール構造解析プログラム詳細フロー、第11図は配置処
理プログラム詳細フロー、第12図は項目配置テーブル詳
細構造、第13図は作図処理プログラム詳細フロー、第14
図は表示処理プログラム詳細フロー、第15図はルール・
文字列配置テーブル詳細構造、第16図は関連線テーブル
詳細構造、第17図はルール動作モニタプログラム詳細フ
ロー、第18図は開閉ルールデータテーブル詳細構造をそ
れぞれ示す。 510……構造解析・配置・配線プログラム、501……ルー
ル入力プログラム、502……ルール構造解析プログラ
ム、503……配置処理プログラム、504……作図処理プロ
グラム、505……表示処理プログラム、520……制御指令
決定プログラム、530……ルール動作モニタプログラ
ム、522……適用ルールデータテーブル。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松本 邦顕 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (56)参考文献 特開 昭60−237539(JP,A) 「System & Softwar e」Vol.3,No.1(1984)P. 212−224 「Proc.of 2nd Cant− on Artificial Iu te lligbuce Applicatio n」(1985−3)P.498−502 「Wodeling Simulati on」Vol.16(1985)P.861−867

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】条件部と結論部からなるIF−THENルールを
    実行するルール実行手段と、前記ルール実行手段が適用
    したルール及び実行結果を図形で表示装置に表示するモ
    ニタ手段とを有するモニタ動作モニタシステムにおい
    て、前記モニタ手段は、 ルールの結論部に対応する条件部を持つ他のルールを検
    索して互いに関連づけるルール構造解析手段と、 条件部及び結論部のそれぞれの内部に文字列を記した図
    形を前記ルールの関連に基づいて前記表示装置の画面上
    に配置し、互いに関連する条件部と結論部のそれぞれ対
    応する図形同志を線分で結んで表示する構造表示手段と
    を有し、 前記ルール実行手段が順次適用したルールに対応する前
    記図形及びルール間の関連を示す前記線分を、ルールの
    起動状況に応じて識別表示することを特徴とするルール
    動作モニタシステム。
JP60042631A 1985-03-06 1985-03-06 ル−ル動作モニタシステム Expired - Lifetime JPH087685B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60042631A JPH087685B2 (ja) 1985-03-06 1985-03-06 ル−ル動作モニタシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60042631A JPH087685B2 (ja) 1985-03-06 1985-03-06 ル−ル動作モニタシステム

Publications (2)

Publication Number Publication Date
JPS61202230A JPS61202230A (ja) 1986-09-08
JPH087685B2 true JPH087685B2 (ja) 1996-01-29

Family

ID=12641360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60042631A Expired - Lifetime JPH087685B2 (ja) 1985-03-06 1985-03-06 ル−ル動作モニタシステム

Country Status (1)

Country Link
JP (1) JPH087685B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03251924A (ja) * 1990-03-01 1991-11-11 Toshiba Corp エキスパートシステムにおける知識編集・表示装置
DE4338237A1 (de) * 1993-11-09 1995-05-11 Siemens Ag Verfahren und Einrichtung zum Analysieren einer Diagnose eines Betriebszustandes einer technischen Anlage
JP5846455B2 (ja) 2011-04-22 2016-01-20 日本電気株式会社 ポリシー記述支援システム及びポリシー記述支援方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
「Proc.of2ndCant−onArtificialIutelligbuceApplication」(1985−3)P.498−502
「System&Software」Vol.3,No.1(1984)P.212−224
「WodelingSimulation」Vol.16(1985)P.861−867

Also Published As

Publication number Publication date
JPS61202230A (ja) 1986-09-08

Similar Documents

Publication Publication Date Title
US5301313A (en) Manipulating data in a relational data base having operational manipulations defined in an input table and displayed results in an output table with a line displayed designating direction of data flow
JP3136035B2 (ja) データベースシステム用インターフェースのための自動レイアウト・ジェネレータ及びその生成方法
US4862376A (en) Bill of material interface to CAD/CAM environment
US5539870A (en) Computerized system and process for interactively managing a distributed database system
US7617443B2 (en) Flexible multiple spreadsheet data consolidation system
EP0309374B1 (en) Automated bill of material
US5950190A (en) Dynamic, self-modifying graphical user interface for relational database applications
US5418950A (en) System for interactive clause window construction of SQL queries
US5909688A (en) Information management system
US5706405A (en) System and method for the design of software systems using a knowledge base
JPH0683404A (ja) スケジュール表示のカストマイズ装置および方法
JP3777087B2 (ja) デ―タ表示システム、データ表示方法、コンピュータシステムおよび記録媒体
JPH0540616A (ja) プログラム仕様生成方法
JPH087685B2 (ja) ル−ル動作モニタシステム
JPH07295776A (ja) データ配置構造変換方法およびそのシステム並びにクライアントサーバシステム
JPS6320529A (ja) 知識獲得方式
JPH05204981A (ja) 情報記憶・検索システム及びその表示方法
JPH08137967A (ja) 表デ−タ処理方法
JPH0588863A (ja) プログラム開発支援システム
JP3424558B2 (ja) オブジェクト管理方法
JPS60237539A (ja) ル−ル構造解析システム
Li et al. A new FMS simulator with object-oriented-programming techniques
JP2636472B2 (ja) 階層データ配置装置
EP0569188A1 (en) Accessing a computer database
JPH0797315B2 (ja) 作図処理装置及びその方法