(57)【特許請求の範囲】
【請求項１】
協調してジョブのスケジューリング問題の解決を行う処理単位である問題解決手段を複数有する協調型推論装置において、
前記各問題解決手段は、
前記他の問題解決手段との間の相互作用の形態を表す組織構造を実現するように構成された戦略を複数有し、
前記戦略に基づいて前記問題解決を実行する戦略実行手段と、前記問題の解決の状態に応じて、前記複数の戦略の内から適切な戦略を選択することによって各問題解決手段間の前記組織構造を自律的にかつ動的に変更するメタ戦略手段と、内部状態を保持する状態記憶手段と、前記他の問題解決手段と通信する通信手段とを備え、
前記戦略実行手段は、前記実行中の戦略がいずれであるかを記憶する実行戦略記憶部と、前記記憶されている戦略を実行し、この実行状態を前記状態記憶手段に記憶させる戦略実行部とを備え、
前記メタ戦略手段は、前記状態記憶手段に記憶されている実行状態を監視して検出し、前記通信手段を通じて前記他の問題解決手段に通知する状態監視手段と、前記検出された状態に応じて、前記戦略を選択するためのメタ戦略と、前記メタ戦略を実行することによって、前記複数の戦略の内から適切な戦略を選択し、この選択した戦略を前記実行戦略記憶部に記憶させるメタ戦略実行手段とを備えることを特徴とする協調型推論装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のエージェントが協調して問題解決を行う協調型推論装置及び協調型推論方法の改良に関するもので、特に、エージェント間の組織構造の変更を実現しながら、効率的に推論を行なうものに係る。
【０００２】
【従来の技術】
近年、コンピュータを用いる推論技術の一種として、複数のエージェントが協調して問題解決を行なう協調型推論装置及び協調型推論方法が提案されている。ここで、エージェントは、問題解決を行なう処理主体（問題解決手段）を意味し、換言すれば、コンピュータ上に実現される処理単位（モジュール）である。エージェントは、行動ルール及び必要なデータを含むが、いわゆるオブジェクト指向におけるオブジェクトと異なる特徴として、自らの状況判断に基づく自律性を有する。
【０００３】
例えば、エージェントは、処理を依頼するメッセージを必ずしも受信しなくとも、状況判断に基づいて自ら自律的に行動し、逆に、処理を依頼するメッセージを受信しても、理由があるときは無条件には実行しない。なお、協調型推論装置及び協調型推論方法において、複数のエージェントを同時並行的に動作させ協調させるための具体的態様は、マルチプロセッサの必要はなく、例えばタイムシェアリングなどによるマルチタスクで足りる。
【０００４】
このような従来の協調型推論装置及び協調型推論方法において、各エージェントの戦略、すなわち何らかの目的に基づいた行動ルールの集合はエージェント毎に固有のものであった。また、エージェントの集合は各エージェントのもつ戦略によって組織化されるため、エージェントの組織構造は固定されていた。
【０００５】
エージェントの代表的な組織構造としては、階層型（ピラミッド型）及び平坦な組織構造が挙げられる。階層型の構造ではピラミッドの頂点にあたるエージェントは他の全てのエージェントと通信し、またエージェント間の調整を行ない、結果をユーザに返すという、いわば「まとめ役」としての戦略に基づいて行動する。
【０００６】
それに対して、ピラミッドの底辺にあたるエージェント達は、与えられた部分問題の解決のみに専念し、他のエージェントとの調整は自分より上位のエージェントに委任する。その代わり、上位エージェントからの指示には服従するという、いわば「手足」としての戦略に基づいて行動する。また、平坦な組織構造ではエージェント間の関係は平等であり、基本的に他のエージェントから指図を受けることはないため、各エージェントは各々独立に自己の判断に基づいて行動することができる。
【０００７】
しかしながら、実際には対象とする問題によって階層的な組織構造が適したものもあれば平坦な組織構造が適したものもある。例えば、部分問題同士が複雑に関係しているような場合では、特定のエージェントが他の複数のエージェントを制御し、全体として同期をとって問題解決にあたる階層型の組織構造の方が効率が良い。逆に、部分問題同士の関係が希薄であれば、個々のエージェントは他のエージェントに干渉せず、与えられた部分問題を並列に解決していく平坦な組織構造の方が処理時間が短縮される。
【０００８】
また、対象問題の解決途中においても組織構造の変更が有効な場合が考えられる。例えば、複数の部分問題から構成される問題解決において、初期段階では個々の部分問題は比較的独立しており、それぞれを並列に解決していった方が効率的であるが、問題解決が進行するにつれて部分問題同士の関係が密接になり、それぞれを独立に扱うことが困難になっていく場合などが挙げられる。そういった場合、問題解決の初期段階では平坦な組織構造でなるべく並列に各部分問題を処理し、部分問題同士が複雑に絡んできた時点で、あるエージェントを中心とした階層構造に変更し、エージェント同士で密な連係を確立するなどの手法が有効である。
【０００９】
このため、最近では、問題解決の局面に応じてエージェントの組織構造を変更する協調型推論装置及び協調型推論方法が提案されている。これらの従来技術では、システム全体に唯一の組織構造変更のための集中監視機構が設けられており、このような集中監視機構は、エージェント外にスーパーバイザとして設けられたり、単一又は少数のエージェントの機能として設けられるものであった。
【００１０】
多くの場合、このような集中管理機構は全エージェントの状態を常に監視しており、あらかじめ設定されたある状態が検出されると全エージェントに対して新たな役割を指示することで組織構造の変更を行なう。
【００１１】
そのため、組織構造が固定化されている場合に比べて、解決可能な問題の種類が豊富であり、解決にあたっての処理時間や解の精度の面でより効率の良いシステムの構築が可能となる。
【００１２】
【発明が解決しようとする課題】
上述したように、複数のエージェントすなわち問題解決手段からなる協調型推論装置及び協調型推論方法において、組織構造を動的に変更することは非常に有効である。しかしながら、組織構造変更のための集中監視機構を設けることは、複数の問題解決手段による分散型の問題解決手法の目的からすると必ずしも好ましいものではなかった。
【００１３】
すなわち、単一又は少数の集中監視機構が状況を監視するためには、全オブジェクトが、常に、状況を表すデータを集中監視機構に送信し続けなければならない。このため、集中的な機構は計算負荷、通信負荷を集中させる原因となり、システム全体のパフォーマンスにとってボトルネックとなりうる。
【００１４】
また、集中監視機構が送信された大量の各データや、各データ間の相互関係を監視し続けることは、プロセッサの処理能力に相当の負担をかけることとなる。このため、エージェント間の組織構造の変更を実現しながら、効率的に推論を行なうことは困難であった。
【００１５】
さらに、各エージェントが集中監視機構に監視され、組織構造の変更についても集中監視機構に制御されることは、各エージェントが上位組織を構成する下位の歯車としての役割を果たすことを意味する。このようなシステム構成は各エージェントの独立性を減少させるため、分散型システムの特徴であるシステムの改良、拡張等に対する保守性を低下させる。
【００１６】
本発明は、上記のような従来技術の問題点を解決するために提案されたもので、その目的は、エージェント間の組織構造の変更を実現しながら、効率的に推論を行う協調型推論装置及び協調型推論方法を提供することである。また、本発明の他の目的は、システムの改良、拡張等に係る保守性に優れた協調型推論装置及び協調型推論方法を提供することである。
【００１７】
【課題を解決するための手段】
上記の目的を達成するため、請求項１の発明は、協調して問題の解決を行う処理単位である問題解決手段を複数有する協調型推論装置において、
前記各問題解決手段は、当該問題解決手段における行動ルールの集合である戦略を複数有し、前記各戦略はそれぞれ、他の問題解決手段との間で所定の組織構造を実現するように構成され、前記各問題解決手段は、前記戦略に基づいて前記問題解決を行なう戦略実行手段と、前記問題の解決の状態に応じて、前記複数の戦略の内から適切な戦略を選択することによって各問題解決手段間の前記組織構造を自律的にかつ動的に変更するメタ戦略手段とを備え、
前記メタ戦略手段は、当該問題解決手段における行動ルールの集合である戦略を複数有し、前記戦略に基づいて問題解決を行なう戦略実行手段と、前記問題解決の状態を監視して検出する状態監視手段と、検出された前記状態に応じて前記戦略を選択するためのメタ戦略と、前記メタ戦略を実行することによって前記複数の戦略の内から適切な戦略を選択するメタ戦略実行手段と、を備えたことを特徴とする。
【００１８】
請求項２の発明は、請求項１の発明を方法の観点から把握したものであって、協調して問題の解決を行う処理単位である問題解決手段を複数用いる協調型推論方法において、
前記各問題解決手段は、当該問題解決手段における行動ルールの集合である戦略を複数有し、前記各戦略はそれぞれ、他の問題解決手段との間で所定の組織構造を実現するように構成され、前記各問題解決手段は、前記戦略に基づいて前記問題解決を行なう戦略実行処理と、前記問題の解決の状態に応じて、前記複数の戦略の内から適切な戦略を選択することによって各問題解決手段間の前記組織構造を自律的にかつ動的に変更するメタ戦略処理とを実行し、
前記メタ戦略処理は、当該問題解決手段における行動ルールの集合である戦略を複数用い、前記戦略に基づいて問題解決を行なう戦略実行処理と、前記問題解決の状態を監視して検出する状態監視処理と、検出された前記状態に応じて前記戦略を選択するためのメタ戦略と、前記メタ戦略を実行することによって前記複数の戦略の内から適切な戦略を選択するメタ戦略実行処理と、を含むことを特徴とする。
【００１９】
このような構成を有する請求項１、２の発明では、各問題解決手段（エージェント）間の相互作用の形態である組織構造の動的な変更が、各問題解決手段自身の自律的動作及び協調関係によって実現される。このため、集中的監視機構やそれに伴う計算負荷、通信負荷の集中が回避されるので、エージェント間の組織構造の変更を実現しながら、効率的な推論が可能となる。また、各問題解決手段の自律性が維持されるので、システムの改良、拡張等に係る優れた保守性を確保することができる。
すなわち、請求項１、２の発明では、各問題解決手段が戦略を複数有し、各戦略はそれぞれ、他の問題解決手段との間で所定の組織構造を実現するように構成されている。そして、組織構造の変更は、問題又は前記問題の解決の状態に応じて、複数の戦略の内から適切な戦略を選択することによって、自律的に行われる。
【００２０】
例えば、各問題解決手段間において、平坦で相互に影響しない関係を形成するときは、各問題解決手段が、他と関係なく処理を実行する戦略を選択すればよい。他の問題解決手段と上下関係を形成するときは、一つの問題解決手段が上位として振る舞う戦略を選択し、他の各問題解決手段は下位として振る舞う戦略を選択すればよい。このように、請求項１、２の発明では、問題解決手段間の組織構造の変更が、戦略の選択という単純な処理で実現でき、システムの効率や信頼性が向上する。
また、状態に応じた戦略の選択のための具体的な順則が、メタ戦略として構成されるので、戦略の選択の態様の変更は、他の構成要素を変更せずメタ戦略の変更として容易に実現できる。
【００２１】
【発明の実施の形態】
以下、本発明を、分散型スケジューリングシステムとして、生産スケジューリング問題に適用した実施の形態（以下「実施形態」という）の一例について、図面に基づいて説明する。
【００２２】
本実施形態は、請求項１、２に対応するもので、協調して問題の解決を行う処理単位である問題解決手段を複数有する協調型推論装置及びこの協調型推論装置上で実行される協調型推論方法に関するものである。
【００２３】
本実施形態の目的は、エージェント間の組織構造の変更を実現しながら、効率的に推論を行なう協調型推論装置及び協調型推論方法を提供することである。また、本実施形態の他の目的は、システムの改良、拡張等に係る保守性に優れた協調型推論装置及び協調型推論方法を提供することである。
【００２４】
本実施形態は、具体的には、下記に詳述するように、前記各問題解決手段が、複数の問題解決手段間の相互作用の形態である組織構造を、前記問題の解決の状態に応じて、適切な組織構造へと自律的に変更することを特徴とする。
【００２５】
（１）実施形態の概略
本実施形態では、各問題解決手段（エージェント）が戦略を複数有し、各戦略はそれぞれ、他の問題解決手段との間で所定の組織構造を実現するように構成されている。そして、組織構造の変更は、前記問題の解決の状態に応じて、複数の戦略の内から適切な戦略を選択することによって、自律的に行われる。
【００２６】
例えば（図１）、各問題解決手段２ａ、２ｂ、２ｃ間において、平坦で相互に影響しない関係を形成するときは、各問題解決手段２ａ、２ｂ、２ｃが、他と関係なく処理を実行する戦略Ｃを選択する。図１において、選択されている戦略を実線の図形で、選択されていない戦略を波線の図形で表す。問題解決手段２ａ、２ｂ、２ｃ間に上下関係を形成するときは（図５）、例えば問題解決手段２ｂが上位として振る舞う戦略Ｄを選択し、他の各問題解決手段２ａ、２ｃは下位として振る舞う戦略Ｅを選択する。
【００２７】
このように、本実施形態では、各問題解決手段間の相互作用の形態である組織構造の動的な変更が、各問題解決手段自身の自律的動作及び協調関係によって実現される。このため、集中的監視機構やそれに伴う計算負荷、通信負荷の集中が回避されるので、エージェント間の組織構造の変更を実現しながら、効率的な推論が可能となる。また、各問題解決手段の自律性が維持されるので、システムの改良、拡張等に係る優れた保守性を確保することができる。
【００２８】
また、本実施形態では、問題解決手段間の組織構造の変更が、戦略の選択という単純な処理で実現でき、システムの効率や信頼性が向上する。
【００２９】
（２）構成
図１は、本実施形態における協調型推論装置の起動時における概略的構成を示す機能ブロック図である。この図に示すように、本実施形態は、問題解決手段（エージェント）１、２ａ、２ｂ、２ｃを有し、各問題解決手段１、２ａ、２ｂ、２ｃは通信路を用いて相互に接続されているものとする。
【００３０】
また、図２は、本実施形態における問題解決手段１、２ａ、２ｂ、２ｃの構成を示す機能ブロック図である。この図に示すように、各問題解決手段１、２ａ、２ｂ、２ｃは、当該問題解決手段における行動ルールの集合である戦略１１を複数有し、各戦略１１はそれぞれ、他の問題解決手段との間で所定の組織構造を実現するように構成されている。また、各問題解決手段１、２ａ、２ｂ、２ｃは、戦略１１に基づいて問題解決を行なう戦略実行手段１２と、問題の解決の状態に応じて、複数の戦略１１の内から適切な戦略１１を選択することによって各問題解決手段１、２ａ、２ｂ、２ｃ間の組織構造を自律的にかつ動的に変更するメタ戦略手段１３と、を備えている。
【００３１】
また、戦略実行手段１２は、実行中の戦略がいずれであるかを記憶する実行戦略記憶部１２１と、記憶されている戦略を実行する戦略実行部１２２と、を有する。
【００３２】
また、前記メタ戦略手段１３は、問題解決の状態を監視して検出する状態監視手段１３１と、検出された状態に応じて戦略１１を選択するためのメタ戦略１３２と、メタ戦略１３２を実行することによって複数の戦略１１の内から適切な戦略１１を選択するメタ戦略実行手段１３３と、を有する。
【００３３】
また、各問題解決手段１、２ａ、２ｂ、２ｃは、内部状態（作成したスケジュール）を保持する状態記憶手段１４、及び他の問題解決手段と情報を授受するための通信手段１５を有している。
【００３４】
なお（図１）、問題解決手段１は、スケジューリング対象である製品の製造手順を表す情報の入力や、他の問題解決手段２ａ、２ｂ、２ｃへの対応するジョブの出力、ユーザとの対話などを担当し、ラフスケジューラと呼ぶ。問題解決手段２ａ、２ｂ、２ｃはそれぞれ旋盤、フライス盤、ボール盤へのジョブ配置を担当するスケジューラであり、詳細スケジューラと呼ぶ。
【００３５】
（３）作用
上記のような構成を有する本実施形態における問題の解決は、以下のように行われる。
【００３６】
［問題の例］
まず、本実施形態が解決の対象とする生産スケジューリング問題は、フローショップ（作業工程の流れが一方向であるもの）において、各資源にジョブの工程を割付けることであり、例えば、製品Ａを製造するために
第１工程： 旋盤で削る（１．５ｈ）
第２工程： フライス盤で表面を削る（１．０ｈ）
第３工程： ボール盤で穴をあける（２．０ｈ）
納期８０ｈ後、個数１０
などの製造手順を表す情報が与えられる。製品Ｂや製品Ｃに関しても同様である。
【００３７】
本実施形態では、このように入力された情報を基に、各ジョブ（この場合、旋盤、フライス盤、ボール盤などの作業単位を指す）に対応した詳細スケジューラ２ａ、２ｂ、２ｃ（作業計画を立てるシステム）が個々の作業計画表の中に、必要な時間数を確保する。なお、必要な時間数とは、１工程に要する時間数（括弧内に示したもの）×個数１０とする。また、第２工程での作業は当然第１工程での作業より後にスケジューリングされなければならない。また、最終工程での作業終了予定時刻は納期８０ｈ後よりも前でなければならない、などの制約条件が存在する。
【００３８】
［戦略の例］
上記のような問題を解決するための戦略１１及びメタ戦略１３２の例は、次のようなものである。例えば、問題解決手段１のメタ戦略１３２は
ｉｆ  初期状態
ｔｈｅｎ  戦略Ａ（平坦な構造を実現）
ｉｆ  配置困難な状態
ｔｈｅｎ  戦略Ｂ（階層的な構造を実現）
のようなルールで表すことができる。
【００３９】
このメタ戦略１３２は、初期状態では、詳細スケジューラ２ａ、２ｂ、２ｃ間の平坦な組織構造を実現し（戦略Ａ）、配置困難な状況では詳細スケジューラ２ａ、２ｂ、２ｃ間で階層的な構造を実現する（戦略Ｂ）ことを意味する。これは、初期状態では全体のスケジューリング速度を優先させ、一方、詳細スケジューラ２ａ、２ｂ、２ｃの作業計画表が密になり、いずれかの工程の配置が困難な状況では、配置困難となった詳細スケジューラ２ａ、２ｂ又は２ｃを中心とした階層的な組織構造に変更し、その工程における配置を優先させるためである。
【００４０】
なお、本実施形態においては各戦略は排他的に設定されているものとし、複数の戦略が同時に選択されることはないものとする。但し、戦略の設定如何によっては、戦略イ＋ロ、戦略ロ＋ヘのように、戦略ロを共有したり複数の戦略を組み合わせるという選択の仕方もあり得る。
【００４１】
各詳細スケジューラ２ａ、２ｂ、２ｃの並列動作のための上記戦略Ａの具体的内容は、
戦略Ａ：
１．製品情報の中から各工程に関する情報を切り出す。
２．納期と各工程での作業時間数から、各工程の仕切り納期を設定する。（仕切り納期とは、最終的に納期を守れるように設定された工程毎の納期である）
３．各工程に関する情報に仕切り納期を付加して、詳細スケジューラ２ａ、２ｂ、２ｃへジョブを送信する。
というものである。
【００４２】
また、配置困難な工程の優先配置のための戦略Ｂの具体的内容は、
戦略Ｂ：
１．ジョブ配置の失敗を報告してきた詳細スケジューラ２ａ、２ｂ又は２ｃへ製品情報を送信する。
というものである。戦略Ａと戦略Ｂの相違の要点は、スケジューラ間の組織構造に応じて、情報の送信先を変更することである。
【００４３】
上記のような問題解決手段１のメタ戦略に対応し、各問題解決手段２ａ、２ｂ、２ｃが有するメタ戦略１３２は、例えば以下のようなルールとして記述される。
【００４４】
ｉｆ  初期状態
ｔｈｅｎ  戦略Ｃ（平坦な構造を実現）
ｉｆ  配置困難な状態
ｔｈｅｎ  階層的な構造を実現：
ｉｆ  自らが配置困難
ｔｈｅｎ  戦略Ｄ（階層構造の上位）
ｅｌｓｅ  戦略Ｅ（階層構造の下位）
【００４５】
この戦略のうち戦略Ｃは、並列動作のための上記戦略Ａに対応するもので、その具体的内容は、
戦略Ｃ：
１．ジョブを仕切り納期内に配置する。
というものである。
【００４６】
また、戦略Ｄは、配置困難な工程の優先配置のための上記戦略Ｂに対応するもので、自らが配置困難となった工程を担当する詳細スケジューラ２ａ、２ｂ又は２ｃが、階層構造の上位として振る舞うための戦略である。その具体的内容は、
戦略Ｄ：
１．製品情報の内、担当する工程のジョブ配置を行なう。
２．前工程があれば、ジョブの開始時間、及び前工程に関する情報を前工程を担当する詳細スケジューラ２ａ、２ｂ又は２ｃへ送信する。
３．次工程があれば、ジョブの終了時間、納期、及び次工程に関する情報を次工程を担当する詳細スケジューラ２ａ、２ｂ又は２ｃへ送信する。
というものである。
【００４７】
この戦略は、担当する工程の都合に合わせてジョブ配置を行い、配置したジョブの前工程や後工程の問題は、他の詳細スケジューラ２ａ、２ｂ又は２ｃに解決させることを意味する。戦略Ｅは、配置困難な工程の優先配置のための上記戦略Ｂに対応するものであるが、自らは配置困難となっていない詳細スケジューラ２ａ、２ｂ又は２ｃが、階層構造の下位として振る舞うための戦略である。その具体的内容は、
戦略Ｅ：
１．配置が優先された工程のジョブ開始または終了時間に併せて、担当する工程のジョブ配置を行なう。
２．更に前（次）工程があれば、担当する工程のジョブ開始（終了）時間、（納期）、及び前（次）工程に関する情報を前（次）工程を担当する詳細スケジューラ２ａ、２ｂ又は２ｃへ送信する。
というものである。
【００４８】
この戦略は、配置が優先された工程のジョブ開始または終了時間を尊重して、自らが担当する工程のジョブ配置を行うことを意味する。
【００４９】
上記のような戦略１１（戦略Ａ、Ｂ、Ｃ、Ｄ、Ｅ）及びメタ戦略１３２に基づいた問題解決の例を以下に示す。ここでは、問題解決手段１へ、製品Ａの製造手順を表す情報として、
第１工程： 旋盤で削る（１．０ｈ）
第２工程： フライス盤で表面を削る（２．０ｈ）
第３工程： ボール盤で穴をあける（１．０ｈ）
納期８０ｈ後、個数１０
が入力されるものとする。
【００５０】
［戦略の選択］
この時点では、本実施形態の協調型推論装置は初期状態であるから、問題解決手段１では並列動作のための戦略Ａが選択され、各問題解決手段２ａ、２ｂ、２ｃではいずれも並列動作のための戦略Ｃが選択される。図１の示す状態は、各問題解決手段２ａ、２ｂ、２ｃが平坦な構造を形成して並列動作を行う場合の組織構造を概念的に示したものである。
【００５１】
このような初期の選択は、推論の開始時にデフォルトで選択されるように構成してもよいし、状態監視手段１３１が初期状態を検出し、メタ戦略実行手段１３３がメタ戦略１３２に基づいて戦略１１を選択してもよい（メタ戦略実行処理）。
【００５２】
図３は、各問題解決手段１、２ａ、２ｂ、２ｃの動作手順を示すフローチャートであり、ステップ３２に、メタ戦略に基づく戦略の選択を示す。
【００５３】
なお、各問題解決手段１、２ａ、２ｂ、２ｃにおいて、各時点で選択されている戦略（以下「カレント戦略」という）は、実行戦略記憶部１２１に記憶され（ステップ３２）、戦略実行部１２２はカレント戦略を実行する（ステップ３５）。
【００５４】
［戦略実行処理］
各問題解決手段１、２ａ、２ｂ、２ｃでは、カレント戦略が実行される（ステップ３５）。すなわち、まず、問題解決手段１では、カレント戦略Ａの行動ルールに従い、受けとった製品Ａの情報を工程毎のジョブ
第１工程 旋盤：時間数１ｈ、個数１０
第２工程 フライス盤：時間数２ｈ、個数１０
第３工程 ボール盤：時間数１ｈ、個数１０
に分ける。また、各工程の作業時間数に比例して仕切り納期を
旋盤１ｈ：フライス盤２ｈ：ボール盤１ｈ＝０ｈ−２０ｈ：２０ｈ−６０ｈ：６０ｈ−８０ｈ
のように算出する。
【００５５】
その上で上記仕切り納期を工程毎のジョブ情報に付加し、各工程を担当する詳細スケジューラである問題解決手段２ａ、２ｂ、２ｃに通信手段１５を用いて送信する。ここで、図４は、本実施形態における情報の流れの具体例を示す図である。
【００５６】
ジョブの送信を受けた問題解決手段２ａでは（ステップ３４）、カレント戦略Ｃの行動ルールに従い、問題解決手段１から受けとったジョブ、
第１工程  旋盤：時間数１ｈ、個数１０、仕切り納期０ｈ−２０ｈ
を基にして、旋盤の作業計画表に製品Ａに関する作業時間を確保する（ステップ３５）。同様に、問題解決手段２ｂ、２ｃもカレント戦略Ｃに基づいて、それぞれフライス盤、ボール盤の作業計画表に製品Ａに関する作業時間を確保する。このようにして、製品Ａの製造に必要な全工程の作業時間が確保された時点で、製品Ａの生産スケジュールが完成する。
【００５７】
他の製品についても、同様に、問題解決手段１へなんらかの製品情報が入力され、問題解決手段１は問題解決手段２ａ、２ｂ、２ｃに対して各工程毎の情報を送信し、問題解決手段２ａ、２ｂ、２ｃはそれぞれを作業計画表に配置する。これを繰り返すことで様々な製品の生産計画が立てられていく。
【００５８】
上述したような詳細スケジューラ２ａ、２ｂ、２ｃ間の平坦な組織構造を用いたスケジューリング手法は、各詳細スケジューラ２ａ、２ｂ、２ｃは与えられたジョブを仕切り納期内に配置する限り、他の詳細スケジューラ２ｂ及び２ｃ、２ａ及び２ｃ、２ａ及び２ｂと全く干渉しない。そのため、各詳細スケジューラ２ａ、２ｂ、２ｃを完全に並列に動作させることができ、この状態では、分散型のスケジューリングシステムとしては非常に効率的なスケジューリングが可能である。
【００５９】
［状態監視処理］
しかしながら、各工程の作業計画表が密になってくるにつれラフスケジューラ１によって決められた仕切り納期内への配置は困難になってくる。これは、ラフスケジューラ１は実際の各工程での配置状況を基に仕切り納期を決めているわけではなく、詳細スケジューラ２ａ、２ｂ、２ｃは設定された仕切り納期に必ずしも配置可能ではないことによる。
【００６０】
これに対して、各問題解決手段１、２ａ、２ｂ、２ｃでは、戦略実行部１２２が戦略１１の実行にともなって状態記憶手段１４の内容を順次更新しており（ステップ３６）、一方、状態監視手段１３１が状態記憶手段１４の内容を監視している。そして、状態監視手段１３１は、配置の失敗を検出すると（ステップ３７）、その旨をメタ戦略実行手段１３３に通知すると共に（ステップ３１０）、通信手段１５を通じて他の問題解決手段に通知する（ステップ３８）。
【００６１】
例えば、問題解決手段２ｂにおいて、担当しているフライス盤の作業計画表でのジョブ配置の失敗が検出されると、当該問題解決手段２ｂのメタ戦略実行手段１３３に失敗が通知されるのみならず、他の問題解決手段１、２ａ、２ｃへもジョブ配置の失敗が起きた旨が送信される（ステップ３８）。送信を受けた各問題解決手段１、２ａ、２ｃ内の状態監視手段１３１は（ステップ３９）、当該問題解決手段１、２ａ又は２ｃ内のメタ戦略実行手段１３３に状態の変化を報告し、メタ戦略１３２の実行（再評価）を促す（ステップ３１０）。
【００６２】
［メタ戦略実行処理］
このような失敗の検出は、各詳細スケジューラ２ａ、２ｂ、２ｃが担当している工程の作業計画表が密になり、与えられた仕切り納期内に配置することが出来なくなった場合であるから、各スケジューラの有している戦略を切替えることでスケジューリングシステムの組織構造を変更する。それによってより適したスケジューリング方法への変更が行なわれる。
【００６３】
以下に、問題解決手段２ｂにおいてラフスケジューラ１から与えられた製品Ｚに関するジョブを仕切り納期内に配置ができなかった場合の、各問題解決手段１、２ａ、２ｂ、２ｃの動作について説明する。ここで、ジョブを仕切り納期内に配置できない場合とは次のような場合である。
【００６４】
例えば、製品Ｚに関する情報が
第１工程 旋盤で削る（１．０ｈ）
第２工程 フライス盤で表面を削る（２．０ｈ）
第３工程 ボール盤で穴をあける（１．０ｈ）
納期８０ｈ後、個数１０
であるものとする。
【００６５】
この場合は、ラフスケジューラである問題解決手段１は作業時間数に比例して仕切り納期を設定するため、第２工程であるフライス盤を担当する問題解決手段２ｂの仕切り納期は２０ｈ−４０ｈとなる。ところが、この時点でフライス盤の作業計画表において２０ｈ−４０ｈの時間帯は既に他のジョブが配置済みであり、新たなジョブを配置することが出来ないという事態が発生した場合などである。
【００６６】
失敗の通知を受けたメタ戦略実行手段１３３は、メタ戦略１３２に従って組織構造の変更を行なう。この場合は、問題解決手段２ｂで配置の失敗が発生しているので、各問題解決手段１、２ａ、２ｂ、２ｃは、全体を、問題解決手段２ｂを中心とした階層型の組織構造へ変更するために必要な動作を行い、その上で、最後に配置したジョブ（問題解決手段２ｂが配置できなかったジョブ）から再度ジョブ配置を開始する。
【００６７】
具体的には、問題解決手段１では優先配置のための戦略Ｂが選択され、このカレント戦略Ｂに基づいて、製品Ｚの情報が問題解決手段２ｂへのみ送信される。ここで、図５は、本実施形態において、各問題解決手段２ａ、２ｂ、２ｃが階層構造を形成する場合の組織構造を概念的に示す。
【００６８】
この場合、問題解決手段２ｂでは、自らが配置困難となったため、階層構造の上位になるための戦略Ｄが選択される。そして、このカレント戦略Ｄに基づいて、問題解決手段１から受けとった製品Ｚに関する情報から、担当する工程の情報に基づいてスケジューリングを行なう。
【００６９】
この際、仕切り納期は設定されていないので基本的には作業計画表のどの時間帯にジョブ配置を行なっても良い。その上でジョブの開始時刻を前工程の情報と併せて前工程を担当する問題解決手段２ａへ送信する。次工程に関しても同様である。
【００７０】
一方、問題解決手段２ａでは、自らが配置困難とはなっていないため、階層構造の下位になるための戦略Ｅが選択される。そして、このカレント戦略Ｅに基づいて、問題解決手段２ｂから受け取った情報に基づいてスケジューリングを行なう。この際、問題解決手段２ａは次工程である問題解決手段２ｂの作業開始時間以前に作業時間を確保しなければならない。
【００７１】
同様に、問題解決手段２ｃでも同様に、戦略Ｅの選択とスケジューリングが行なわれる。但し、問題解決手段２ｃは前工程である問題解決手段２ｂの作業終了時間以降で納期以前に作業時間を確保する。ここで、図６は、階層構造における情報の流れの具体例を示す図である。そして、最終工程までの一連の作業時間が確保された時点で製品Ｚの生産スケジュールが完成する。
【００７２】
このような詳細スケジューラ２ａ、２ｂ、２ｃ間の階層的な組織構造を用いたスケジューリング手法は、最も配置が困難な工程を担当する問題解決手段から順に作業時間を設定していくため、他工程との時間調整が容易になり、より密度の高い生産スケジュールを作成することができる。
【００７３】
以上詳述したように、本実施形態では、各問題解決手段１、２ａ、２ｂ、２ｃ間の相互作用の形態である組織構造の動的な変更が、各問題解決手段１、２ａ、２ｂ、２ｃ自身の自律的動作及び協調関係によって実現される。このため、集中的監視機構やそれに伴う計算負荷、通信負荷の集中が回避されるので、エージェント間の組織構造の変更を実現しながら、効率的な推論が可能となる。また、各問題解決手段１、２ａ、２ｂ、２ｃの自律性が維持されるので、システムの改良、拡張等に係る優れた保守性を確保することができる。
【００７４】
また、本実施形態では、問題解決手段間の組織構造の変更が、戦略の選択という単純な処理で実現でき、システムの効率や信頼性が向上する。
【００７５】
特に、本実施形態では、状態に応じた戦略の選択のための具体的な順則が、メタ戦略１３２として構成されるので、戦略の選択の態様の変更は、他の構成要素を変更せずメタ戦略１３２の変更として容易に実現できる。
【００７６】
（４）他の実施形態
なお、本発明は上記実施形態に限定されるものではなく、実施態様の変更は自由であるから、次に例示するような他の実施形態をも包含するものである。例えば、上記実施例では問題解決手段１がまとめ役として入出力等を統括したが、処理の一部を統括する問題解決手段を設けず、各問題解決手段が適宜入出力等を行ってもよい。また、本発明を適用する推論問題の分野や内容、協調する問題解決手段の数、問題解決手段間の組織構造などは自由で、例えば、故障診断やプラント制御に適用したり、問題解決手段を５つ以上設けたり、放射状やリング状の組織構造などを用いてもよい。また、メタ戦略とメタ戦略実行手段は別個独立とせず一体としてもよい。
【００７７】
【発明の効果】
以上説明したように、本発明によれば、各問題解決手段間の相互作用の形態である組織構造の動的な変更が、各問題解決手段自身の自律的動作及び協調関係によって実現される。このため、集中的監視機構やそれに伴う計算負荷、通信負荷の集中が回避されるので、効率的な推論が可能となる。
【図面の簡単な説明】
【図１】  本発明の実施形態の協調型推論装置の概略的構成を示す機能ブロック図。
【図２】  本発明の実施形態の問題解決手段の構成を示す機能ブロック図。
【図３】  本発明の実施形態の問題解決手段の動作手順を示すフローチャート。
【図４】  本発明の実施形態の協調型推論装置における情報の流れを示す概念図。
【図５】  本発明の実施形態の協調型推論装置における組織構造を示す概念図。
【図６】  本発明の実施形態の協調型推論装置における情報の流れを示す概念図。
【符号の説明】
１、２ａ、２ｂ、２ｃ…問題解決手段
１１…戦略
１２…戦略実行手段
１２１…実行戦略記憶部
１２２…戦略実行部
１３…メタ戦略手段
１３１…状態監視手段
１３２…メタ戦略
１３３…メタ戦略実行手段
１４…状態記憶手段
１５…通信手段
【図１】
0003775757.tif 000002
【図２】
0003775757.tif 000003
【図３】
0003775757.tif 000004
【図４】
0003775757.tif 000005
【図５】
0003775757.tif 000006
【図６】
0003775757.tif 000007