JPH07168716A - 意思決定装置とその動作自動的最適化法 - Google Patents

意思決定装置とその動作自動的最適化法

Info

Publication number
JPH07168716A
JPH07168716A JP6168607A JP16860794A JPH07168716A JP H07168716 A JPH07168716 A JP H07168716A JP 6168607 A JP6168607 A JP 6168607A JP 16860794 A JP16860794 A JP 16860794A JP H07168716 A JPH07168716 A JP H07168716A
Authority
JP
Japan
Prior art keywords
decision
conditional
test
elements
making device
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.)
Pending
Application number
JP6168607A
Other languages
English (en)
Inventor
Thaddeus J Kowalski
ジュリアス コワルスキー サディアス
Maria J Peman
ジーザス ペーマン マリア
James R Rowland
アール. ロウランド ジェィムズ
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.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
AT&T 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 American Telephone and Telegraph Co Inc, AT&T Corp filed Critical American Telephone and Telegraph Co Inc
Publication of JPH07168716A publication Critical patent/JPH07168716A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)

Abstract

(57)【要約】 【目的】 有効な意思決定最適化システムを提供する。 【構成】 意思決定装置を計装化し使用データの特性を
持つテスト・データを適用する。この計装の情報を用い
てそのデータにこの決定装置が用いるその基準適用を再
順序づけする。開示決定装置はルール・ベース・システ
ムで、決定ネットワークを用いてそのルールを評価す
る。このネットワークにはウイズイン・テストとビトウ
イン・テストとこのテストをパスしたデータ項目を持つ
結果キャッシュがある。このネットワークを通るデータ
・フローを最小にするようにそのルールの条件要素を再
配置して本最適化を行う。この各テストに2カウンタと
その各結果キャッシュに1カウンタでこのネットワーク
を計装化する。このカウンタ値関数を用いて限定度減少
順の条件要素リストを作成し、共用変数の条件要素のリ
ストとグラフを用いて再順序づけしたルールでこのネッ
トワークを再構築する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ処理に係り、特に
データ値による決定を含むデータ処理に関する。
【0002】
【従来の技術】データ処理オペレーションにはデータ項
目に関する基準リストによりそのデータ項目に関する意
思決定を行うことが多い。例えば、色と重さでブロック
をソートしたシステムで色が黒で重さが1ないし3ポン
ドのブロックのソートを所望する場合を取り上げる。こ
こではブロックを選別するのに次の3基準を挙げること
ができる。 その色は黒か? その重さは1ポンドより軽いか? その重さは3ポンドより重いか? である。あるブロックをソートするのに要する時間は、
その基準の順序づけの仕方により左右される。
【0003】例えば、ブロックの色が白である場合に
は、適用を必要とするのは第1の基準のみである。ま
た、ブロックの色が黒で、重さが1ポンドより軽い場合
には、適用を必要とするのは第1と第2のはじめの2基
準である。さらに、ブロックの色が黒で、重さが3ポン
ドより重い場合には、前記3基準の適用をすべて必要と
する。前記例からまた明らかなように、適用するこの基
準の最も有効な順序づけはソートしようとするそのブロ
ックの特性により変わる。例えば、ソートしようとする
ブロックのほとんどすべてが色は黒で重さは1ポンドよ
り軽いような場合には、その基準は、初めに“その重さ
は1ポンドより軽いか?”の順序づけにすることが必要
である。
【0004】反対に黒色はほとんどなく重さは1ないし
3ポンドの範囲にあるようなブロックの場合には、その
基準は、初めに“その色は黒か?”の順序づけにする必
要がある。データ処理システムでは、データに基準の長
いリストを適用する場合が多い。このような場合には、
このデータ処理システムの性能はその基準の順序づけの
有効な仕方に大きく左右される。従来、このような順序
づけは、その基準を適用しているシステムおよびその基
準を適用するデータの両方に詳細な知識を持つ熟練プロ
グラマが実施した。ところが、この手順には二つの問題
がある。
【0005】
【発明が解決しようとする課題】それは、これを実施す
る熟練者らの方に時間と手間がかかることおよびこのシ
ステムの処理するデータの変わる度ごとにその解析を実
施し直すことが必要であるという二つの問題がある。つ
まり、従来欠けていて、本発明の提供しようとするの
は、処理しようとするデータの性質に応じてデータに適
用する基準の順序づけを自動的に行う方法である。
【0006】
【課題を解決するための手段】本発明は、この課題を次
のような最適化要素をそのデータ処理システムに有する
ことにより解決する。この最適化要素とは、そのデータ
処理システムが現在処理しているデータに対する基準の
適用を解析し、この解析結果を用いて実施するテスト数
とそれを行うのに要するリソースを少なくするようにこ
のデータに対する適用基準を再順序づけする。この最適
化要素には、そのデータに対する基準の適用の仕方につ
いての情報を得るための計装およびこの計装が与える情
報を解析するためのアナライザがある。
【0007】このデータ処理システムが現在処理してい
るデータのサンプルでこのデータ処理システムを稼働さ
せて最適化を行い、次にこの計装が集めた情報をそのア
ナライザに与え、このアナライザがこの情報を解析して
その基準の適用の仕方を再順序づけする。以下に、図面
を参照して本発明を説明するが、ここで用いる参照符号
番号は3桁以上の数字で、その最小有効2桁の数字が図
中の番号を示し、残りの数字は図番号を指す。従って、
例えば符号番号“305”を持つ要素は最初の3は図3
を指す。以下の説明により本発明の目的と利点は、当業
者には明白であるが、この説明は、初めに本発明の概観
を述べ、次にルール・ベース・システムを取り上げこれ
を最適化するのに用いる現時点で好ましい実施例を詳述
する。また、以下の概観では本発明を用いる利用例をま
ず説明し、次にこの利用の場合に本発明を用いる仕方を
示す。
【0008】
【実施例】
ルール・ベース・システムとルール 決定を含むデータ処理オペレーションの一代表例として
ルール・ベース・システムを挙げることができる。この
ルール・ベース・システムでは、そのデータが満足させ
得る条件とその条件を満足させる場合にとるアクション
を指定するルールの集まりがある。このようなシステム
で用いる場合のルールのルール101を図1に示す。こ
のルール名は、プッシュ_ブロック(push_block)であ
る。ここで、左側103はその条件を指定し、右側10
5は取るアクションを指定するが、この場合は単一のア
クション109である。
【0009】左側103の条件はこのルールを適用しよ
うとするデータが次のようなブロックとボックスを指定
するような場合にマッチする。それは、このブロックと
ボックスが同じ色を持ち、このブロックは重さが3.0
より軽くそのフロワ(floor)上にあり、さらにこのボ
ックスは重さが3.0より重い場合である。この右側の
アクションを実行する場合には、次のようにブロックに
対するデータ部を変えてこのボックスに対しその上にブ
ロックを置く。これはその上にこのブロックを置くもの
を指定するデータ部を変えこのブロックはそのボックス
上にあるように指定して行う。さらに詳しく説明を続け
ると、左側103には、2条件要素107(0),10
7(1)がある。
【0010】この各条件要素107は右側のアクション
を取ろうとする場合に満たす必要がある条件の集まりを
指定する。条件要素107(0)では、ブロック117
はこの条件要素を適用しようとするデータ・クラスを指
定する。記号“^ ”で始まる各名称はその種類のデー
タの属性を指定する。例えば、^ weightはその
ブロックの重さを指定し、後続するのがその属性に適用
するテストを指定する。従って、^ weight
〈3.0は、そのブロックは重さが3.0より軽い必要
があることを指定する。一方、^ color〈va
r〉はそのブロックは色が変数により指定される色を持
つ必要があることを指定する。
【0011】終りに、〈block1〉はこのルール1
01内に用いる名称で、これは条件要素107(0)を
満足させるブロックであることを指定する。ここで、本
発明の説明のために、条件要素107においてその属性
に適用するテストは、ウイズイン・テスト(withi
n test)とビトウイン・テスト(between
test)の2クラスに分ける。ウイズイン・テスト
おいては、その条件要素でテストするデータ項目の属性
に含まれる情報のみからそのルールに対するテスト結果
を求めることができる。また、ビトウイン・テストにお
いては、2以上のデータ項目からの属性を用いてそのテ
スト結果を求める必要がある。
【0012】例えば、テスト^ weight〈3.0
は、ウイズイン・テスト111である。というのは、そ
の情報はすべてテストするブロック・クラスの項目に含
まれるものである。また、条件要素107(0)と条件
要素107(1)の両方ともテスト^ color〈v
ar〉で、同じ符号番号であるが、ビトウイン・テスト
113の例である。というのは、あるブロックとあるボ
クッスが同じ色を持つ正否を求め得る前に、そのブロッ
クとそのボックスの両方に対する色属性値を知る必要が
あるためである。
【0013】マッチング実施に決定ネットワークの使用 前記ルール101の説明から明らかなように、ルール・
ベース・システムでは、データ項目でテスト実施に時間
が多くかかる。このテスト実施を順位づけするのに、決
定ネットワークは有効な方法である。本発明の好ましい
実施例に使用できる種類の決定ネットワークにリート
(Rete)ネットワークを挙げることができる。この
詳しい説明に下記報告がある。それはシー・エル・フォ
ーギィ(C.L.Forgy)、“リート:多パターン
/多オブジェクト・パターン・マッチ問題に対する高速
アルゴリズム”,人工知能(1982年)で、参照のこ
と。図2にルール101に対する決定ネットワーク20
1を示す。
【0014】決定ネットワーク201でテストするデー
タ項目は203を介して受け入れる。エレメント202
(0)、202(1)に示すように、各データ項目をま
ずそのクラスに対しテストする。それはこの場合にはブ
ロックかまたはボックスかというクラスに対するテスト
である。各クラスに対し、この決定ネットワークではブ
ランチ204がある。図2においては、ブランチ204
(0)はブロック・データ項目に対するブランチで、ブ
ランチ204(1)はボックス・データ項目に対するブ
ランチである。各ブランチにはそのブランチのデータ項
目に対するウイズイン・テスト205がある。
【0015】この場合、ウイズイン・テスト205
(0)は条件要素107(0)からのブロック・データ
項目に対するウイズイン・テスト111を含み、一方、
ウイズイン・テスト205(1)は条件要素107
(1)からのボックス・データ項目に対するウイズイン
・テスト111を含む。その所定のクラスのデータ項目
がウイズイン・テストにパスしない場合には、矢印21
1が示すようにこの決定ネットワークにおいてさらに進
むことはない。テスト205のある集まりのすべてのウ
イズイン・テストをパスしたその所定のクラスのデータ
項目は、結果キャッシュ207に進み、そこで蓄積され
る。例えば、結果キャッシュ207(0)には、このウ
イズイン・テスト205(0)を満足したブロック・デ
ータ項目がある。
【0016】このブロック・データ項目は重さが3.0
より軽くフロワ上にあるいずれかの色のブロック・デー
タ項目である。この結果キャッシュ207にそのデータ
項目を含むビトウイン・テストがある場合には、そのデ
ータ項目はビトウイン・テスト209に進む。これはこ
の場合には単一のテスト、つまりテスト113で、これ
は結果キャッシュ207(0)、207(1)のブロッ
クとボックスの^ color属性で行うテストであ
る。テスト113は、各前記ボックス上の各ブロックに
対して行う必要がある。ブロックとボックスに対しこの
テストを行う度ごとに、このビトウイン・テストの変数
〈var〉は比較するブロックとボックスの色に向けら
れる。
【0017】以上の説明から明らかなように、行う必要
のあるビトウイン・テスト数は、ビトウイン・テスト2
09へデータ項目を与えている結果キャッシュ207に
おけるデータ項目数の交差積である。例えば、もし10
ブロックがウイズイン・テスト205(0)をパスしま
た5ボックスがウイズイン・テスト205(1)をパス
する場合には、50テストを行う必要がある。同じ色の
ボックスを持たないブロックは、この逆も同じである
が、さらに進むことはなく(矢印211)、残ったブロ
ックとボックスが最終結果213ということになる。図
2の決定ネットワークは単一ルールに対するものであっ
たが、またルールの集まりに対しても決定ネットワーク
を用いることができる。
【0018】図3は、図1に示したルールと次の表1に
示すルールに対する単一の決定ネットワークを示す図で
ある。
【表1】 このルールは次のことを示す。それは、その上にブロッ
クを持たないボックスがあり−(block^ on
〈id1〉)、このボックスは重さが3.0より重く、
およびこのボックスとピラミッドは同じ材料からできて
おりかつ同じ色を持つ場合、このボックスの上にそのピ
ラミッドを置くことができる。
【0019】図3で説明を続ける。決定ネットワーク3
01は303でデータ項目を受け入れる。このデータ項
目には、ブロックとボックスとピラミッドのクラスの項
目があるため、3ブランチ304、313、321があ
る。各ブランチの頂部にそのクラスに対するテスト(エ
レメント305、315、323)がある。ブロックに
対するブランチ304に始まり、このpush_pyr
amidルールは、ボックスに対するウイズイン・テス
トおよびボクッスとピラミッドに対するビトウイン・テ
ストにパスしたボクッスをテストし、すでにその上にブ
ロックを持つかその正否を決めるように求める。従って
そのブロック・データ項目を全部後で用いることができ
るように結果キャッシュ309で保存する必要がある。
【0020】この場合には、前記両方のルールからブロ
ックに対するウイズイン・テストをボックス307にお
いてこのブロックに適用し、パスしたブロックを結果キ
ャッシュ311に蓄積する。ボックスに対するブランチ
313に続き、再び前記両方のルールからボックスに適
用するウイズイン・テストをボックス317においてこ
のボックスに行い、このテストにパスしたデータ項目を
結果キャッシュ319に蓄積する。ピラミッド・クラス
のデータ項目の場合には、ビトウイン・テストはある
が、ウイズイン・テストはなく、従ってこのデータ項目
はすべて結果キャッシュ325に蓄積される。ブロック
327はブロックとボックスに対するビトウイン・テス
トで、このビトウイン・テスト327をパスしたブロッ
クとボックスのデータ項目に対し、ルールで指定したこ
のブロックをそのボックス上に置くというアクション3
24を行う。
【0021】ここで注目点は、このアクション実施が結
果キャッシュ309に蓄積したブロックの属性に影響を
及ぼすことである。ブロック331はボックスとピラミ
ッドに対するビトウイン・テストであり、これをパスし
たボックスとピラミッドを結果キャッシュ333に蓄積
する。次にビトウイン・テスト335は、結果キャッシ
ュ333からの各前記ボックスをチェックして結果キャ
ッシュ309におけるブロックの中でそのボックス上に
あるブロックを求める。もし無い場合には、2番目のル
ールのアクションが適当なピラミッドの属性を変えてそ
のボックス上にこのピラミッドがある(337)とす
る。
【0022】決定ネットワークの効率増加 ルール・ベース・システムが働く各データ項目は決定ネ
ットワークを通らなければならないので、この決定ネッ
トワークの効率は全体としてそのルール・ベース・シス
テムの効率に重要な役目をする。この決定ネットワーク
の効率を向上させる一つの方法に、実施するテストの総
数を少なくするようにこのテストの順序づけを行う方法
がある。これはその決定ネットワークを通るデータ項目
のフローを最小にすることにより可能となる。好ましい
実施例で説明すると、このデータ項目フローの最小化は
次のように行う。
【0023】それは条件要素107を条件要素の重みの
減少順の交差積グループに順序づけし交差積効果に基づ
いて各交差積グループ内にその条件要素を順序づけして
最小化する。条件要素の交差積グループはビトウイン・
テストを共用する条件要素の集まりである。従って条件
要素107(0)と条件要素107(1)は一つの交差
積グループに属する。この交差積効果とはこの決定ネッ
トワークを通りさらに交差積の大きさを減少する際にこ
の条件要素が有する効果を指す。交差積グループの条件
要素の重みとは、その交差積グループの最上位条件要素
の重みである。好ましい実施例では、条件要素の重みは
次の因子により決める。
【0024】・その条件要素においてそのテストに失敗
するデータ項目数 ・そのネットワークにおいてその条件要素のテストに続
く結果キャッシュの大きさに及ぼすその効果 ・後続する結果キャッシュにおけるデータ項目の短期レ
ジデンスに及ぼすその効果 ・その条件要素においてそのテストをデータ項目に適用
する確率である。
【0025】前記因子の中の最後の因子は単に次の事実
を示すものである。それは、この決定ネットワークの頂
部からテストが離れるほどそのテストをあるデータ項目
に適用する確率が小さくなる。この条件要素の重みは次
の原理に従ってこれらの因子から決める。それは、その
テストに失敗するデータ項目が多いほど、その結果キャ
ッシュが小さいほど、データ項目の短期レジデンスが小
さいほど、データ項目にテストを適用する確率が大きい
ほど、その条件要素の重みは大きい。
【0026】意思決定システムの概要 図4は本発明を用いる意思決定システム401の概要を
示す図である。ただし、この図の403部は既知のタイ
プの意思決定システム部である。意思決定システム40
3にはルール・メモリ407があり、これはルール10
1の集まりを蓄積するメモリである。既述のように、ル
ール・メモリ407におけるこのルール101が意思決
定システム403のデータ項目の処理の仕方を決める。
システム・ジェネレータ409はルール・メモリ407
におけるこのルールを用いてそのデータを実際に処理す
る実システムを生成する。システム・ジェネレータ40
9は、コンパイラまたはインタプリタであることが可能
である。
【0027】このルールからシステム・ジェネレータ4
09はこのシステムの二つの要素のアクション417と
決定ネットワーク419を生成する。アクション417
は、ルール右側を実行する場合にこのシステムが行うア
クションに対し実行可能なコードである。決定ネットワ
ーク419は、ルール・メモリ407におけるこのルー
ルの集まりに対する決定ネットワーク201である。意
思決定システム403の動作は次の通りである。このシ
ステムのユーザは、先に書き込んだルールの集まりをル
ール・メモリ407にロードする。次に、システム・ジ
ェネレータ409はこのルールを用いてアクション41
7に対するコードを生成し、決定ネットワーク419を
形成してこのルールにおけるテストが規定したテストを
行う。
【0028】このコード417と決定ネットワーク41
9の生成ずみにより、意思決定システム403の実行準
備完了状態となる。このシステムでは、先にデータ・メ
モリ411にロードしたデータ項目のストリームを決定
ネットワーク419に送り、これで前記のようにこのデ
ータ上にテストを行う。データ項目が決定ネットワーク
419の底部にまで通り抜けると、アクション417で
そのコードを実行しそのアクションを行う。このアクシ
ョンには矢印418で示すようにデータ・メモリ411
でデータ項目に変更を行なわせ矢印220で示すように
ルール・メモリ407でルールに変更を行なわせること
がそれぞれできる。
【0029】ここで説明したようなシステムには例えば
次のような詳細な記載がある。エル・ブラウンストン
(L.Browntson)、アール・ファレル(R.
Farrel)、ディ・カント(D.Kant)あよび
エヌ・マーチン(N.Martin)、OPS5におけ
るエキスパート・システムのプログラミング、イントロ
ダクション・ツー・ルール・ベース・プログラミング、
アディソン−ウェスリ〓(Addison−Wesle
y)、レディング、マサチューセッツ、1985年を参
照のこと。
【0030】動的最適化可能意思決定システム401 意思決定システム403の挙動を最適化するために本発
明を用いようとする場合には、図4の405部に示す要
素を加え、動的最適化可能意思決定システム401を生
成する。この要素には次の計装421とアナライザ42
9がある。計装421を決定ネットワーク419に適用
して決定ネットワーク419内のデータ項目フローを決
める。アナライザ429は計装421が与える結果を解
析し、次に矢印431が示すようにルール・メモリ40
7におけるルール101を再順序づけし、ルール・メモ
リ407におけるこのルールから決定ネットワーク41
9をシステム・ヂェネレータ409が次に生成する場合
に、さらに有効な決定ネットワーク419がそのために
生じる。
【0031】図5のフロー・チャート501は、動的最
適化可能意思決定システム401の動作を示す。動作に
は訓練モード503と運転モード505の2モードがあ
る。訓練モード503では決定ネットワーク419を最
適化するのに必要な情報を集めこの決定ネットワークを
最適化させ、運転モード505ではこの意思決定システ
ムをこの最適化した決定ネットワーク419で動作させ
る。訓練モード503でこの意思決定システムのユーザ
は、先ずこの最適化する意思決定システム403の用い
るデータ特性を持つサンプル・データを得る(50
9)。次に計装421を活動化(511)し、このサン
プル・データでこの意思決定システムを実行するとアナ
ライザ429は、このサンプル・データにより決定ネッ
トワーク419の挙動の求めに応じルール・メモリ40
7においてそのルールを再順序づけする(513)。
【0032】意思決定システム401を訓練モードで数
回実施可能(ループ517)で、この訓練モードで行う
そのルールの再順序づけに、自動的再順序づけ法をその
ユーザが行う手動的再順序づけ法と組み合わすことがで
きる。この再順序づけを完了すると、ルール・メモリ4
07におけるこの再順序づけしたルールの求めに応じこ
の決定ネットワーク419を再構築する(519)。こ
の時点において、この再構築決定ネットワーク419で
最適化を継続(ループ521)するか、またはこの計装
を非活動化(522)し、この意思決定システムを運転
モード505で実行する。運転モードにおいては、この
意思決定システムをその実際の通常データ(523)で
実行する(525)。
【0033】本発明の好ましい計装とアナライザの実施
例 以下に、計装421とアナライザ429の好ましい実施
態様を詳しく説明する。ここでは、最適化に用いる計装
の種類やこの計装からの情報を用いて最適化を行う方法
を詳しく説明する。 ルール例とその決定ネットワーク 本説明を通して図6に示すルール601を例として取り
扱う。ルール601は、ハイ・レベル合成システムから
取り上げる。これは、加算、減算、または乗算の演算に
より得られた結果のその後の利用の解析から、その結果
が持つと考えられるビット数を決め、次にその正しい加
算、減算、または乗算のハードウエアを選択してこの演
算を行う。
【0034】ルール601左側には、12の条件要素6
03があり、この符号番号603の後にその条件要素の
番号を付して参照する。例えば、条件要素603(2)
は図6において3番目の条件要素を指す。図7と図8
は、最適化前の意思決定システム401で生成した決定
ネットワーク801を示す。図7に示す決定ネットワー
ク801の701部は最適化前後で同じで不変部であ
る。ただし、最適化によりウイズイン・テストのある集
まりにおいてテストの順序変更がさらに可能である。図
7で番号を付した出力を、ビトウイン・テスト・ノード
に入力として図8に示す。例えば、図7の出力0と出力
1は、図8の最初のビトウイン・テストへの入力であ
る。
【0035】図8において、各ビトウイン・テストのか
ぎ括弧の名称は、その変数の縛りをテストしている変数
の名称である。波括弧のナンバは、そのサンプル・デー
タの集まりに対しノードで行うテストのナンバを示す。
図8に見ることができるように、行うテスト・ナンバは
0ないし370、980の範囲であり、テスト総数は4
19、373である。さらに、最大テスト・ナンバはこ
の決定ネットワークにおいては比較的下方にあり、ここ
では370、980と13、740を挙げることができ
る。
【0036】決定ネットワーク419の計装化 先に説明したように、決定ネットワーク419の最適化
には、各条件要素に対する条件要素重みを決めるステッ
プ、この条件要素を条件要素グループに順序づけするス
テップ、および交差積グループにおける各条件要素の交
差積効果を決めるステップがある。各条件要素の条件要
素重みとその交差積効果の決定は、決定ネットワーク4
19の計装化により得た値を用いて行う。図10は、好
ましい実施例で用いる計装1001を示す図である。こ
の計装の形はカウンタである。ここには、下記に示すカ
ウンタの三つの集まりがある。
【0037】・各ウイズイン・テストまたはビトウイン
・テスト1003に対するカウンタで、このテストを行
う度ごとにインクリメントするカウンタ1005。 ・各ウイズイン・テストまたはビトウイン・テスト10
03に対するカウンタで、そのテストの失敗の度ごとに
インクリメントするカウンタ1007。 ・各結果キャッシュ1004に対するカウンタで、デー
タ項目をこの結果キャッシュに書き込む度ごとにインク
リメントし、データ項目をこの結果キャッシュから削除
する度ごとにディクリメントするカウンタ1009。 これらのカウンタからの値を用いて、ルール601にお
ける条件要素の条件要素重みを求めることが可能であ
る。
【0038】交差積グループの決定 条件要素が属する交差積グループを、図11に示すよう
な種類のグラフを作成して求める。グラフ1101にお
いて、各条件要素603をノード1103により示す。
各ノード1103にはエッジ1105があり、このエッ
ジ1105がそれをビトウイン・テストを共用する条件
要素に対するノードに結合する。ここで、条件要素60
3(2)は変数〈in〉、〈src1〉及び〈src
2〉に対するビトウイン・テストを持つ。条件要素60
3(2)は、変数〈in〉を条件要素603(1)と共
用し、変数〈src1〉を条件要素603(4)と共用
し、さらに変数〈src2〉を条件要素603(5)と
共用する。
【0039】従って、条件要素603(2)に対しノー
ド1103はエッジ1105を有し、このエッジ110
5が条件要素603(1)、603(4)、603
(5)に対しこのノード1103と結合させる。好まし
い実施例において、グラフ1101は、各条件要素60
3に対するレコードがあるようなデータ構造で示し、こ
のレコードにリンクしたリストを取り付け、このリスト
はこの条件要素に対するこのノードを別のノードに結合
するエッジを示す。このリンクしたリストの各要素は、
その条件要素が共用する変数を指定し、その別の条件要
素を示すノードへのポインタを含む。
【0040】再順序づけアルゴリズム 先に説明したように、決定ネットワークにおけるデータ
項目フローを最小にするのは、条件要素重みの減少する
順の交差積グループにこの条件要素を順序づけし、およ
び交差積効果に基づいて各交差積グループ内のその条件
要素を順序づけして行う。好ましい実施例において、こ
の順序づけは、図11に示すグラフおよび図12に示す
アルゴリズムにおける計装1101が集めた値を用いて
行う。アルゴリズム1201には下記の3つのパートが
ある。それは、その条件要素の限定度を計算するパー
ト、その条件要素を交差積グループに順序づけするパー
ト、および交差積効果に基づいてその交差積グループ内
のその条件要素を順序づけするパートである。以下に、
限定度の計算から始めて、この3パートすべてを詳しく
説明する。
【0041】限定度の計算 図12に示すアルゴリズム1201の1203部は、下
記の表2に示す式により各条件要素の限定度を計算する
部分である。ここで、本式中の係数(coeff)は経
験的に求め、下記評価関数を得た。
【表2】 ここで、本式中の項は次の通りである。wtestはウ
イズイン・テストの数を示す。btestはビトウイン
・テストの数を示す。
【0042】test_qual_meanはこのCE
(条件要素)に対する全ビトウイン・テスト特性の平均
を示し、ここでビトウイン・テスト特性とはビトウイン
・テストの失敗度数対このビトウイン・テスト実施度数
の比である。wme_size_devは下記のように
このCEのメモリ・サイズのその平均からの偏差を示
す。すなわち、wme_size_dev=(memo
ry_size−mean_memory_size)
/mean_memory_sizeである。ここで、
mean_memory_sizeは評価しているルー
ルの全条件要素のメモリ・サイズの平均を示す。さら
に、ce_freq_devは下記のようにこのCEの
頻度のその平均からの偏差を示す。
【0043】すなわち、ce_freq_dev=(c
e_freq−ce_freq_mean)/ce_f
req_meanである。ここで、ce_freq_m
eanは評価しているルールのその条件要素の頻度平均
を示す。係数は、それぞれcoeff1が4.0、co
eff2が1.0、coeff3が2.0、coeff
4が3.0、およびcoeff5が0.01である。こ
れらの項はすべてこのCE限定度を増加させる項、ただ
し負の寄与を持つwme_size_devを除く、で
ある。前記係数は下記実験により求めた。その評価関数
が与えられると、一つの係数を選び残りの係数を定数
値、例えば1.0に設定する。
【0044】いろいろな値をその選択CEに割り当て、
これらの値の各々に対してルール・システムを実行す
る。その最良結果を与える値を保持する。このようにし
て、各係数に対し初期値を得る。テストする各ルール・
システムに対し良好結果をその係数が与えるまで、これ
らの新しい値を用いてこのプロセスを繰り返す。下記に
前記式の利用を例示する。決定ネットワーク419を計
装し、ルール601を含むプログラムをしばらく(この
ルールの5000ファイアリング以上)実行し、そのカ
ウンタの値を使用し前記関数を用いてその条件要素の限
定度を求め、下記に示す表3の結果を得た。
【表3】
【0045】ここで、例えば、CE603(10)に
は、2ウイズイン・テストおよび1ビトウイン・テスト
がある。このメモリ・サイズのその平均からの偏差は−
0.984456であり、wme_size_devが
−1.0に近いほどそのメモリ・サイズが小さいことか
ら、これはその結果キャッシュ・メモリにデータ項目が
ほとんど無いCEである。また、CE603(10)の
頻度のその平均からの偏差は0.368098であり、
このCEはその頻度がその平均以上のCEである。ま
た、CE603(10)に対するテスト特性の平均は
0.775000である。これらの項をすべて組み合わ
せて得た値の13.50704は、このルール内のCE
10の限定度を示す。
【0046】CE603(0)にはtest_qual
_meanに割り当てる値が無いのは、これにはビトウ
イン・テストが無いためである。ルール601の第2の
CE603(2)には、特別なウイズイン・テストのデ
ィスジャンクション・テストがある。ディスジャンクシ
ョン・テストにおいては、多く値があるほど、そのテス
トは限定がより小さくなるテストである。nを値の数と
し、1/nをウイズイン・テストに対するカウンタに加
える。ただしこの比は経験的に求めた比である。CE6
03(2)におけるウイズイン・テストではその演算コ
ードが“+”であるか、“−”であるか、あるいは
“*”であるかをチェックする。これは3値のリストの
あるディスジャンクションを含む。従って、このカウン
タに割り当てる総数は、1+1/3=1.3である。こ
れらの結果を適用して条件要素603を限定度により順
序づけすると、この順序は{0、7、10、1、6、1
1、2、8、4、5、3、9}のCE603(0)から
始まりCE603(9)に終わるCE順序となる。
【0047】交差積グループへの条件要素の順序づけ アルゴリズム1201の1204部は、その条件要素を
交差積グループに順序づけする部分である。このアルゴ
リズムでは、限定度により順序づけした条件要素のリス
トと図11に示すグラフの両者を用いる。このアルゴリ
ズムにおいて、〓“リーダ”と呼ぶ条件要素はこの要件
要素のリストに残された中で限定が最大の条件要素であ
る。この条件要素を選択条件要素リストに配置する。次
にこのリーダの後続の“サクセッサ”を別のリストの候
補条件要素のリストに加える。このリーダの“サクセッ
サ”は図11に示すグラフにおいて下記の2条件を満た
すノードである。 ・このグラフでエッジがそのリーダに直接それらを結合
するもの。 ・選択条件要素リストに既に加えずみでないもの。
【0048】さらに具体的に説明すると、このアルゴリ
ズムはルール601の条件要素について次のように進
む。最初に、リストはCE603の集まりの全部を含
み、またlist_of_candidatesおよび
list_of_selectedは両者とも空リスト
である。これらを下記表4に示す。
【表4】 ここで、CE603(0)をリーダにプロモートしてい
るが、これは他のCE603のいずれとも結合を持たな
い(図11参照)ので、これにはサクセッサが無い。l
ist_of_candidatesに加えるものはな
にも無く、これらを下記表5に示す。
【表5】
【0049】list_of_candidatesは
空であるため、新しいリーダを選択する必要がある。リ
ストではCE603(7)が限定の最大のCEであり、
そのサクセッサがここで候補である。注意点はCE60
3(6)はCE603(8)のサクセッサとは考えられ
ない、というのはそれらの間には明示の結合が無いため
であり、これらを下記表6に示す。
【表6】 list_of_candidatesからCE603
を選択する前に可能な交差積を推定するが、それらを下
記表7に示す。
【表7】
【0050】CE603(8)を選んで、そのサクセッ
サをlist_of_candidatesに加える。
これらを下記表8に示し、さらにその可能な交差積を推
定し、それらを表9に示す。
【表8】
【表9】
【0051】この交差積の推定の後、CE603(1
0)を選択する。これに結合するCEはすべて既に選択
ずみのため、list_of_candidatesに
加えるものはなにも無い。これらを下記表10に示す
が、またそのリストは表10に示す通りである。
【表10】 さらに、その交差積を再推定し、それらを下記表11に
示す。
【表11】
【0052】CE603(3)を選び、ここで、CE6
03(1)とCE603(6)が候補となる。これらを
下記表12に示す。また、その変数とリストは表12に
示す通りである。
【表12】 さらに、その可能な交差積を再推定し、それらを下記表
13に示す。
【表13】
【0053】CE603(1)を選び、CE603
(2)をlist_of_candidatesに加え
る。これらを下記表14に示す。また、その変数とリス
トは表14に示す通りである。
【表14】 さらに、その可能な交差積を再推定し、それらを下記表
15に示す。
【表15】
【0054】CE603(2)を選び、ここで、CE6
03(4)とCE603(5)が新しい候補である。こ
れらを下記表16に示す。また、その変数とリストは表
16に示す通りである。
【表16】 さらに、その可能な交差積を再推定し、それらを下記表
17に示す。
【表17】
【0055】CE603(4)を選び、ここで、新しい
候補は無い。これらを下記表18に示す。また、その変
数とリストは表18に示す通りである。
【表18】 さらに、その可能な交差積を再推定し、それらを下記表
19に示す。
【表19】
【0056】CE603(5)を選び、ここで、新しい
候補は無い。これらを下記表20に示す。また、その変
数とリストは表20に示す通りである。
【表20】 さらに、その可能な交差積を再推定し、それらを下記表
21に示す。
【表21】
【0057】CE603(6)を選び、ここで、CE6
03(11)が候補である。これらを下記表22に示
す。また、その変数とリストは表22に示す通りであ
る。
【表22】 さらに、その可能な交差積を再推定し、それらを下記表
23に示す。
【表23】
【0058】CE603(9)を選び、ここで、新しい
候補は無い。これらを下記表24に示す。また、その変
数とリストは表24に示す通りである。
【表24】 さらに、その可能な交差積を再推定し、それらを下記表
25に示す。ここで、注意点は次の通りである。CE6
03(9)の選択前は、CE603(11)とその選択
CE間の結合はそのテスト〈bo〉であった。いったん
CE603(9)を選ぶとそのテスト〈bitoup〉
がアクティブになる。というのはそのテスト特性が〈b
o〉の特性よりよりハイであるので、その可能な交差積
が168.45から31.18にドロップする。これが
CEをlist_of_selectedに加える度ご
とにその可能な交差積を再推定する必要がある理由であ
る。
【表25】
【0059】CE603(11)を選び、ここで、新し
い候補は無い。これらを下記表26に示す。また、その
変数とリストは表26に示す通りである。
【表26】 候補が無いため、新しいリーダをリストから選ぶ必要が
ある。しかし、リストに残るものはなにも無いため、こ
のプログラムは終了する。得られたCE603のシーケ
ンスを下記表27に示す。
【表27】
【0060】意思決定システムの求める再順序づけ アルゴリズムの1204部により得られる再順序づけ
は、この意思決定システムの動作の仕方と関係する他の
条件にも左右される。その個々の意思決定システムの求
めに応じこれらの条件をその再順序づけリストに適用す
る必要がある。アルゴリズム1201の1209部は、
好ましい実施例を実施するOPS5システムに対しこれ
らの再順序づけを行う部分である。以下に、このアルゴ
リズムに対しまずその限定と次にそれらの結果を説明す
る。
【0061】OPS5における限定 このOPS5システムにおいては、無効にする条件要素
で可能なその順序づけにいくつかの限定がある。ルール
601には、このような無効にする条件要素は無いが、
ルールpush_pyramidには有り、それは条件
要素−(block^ on〈id1〉である。この再
順序づけの限定は次の通りである。 1.第1の条件要素を無効にはできない。 2.第1の条件要素はOPS5の使用コンフリクト解消
戦略に左右される。 3.=以外のテストで条件要素はその変数を縛る条件要
素に先行してはならない。 4.無効にする条件要素が1以上の変数を有する場合、
その変数を縛る無効にしない条件要素の後にそれを置か
なければならない。
【0062】これらの限定の詳細は次の通りである。第
2の限定については、OPS5においてコンフリクト解
消に対しLEXとMEAの2つの戦略がある。それらは
次の点で異なる。それは第2の方はそのルールの第1の
CEとマッチするWMEの新しさを特に強調するという
点である。現戦略がミーン・エンド解析(MEA)であ
る場合とすると、新シーケンスにおける第1のCEはそ
の元のシーケンスにおける第1のCEであることが必要
である。第3の限定については、=以外のテスト、つま
り〈〉、〈=〉、〈、〈=、〉=、または〉、の場合
で、CEはその変数を縛るCEに先行してはならない。
下記表28に示す条件要素のシーケンスを考える。
【表28】
【0063】第2のCEは〉テストを持ち、まだvar
1を縛っていなかった場合で、条件要素のこのシーケン
スをイリーガルにする。第4の限定については、無効に
するCEが1以上の変数を有する場合、その変数を縛る
無効にしないCEの後にそれを置かなければならない。
図7と図9はルール601の条件要素をこのアルゴリズ
ムによる再順序づけをした場合に得られた決定ネットワ
ーク901を示す。決定ネットワーク901のビトウイ
ン・テスト・ノードの最大ビトウイン・テストの数は1
2、366であるのに対し、決定ネットワーク801の
1つのビトウイン・テスト・ノードは370,980の
ビトウイン・テストの数で、ビトウイン・テストの総数
は419,374から58,825に減少した。さら
に、このビトウイン・テスト数減少の最大部は決定ネッ
トワーク901の後部である。
【0064】ウイズイン・テストの再順序づけ 好ましい実施例として、次のようにして決定ネットワー
ク901をさらに有効にすることができる。それは限定
の最大のウイズイン・テストが始めに来るようにウイズ
イン・テスト・ノードでそのウイズイン・テストを再順
序づけして行う。限定の最大のウイズイン・テストとは
その失敗の百分率が最大のウイズイン・テストを指す。
この値は、各ウイズイン・テストで用いるカウンタから
当然得ることができる。
【0065】アナライザ429の詳細と図13 図13はアナライザ429の詳細ブロック図で、これが
好ましい実施例においてアルゴリズム1201を実行す
る。このアリゴリズムを実際に実行するアナライザ42
9の実行部はシステム・リオルガナイザ1313であ
る。これが処理するデータには下記のテスト・カウンタ
1301と結果キャッシュ・カウンタ1303のデータ
がある。テスト・カウンタ1301にはこの決定ネット
ワークで行う各テストに対するカウンタ1005、10
07がある。結果キャッシュ1303にはこの決定ネッ
トワークの各結果キャッシュに対するカウンタ1009
がある。
【0066】矢印で図示するように、システム・リオル
ガナイザ1313はこれらのカウンタを読取り前述のよ
うにそれらの値を用いて各条件要素の限定度を求める。
このプロセスの結果がその条件要素のリスト1307
で、これは限定の最大の条件要素を最初にして限定度に
より順序づけをしたリストである。既に詳しく説明した
ように、この次のステップはグラフ1101とリスト1
307を用いて選択した条件要素のリスト1311を生
成するステップである。最後に、このリストを特定の意
思決定システムの求めに応じ再編成する。この際、シス
テム・リオルガナイザ1313はルール・メモリ403
においてルールを再編成する。
【0067】システム401の詳細動作 前述のように、システム401の好ましい実施例には、
訓練モードと運転モードの2モードがある。訓練モード
においてこのカウンタは動作するのに対し運転モードで
はそれは動作しない。運転モードでこの好ましい実施例
をセットアップし実行するコマンドがmake、rem
oveおよびrunである。makeはデータ項目をこ
のシステムに加えその新データ項目に対し必要に応じて
この決定ネットワーク状態を修正するコマンドである。
removeはデータ項目を取り除きこの決定ネットワ
ーク状態を修正するコマンドである。runはこのデー
タ項目をそのルールに適用するコマンドである。
【0068】訓練モードにおけるこの並列コマンドは、
make_et、remove_et、およびrun_
etである。この違いは、これらのコマンドを実行する
場合にそれらのカウンタが動作することである。訓練を
終了すると、そのbetaコマンドによりシステム40
1を再編成する。実行する際には、このコマンドが前記
アルゴリズムを用いてこのルールにおける条件要素を再
順序づけし、次にその再順序づけしたルールによる求め
に応じて新決定ネットワーク419を構築する。ここ
で、そのstoreとrecoverのコマンドを用い
ると訓練をさらに容易に実施できる。storeは、訓
練を中断したり後で再開したりできるようにファイルで
このカウンタ状態をセーブするコマンドである。
【0069】recoverはstoreによりセーブ
した値でファイルを単に読取りそれにカウンタをセット
するコマンドである。システム401についての統計は
そのinfo、tests、およびsave_orde
rのコマンドを用いて収集する。infoは決定ネット
ワーク419の現状を示すコマンドで、それの持つ各種
ノードの数やファイアしたルールの数、実施したテスト
の数、また失敗したテストの数その他の情報である。t
estsは各ルールで実行したビトウイン・テストの数
を与えるコマンドである。最後に、save_orde
rはそのbetaコマンドにより生成した新条件要素シ
ーケンスを示すコマンドである。
【0070】結論 以上の本発明の説明は、使用しようとするデータ・サン
プルに応答して最適化可能な意思決定装置とその作成・
使用法に関するもので、本発明の実施に際し本発明者ら
が現時点で知る最良の実施態様を好ましい実施例として
説明した。この技術分野の当業者であれば、本発明の種
々の変形例が考え得るが、それらはいずれも本発明の技
術範囲に包含される。たとえば、好ましい実施例をルー
ル・ベース・システムにおける実施で説明したが、本発
明は大多数のデータ項目にテストを適用するシステムに
おいて、そのいずれにも適用することが可能である。
【0071】さらに、好ましい実施例では、決定ネット
ワークを用いてこの決定ネットワークを最適化するよう
に条件要素を順序づけして実施するが、本発明は決定ネ
ットワークに限定するものではなく、決定基準をそのデ
ータに適用する順序を変更して最適化を得ることが可能
な配置では、そのいずれにも本発明は適用することが可
能である。同様に、好ましい実施例では、この決定ネッ
トワークを計装化するのにカウンタを用いたが、決定基
準を適用するのにその実施態様で使用する方法に適する
計装が本発明では使用可能である。また、当然のことで
あるが、条件要素の限定度を求めるのに用いる式も本装
置に用いた計装により変わる。
【0072】さらにまた、好ましい実施例では、別々の
テストと運転モードを用いたが、本発明は連続の運転モ
ードで動作する他の実施態様も可能であり、ここではそ
の計装は常にアクティブでありそのアナライザはその計
装の結果を周期的に用いてその条件要素の再順序づけを
行う。この決定基準を適用しようとするデータに変化が
ある場合に、そのデータ変化にこの実施態様を自動的に
また動的に合わせる事も可能である。最後ではあるが、
以上の本発明の説明の好ましい実施例では、OPS5ル
ール・ベース・システムを用いた。このためにこのシス
テムに特有な実施態様もいくつか前記説明で指摘した
が、このシステム以外のシステムを用いる場合にはその
システムに特有な実施態様もいくつか含まれることは当
然のことである。
【0073】
【発明の効果】以上述べたごとく、処理しようとするデ
ータの性質に応じてデータに適用する基準の順序づけを
自動的に行うような本発明の方法により、基準適用のシ
ステムとデータに詳しい熟練者の手間と時間が繰り返し
費やされることが無く、有効な意思決定最適化システム
を提供することができる。
【図面の簡単な説明】
【図1】ルール例を示す図である。
【図2】決定ネットワーク例を示す図である。
【図3】第2の決定ネットワーク例を示す図である。
【図4】。本発明の実施態様を示すブロック図である。
【図5】本発明の動作を示す流れ図である。
【図6】別のルール例を示す図である。
【図7】図6のルールから得た決定ネットワークの第1
の部分を示す図である。
【図8】図7の決定ネットワークの第2の部分を示す図
である。
【図9】本発明の最適化後の第2の部分を示す図であ
る。
【図10】好ましい実施例の計装を示すブロック図であ
る。
【図11】本発明に用いるグラフを示す図である。
【図12】好ましい実施例に用いるアルゴリズムの擬似
コードを示す図である。
【図13】アナライザ429の好ましい実施例を示す詳
細ブロック図である。
【符号の説明】
101 ルール 103 ルール(左側) 105 ルール(右側) 107 条件要素(例、107(0)) 109 アクション 111 ウイズイン・テスト 113 ビトウイン・テスト 117 ブロック 201 決定ネットワーク 202 クラス・テスト(例、202(0)) 203 決定ネットワーク・エレメント 204 ブランチ(例、204(0)) 205 ウイズイン・テスト(例、205(0)) 207 結果キャッシュ(例、207(0)) 209 ビトウイン・テスト 211 矢印 301 決定ネットワーク 303 決定ネットワーク・エレメント 304 ブランチ 305 クラス・ブロック・テスト 307 ウイズイン・テスト 309 結果キャッシュ(全ブロック) 311 結果キャッシュ 313 クラス・ボックス・テスト 315 ブランチ 317 ウイズイン・テスト 319 結果キャッシュ 321 ブランチ 323 クラス・ピラミッド・テスト 324 プッシュ_ブロック(push_block)
結果(アクション) 325 結果キャッシュ 327 ビトウイン・テスト 331 ビトウイン・テスト 333 結果キャッシュ 335 ビトウイン・テスト 337 プッシュ_ピラミッド(push_pyram
id)結果(アクション) 401 意思決定システム 403 意思決定システム(従来既知部) 405 意思決定システム(本発明最適化法部) 407 ルール・メモリ 409 システム・ジェネレータ 411 データ・メモリ 417 (コード)アクション 418 矢印 419 決定ネットワーク 420 矢印 421 計装 429 アナライザ 431 矢印 501 フロー・チャート 503 訓練モード 505 運転モード 509 テスト・データ取得 511 計装活動化 513 テスト・データでシステム401実行 515 計装構成でCE再順序づけ 517 ループ 519 決定ネットワーク再構築 521 ループ 522 計装非活動化 523 実データ取得 525 実データでシステム405実行 601 ルール 603 条件要素(例、603(0)) 701 決定ネットワーク(第1の部分) 801 決定ネットワーク(第2の部分) 901 決定ネットワーク(本発明の最適化後の第2の
部分) 1001 計装 1003 テスト 1004 結果キャッシュ 1005 カウンタ(テスト実施度数) 1007 カウンタ(テスト失敗度数) 1009 カウンタ(結果キャッシュのデータ項目) 1101 グラフ 1103 ノード 1105 エッジ 1201 アルゴリズム 1203 アルゴリズムの一部分 1204 アルゴリズムの一部分 1205 アルゴリズムの一部分 1207 アルゴリズムの一部分 1209 アルゴリズムの一部分 1301 テスト・カウンタ 1303 結果キャッシュ・カウンタ 1305 リスト 1307 リスト 1309 リスト(候補) 1311 リスト(選択) 1313 システム・リオルガナイザ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マリア ジーザス ペーマン スペイン、マドリード、コルメナー ビエ ジョ 28770、4 ディー、シー/コルド バ 15 (72)発明者 ジェィムズ アール. ロウランド アメリカ合衆国、07078 ニュージャージ ー、ショート ヒルズ、サッカレイ ドラ イブ 18

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 順序によりデータに決定基準を適用して
    意思決定を行う意思決定装置において、 その意思決定時に前記決定基準をそのデータに適用する
    適用量を減少するように前記順序を変更してそのデータ
    に応答する最適化手段を有することを特徴とする意思決
    定装置。
  2. 【請求項2】 さらに、前記最適化手段は、 この意思決定装置の動作時にそのデータに前記決定基準
    の適用に関する情報を記録する計装手段と、 前記情報に応答して前記順序を変更する解析手段を有す
    ることを特徴とする請求項1に記載の意思決定装置。
  3. 【請求項3】 さらに、この意思決定装置では、 前記決定基準を指定する各条件要素は1以上のテストを
    持ちかつこのテストは前記条件要素間に共用する変数に
    おけるテストを含むような条件要素で前記決定基準を指
    定し、 さらにまた、この意思決定装置では、 その解析手段は、各条件要素に対する限定度を決め、変
    数を共用する条件要素の集まりを決め、およびこの条件
    要素の順序を変更するために前記限定度と条件要素の前
    記集まりを用いることを特徴とする請求項2に記載の意
    思決定装置。
  4. 【請求項4】 さらに、前記解析手段は、 前記条件要素を限定度により順序づけしたリストを作成
    するリスト作成手段と、 前記条件要素のグラフ図を作
    成して条件要素の前記集まりを決める手段において、各
    条件要素はこのグラフのノードであり、このグラフには
    エッジがあってこのエッジが任意の条件要素のノードを
    いずれかの条件要素のノードと結合しそれによりこの任
    意の条件要素がその変数の中の少なくとも1変数を共用
    するような前記条件要素のグラフ図を作成して条件要素
    の前記集まりを決める手段を有し、および、 前記解析手段は、前記条件要素の前記順序を変更するた
    めに前記リストと前記グラフ図を用いることを特徴とす
    る請求項3に記載の意思決定装置。
  5. 【請求項5】 さらに、前記決定基準をそのデータに適
    用する決定ネットワークを含み、さらにまた、前記決定
    ネットワークにおけるそのデータ・フローを最小にする
    ように前記最適化手段はその順序を変更することを特徴
    とする請求項1に記載の意思決定装置。
  6. 【請求項6】 さらに、前記最適化手段は、 そのデータに前記決定ネットワークの動作に関する情報
    を記録する計装手段と、 その情報に応答してその順序
    を変更する解析手段を有することを特徴とする請求項5
    に記載の意思決定装置。
  7. 【請求項7】 さらに、この意思決定装置では、 前記決定基準はウイズイン・テストとビトウイン・テス
    トを含有し、 前記決定ネットワークは、 前記ウイズイン・テストをそのデータ項目に適用する第
    1の要素と、 そのデータ項目を含有する結果キャッシュと、 前記結果キャッシュに含有するそのデータ項目に前記ビ
    トウイン・テストを適用する第2の要素を有し、 さらにまた、この意思決定装置では、 その計装手段は、 前記ウイズイン・テストと前記ビトウイン・テストおい
    てその各テストの実施度数を示す第1のカウンタと、 前記ウイズイン・テストと前記ビトウイン・テストにお
    いてその各テストの生じたある結果の度数を示す第2の
    カウンタと、 前記結果キャッシュにおいて各結果キャッッシュのデー
    タ項目数を示す第3のカウンタを有し、またさらに、 前記解析手段は前記カウンタの値に応答することを特徴
    とする請求項6に記載の意思決定装置。
  8. 【請求項8】 さらに、この意思決定装置では、 前記決定基準を条件要素で指定し、 さらにまた、この意思決定装置では、 その解析手段は、前記条件要素を再順序づけし、また、 各前記条件要素に対する限定度値を計算するためおよび
    限定度値の減少順に順序づけする前記条件要素のリスト
    を作成するために前記カウンタの値を用いる手段を有
    し、および前記条件要素の再順序づけ時にこのリストを
    用いることを特徴とする請求項7に記載の意思決定装
    置。
  9. 【請求項9】 さらに、この意思決定装置では、 その解析手段は前記決定基準の交差積の集まりを指定す
    る指定手段を有しさらにこの解析手段は前記カウンタの
    値に加えてこの指定交差積の集まりに応答することを特
    徴とする請求項7に記載の意思決定装置。
  10. 【請求項10】 さらに、この意思決定装置では、 条件要素間に共用する変数におけるテストを含有する条
    件要素で前記決定基準を指定し、および、 前記条件要素のグラフ図を含有する交差積の集まりを指
    定する前記指定手段において、各条件要素はこのグラフ
    のノードであり、このグラフにはエッジがあってこのエ
    ッジが任意の条件要素のノードをいずれかの条件要素の
    ノードと結合しそれによりこの任意の条件要素がその変
    数の中の少なくとも1変数を共用するような前記条件要
    素のグラフ図を交差積の集まりを指定する前記指定手段
    は有することを特徴とする請求項9に記載の意思決定装
    置。
  11. 【請求項11】 さらに、この意思決定装置では、 その解析手段は、さらに、 各前記条件要素に対する限定度値を計算するために前記
    カウンタの値を使用するカウンタ値使用手段と、 条件要素の交差積効果を計算するために前記第3のカウ
    ンタ値を使用する第3カウンタ値使用手段を有し、さら
    にまた、 前記条件要素を順序づけするために、前記第1のリスト
    と前記グラフ図と前記交差積効果を用いる前記解析手段
    において、 1.限定度の減少する順序による前記条件要素の限定度
    リストを作成するステップと、 2.前記限定度リストにおいて第1の条件要素から開始
    し、一方でこの前記限定度リストに条件要素を残しなが
    ら、 a.選択リストにその条件要素を加えて前記限定度リス
    トからその条件要素を除去し、 b.前記選択リストに加えたその条件要素と同じ交差積
    の集まりに属するその条件要素を決めるために前記グラ
    フ図を用い、 c.これら条件要素を候補リストに加え、 d.一方で前記候補リストに条件要素を存在させなが
    ら、 i.前記候補リストにおける前記条件要素の中で可能な
    最大交差積を持つ条件要素を決めこの条件要素を選択す
    るように前記第3のカウンタからの第3の値を使用し、 ii.前記選択リストにこの条件要素を加えて前記限定
    度リストからこの条件要素を除去し、および iii.前記選択リストに加えたその条件要素と同じ交
    差積の集まりに属するいずれかの条件要素をきめるよう
    に前記グラフ図を用い、および、 iv.これらの条件要素を前記候補リストに加えること
    を行うステップを実施して前記条件要素を順序づけする
    ためにその解析手段は前記第1のリストと前記グラフ図
    と前記交差積効果を用いることを特徴とする請求項10
    に記載の意思決定装置。
  12. 【請求項12】 さらに、この意思決定装置では、 前記最適化手段が生成したこの変更順序は、さらに、こ
    の意思決定装置が加えたいずれかの必要条件を表すこと
    を特徴とする請求項1、2、または5のいずれかに記載
    の意思決定装置。
  13. 【請求項13】 さらに、この意思決定装置は、訓練モ
    ードと運転モードを有し、および、 前記最適化手段はこの訓練モードにおいてのみ動作する
    ことを特徴とする請求項1、2、または5のいずれかに
    記載の意思決定装置。
  14. 【請求項14】 さらに、この意思決定装置が運転モー
    ドで動作する場合のデータを表すテスト・データに訓練
    モードでこの意思決定装置が動作することを特徴とする
    請求項13に記載の意思決定装置。
  15. 【請求項15】 さらに、この意思決定装置では、 前記最適化手段は現状態を保持する手段とこの現状態を
    保存する手段を有し、 それによりその訓練モードにおける動作の中断と継続が
    可能とする保持手段と保存手段を有することを特徴とす
    る請求項13に記載の意思決定装置。
  16. 【請求項16】 順序によりデータに決定基準を適用し
    て意思決定を行う意思決定装置の動作を自動的に最適化
    する動作自動的最適化法において、 前記決定基準をそのデータに適用する方法を示す値を得
    るようにこの意思決定装置を計装化する計装ステップ
    と、 そのデータに前記計装化意思決定装置を動作させるオペ
    レーション・ステップと、 その意思決定時に前記決定基準をそのデータに適用する
    適用量を減少するように前記順序を変更することにより
    前記オペレーションの結果得た値に応答する応答ステッ
    プを有することを特徴とする意思決定装置の動作自動的
    最適化法。
  17. 【請求項17】 前記決定基準を指定する各条件要素は
    1以上のテストを持ちかつこのテストは前記条件要素間
    に共用する変数におけるテストを含むような条件要素で
    前記決定基準を指定し、さらにその値に応答する前記応
    答ステップは、 各条件要素に対し限定度を決める限定
    度決定ステップと、 変数を共用する条件要素の集まりを決める条件要素の集
    まり決定ステップと、 この条件要素の順序を変更するために前記限定度と条件
    要素の前記集まりを用いる使用ステップを有することを
    特徴とする請求項16に記載の動作自動的適化法。
  18. 【請求項18】 さらに、前記条件要素を限定度により
    順序づけするリストを作成するリスト作成ステップと、 前記条件要素の集まり決定ステップは前記条件要素のグ
    ラフ図を作成するステップを有し、このグラフ図作成ス
    テップにおいては、各条件要素はこのグラフのノードで
    あり、このグラフにはエッジがあってこのエッジが任意
    の条件要素のノードをいずれかの条件要素のノードと結
    合しそれによりこの任意の条件要素がその変数の中の少
    なくとも1変数を共用するような前記条件要素のグラフ
    図を作成するステップを有する前記条件要素の集まり決
    定ステップと、さらに、 前記限定度と条件要素の前記集まりを用いる使用ステッ
    プは前記リストと前記グラフ図を用いる使用ステップで
    あり、さらにこの使用ステップを有することを特徴とす
    る請求項17に記載の動作自動的最適化法。
  19. 【請求項19】 この意思決定装置は前記決定基準をそ
    のデータに適用する決定ネットワークを有し、 この意思決定装置を計装化する計装ステップは前記決定
    ネットワークを計装化するステップを有し、さらに、 さらにその値に応答する前記応答ステップは前記決定ネ
    ットワークにおけるそのデータ・フローを最小にするよ
    うにその順序を変更するステップを有することを特徴と
    する請求項16に記載の動作自動的最適化法。
  20. 【請求項20】 前記決定基準はウイズイン・テストと
    ビトウイン・テストを有し、 前記決定ネットワークは、 前記ウイズイン・テストをそのデータ項目に適用する第
    1の要素と、 そのデータ項目を含有する結果キャッシュと、 前記結果キャッシュに含有するそのデータ項目に前記ビ
    トウイン・テストを適用する第2の要素を有し、 さらに、この意思決定装置を計装化する計装ステップ
    は、 前記ウイズイン・テストと前記ビトウイン・テストにお
    いてその各テストの実施度数を示す第1の値を生成する
    第1のカウンタを配置するステップと、 前記ウイズイン・テストと前記ビトウイン・テストにお
    いてその各テストの生じたある結果の度数を示す第2の
    値を生成する第2のカウンタを配置するステップと、 前記結果キャッシュにおいて各結果キャッシュのデータ
    項目数を示す第3のカウンタを配置するステップを有す
    ることを特徴とする請求項19に記載の動作自動的最適
    化法。
  21. 【請求項21】 この動作自動的最適化法では、 前記決定基準を条件要素で指定し、 および、この意思決定装置では、さらに、 その値に応答する前記応答ステップは前記条件要素の順
    序を変更し、さらに、この前記応答ステップは、 各前記条件要素に対し限定度値を計算するのに第1と第
    2と第3の前記値を用いるステップと、 限定度値の減少順に順序づけする前記条件要素の第1の
    リストを作成するステップを有することを特徴とする請
    求項20に記載の動作自動的最適化法。
  22. 【請求項22】 その値に応答する前記応答ステップ
    は、さらに、 前記決定基準の交差積の集まりを指定する指定ステップ
    と、 その順序を変更するために前記交差積の集まりと第1と
    第2と第3の前記値を用いるステップを有することを特
    徴とする請求項20に記載の動作自動的最適化法。
  23. 【請求項23】 この動作自動的最適化法では、 前記決定基準を条件要素で指定し、 交差積の集まりを指定する前記指定ステップは、さら
    に、 前記条件要素のグラフ図を作成するステップのグラフ図
    において、各条件要素はこのグラフのノードであり、こ
    のグラフにはエッジがあってこのエッジが任意の条件要
    素のノードをいずれかの条件要素のノードと結合しそれ
    によりこの任意の条件要素がその変数の中の1変数を共
    用するような前記条件要素のグラフ図を作成するステッ
    プと、 交差積の集まりを指定する前記指定ステップが、さら
    に、前記グラフ図を用いるグラフ図使用ステップを有す
    ることを特徴とする請求項22に記載の動作自動的最適
    化法。
  24. 【請求項24】 さらに、この意思決定装置を計装化す
    る前記計装ステップとこの計装化意思決定装置を動作さ
    せるオペレーション・ステップと得たその値に応答する
    応答ステップを実施するに先だってこの意思決定装置を
    訓練モードにするステップと、 その順序を変更後、この意思決定装置をこの訓練モード
    にするステップをもはや行なわないで運転モードにする
    ステップを有することを特徴とする請求項16、17、
    または19のいずれかに記載の動作自動的最適化法。
  25. 【請求項25】 この意思決定装置を訓練モードにする
    ステップは、この意思決定装置が運転モードで動作する
    場合のデータを表すテスト・データをそのデータとして
    用いるステップを有することを特徴とする請求項24に
    記載の動作自動的最適化法。
  26. 【請求項26】 訓練モードで実施する前記ステップ
    は、さらに、前記計装の現状態を保持するステップと、 この保持現状態を元に復元するステップを有することを
    特徴とする請求項24に記載の動作自動的最適化法。
JP6168607A 1993-06-30 1994-06-29 意思決定装置とその動作自動的最適化法 Pending JPH07168716A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8643793A 1993-06-30 1993-06-30
US086437 1998-05-22

Publications (1)

Publication Number Publication Date
JPH07168716A true JPH07168716A (ja) 1995-07-04

Family

ID=22198563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6168607A Pending JPH07168716A (ja) 1993-06-30 1994-06-29 意思決定装置とその動作自動的最適化法

Country Status (4)

Country Link
US (1) US5999923A (ja)
EP (1) EP0632372A3 (ja)
JP (1) JPH07168716A (ja)
CA (1) CA2124479A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2287689C (en) 1998-12-03 2003-09-30 P. Krishnan Adaptive re-ordering of data packet filter rules
US6625500B1 (en) * 1999-03-16 2003-09-23 Chou H. Li Self-optimizing method and machine
US6801885B1 (en) 1999-10-05 2004-10-05 Westinghouse Electric Company Llc Process for synthesizing a database for nuclear power plant containment evaluation
US6519599B1 (en) * 2000-03-02 2003-02-11 Microsoft Corporation Visualization of high-dimensional data
US6631362B1 (en) * 2000-05-09 2003-10-07 Robust Decisions General decision-making support method and system
US6622137B1 (en) 2000-08-14 2003-09-16 Formula Telecom Solutions Ltd. System and method for business decision implementation in a billing environment using decision operation trees
US6782372B1 (en) * 2000-09-28 2004-08-24 Sandia Corporation Latent effects decision analysis
US7039623B1 (en) 2001-10-25 2006-05-02 Keeley Thomas M Computer program and data structure for use in knowledge enhance electronic logic
US7009610B1 (en) 2001-10-25 2006-03-07 Keeley Thomas M Computer program and related data processing methods for use in knowledge enhanced electronic logic
US7159208B2 (en) * 2001-10-25 2007-01-02 Keeley Thomas M Programming toolkit for use in the development of knowledge enhanced electronic logic programs
US7512581B2 (en) * 2003-10-09 2009-03-31 Keeley Thomas M Electronic circuit implementing knowledge enhanced electronic logic solutions
US7685528B2 (en) * 2005-06-08 2010-03-23 Keeley Thomas M Programming toolkit with aligning clipper windows for use in the development of knowledge enhanced electronic programs
US20070115916A1 (en) * 2005-11-07 2007-05-24 Samsung Electronics Co., Ltd. Method and system for optimizing a network based on a performance knowledge base
US7818720B2 (en) * 2006-01-24 2010-10-19 Freescale Semiconductor, Inc. System and method for control logic code reordering based on stochastic execution time information
US8494936B2 (en) * 2009-08-10 2013-07-23 Mory Brenner Method for decision making using artificial intelligence
JP5528561B2 (ja) * 2010-09-28 2014-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数の要素をグループ化する方法、プログラムおよび装置
US8856126B2 (en) * 2012-10-10 2014-10-07 Oracle Financial Services Software Limited Simplifying grouping of data items stored in a database

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4752890A (en) * 1986-07-14 1988-06-21 International Business Machines Corp. Adaptive mechanisms for execution of sequential decisions
US5014327A (en) * 1987-06-15 1991-05-07 Digital Equipment Corporation Parallel associative memory having improved selection and decision mechanisms for recognizing and sorting relevant patterns
US5005143A (en) * 1987-06-19 1991-04-02 University Of Pennsylvania Interactive statistical system and method for predicting expert decisions
US4843567A (en) * 1987-07-30 1989-06-27 International Business Machines Corp. Device to assist adaptive reordering of sequential decisions
US4959799A (en) * 1987-11-05 1990-09-25 Hitachi, Ltd. Inference method and system
JPH01284928A (ja) * 1988-05-12 1989-11-16 Toshiba Corp 推論処理装置
US5129037A (en) * 1989-06-20 1992-07-07 Digital Equipment Corporation Neural network for performing beta-token partitioning in a RETE network
GB8929158D0 (en) * 1989-12-23 1990-02-28 Int Computers Ltd Database system
US5121467A (en) * 1990-08-03 1992-06-09 E.I. Du Pont De Nemours & Co., Inc. Neural network/expert system process control system and method

Also Published As

Publication number Publication date
EP0632372A2 (en) 1995-01-04
EP0632372A3 (en) 1996-04-03
CA2124479A1 (en) 1994-12-31
US5999923A (en) 1999-12-07

Similar Documents

Publication Publication Date Title
JPH07168716A (ja) 意思決定装置とその動作自動的最適化法
Chen et al. Learning to perform local rewriting for combinatorial optimization
Cooke Improvement of fishery-management advice through simulation testing of harvest algorithms
US5119470A (en) Computer based inference engine device and method thereof for integrating backward chaining and forward chaining reasoning
EP0760129B1 (en) Instruction creation device
EP0314650A2 (en) Method for optimized rete pattern matching in pattern-directed, rule-based artificial intelligence production systems
Onder et al. Conditional, probabilistic planning: A unifying algorithm and effective search control mechanisms
US8386287B2 (en) Resource management using constraint programming with efficient ordering of variables
KR19990077006A (ko) 유전자 프로그래밍방법 및 시스템
CN111260073A (zh) 数据处理方法、装置和计算机可读存储介质
US5129037A (en) Neural network for performing beta-token partitioning in a RETE network
Abdulrahman et al. Simplifying the algorithm selection using reduction of rankings of classification algorithms
CN115170565A (zh) 基于自动神经网络架构搜索的图像欺诈检测方法及装置
Huber et al. Learning beam search: Utilizing machine learning to guide beam search for solving combinatorial optimization problems
Sikora et al. SCARI: Separate and conquer algorithm for action rules and recommendations induction
Koenig Optimal probabilistic and decision-theoretic planning using Markovian decision theory
Tang et al. Learn to Optimize-A Brief Overview
CN110264392A (zh) 一种基于多gpu的强连通图检测方法
Fonger et al. Mapping time-series data on process patterns to generate synthetic data
US4882691A (en) Caching argument values in pattern-matching networks
CN115983377A (zh) 基于图神经网络的自动学习方法、装置、计算设备及介质
Istiono Analyzing Time and Space Complexity: Kadane vs. Divide and Conquer Algorithms for Maximum Sub-array Problem
Varga et al. Speeding up logic-based benders decomposition by strengthening cuts with graph neural networks
Larson et al. Heuristic procedures for the single machine problem to minimize maximum lateness
Larrosa Bondia et al. Limited discrepancy AND/OR search and its application to optimization tasks in graphical models