(57)【要約】【課題】目標値に最も近い値を有する経路を識別する。【解決手段】複数のノードおよびノード対の間の複数のエッジを含む開始グラフを提供するステップであって、前記ノードは個々に１つのプロパティ値を含み、機械またはシステムの物理的ロケーションまたは動作状態を表すステップと、開始グラフおよび開始ノードに基づいて後続グラフを構成するステップと、開始グラフおよびゴールノードに基づいて先行グラフを構成するステップと、後続および先行グラフに基づいて接続グラフを構成するステップと、接続グラフの所定の各ノードの上界および下界値を、所定のノードからゴールノードに到るすべての残りの経路の加重値に基づいて決定するステップと、非ゼロ目標値に最も近い経路値を有する開始ノードからゴールノードに到る経路を識別するために、上界および下界値を使用して最良優先探索を実行するステップを含む。【選択図】図１
2010020771.tif 000002
【特許請求の範囲】
【請求項１】
目標値に最も近い値を有する少なくとも１つの経路を識別するための方法であって、
複数のノードおよびノード対の間の複数のエッジを含む開始グラフを提供するステップであって、各エッジは、少なくとも１つの正の有向加重値を有し、前記ノードは個々に、少なくとも１つのプロパティ値を含み、機械またはシステムの物理的ロケーションまたは動作状態を表すステップと、
前記開始グラフおよび開始ノードに少なくとも部分的に基づいて後続グラフを構成するステップと、
前記開始グラフおよび少なくとも１つのゴールノードに少なくとも部分的に基づいて先行グラフを構成するステップと、
前記後続および先行グラフに少なくとも部分的に基づいて接続グラフを構成するステップと、
前記接続グラフの所定の各ノードの上界および下界値を、前記所定のノードから前記少なくとも１つのゴールノードに到るすべての残りの経路の加重値に少なくとも部分的に基づいて決定するステップと、
非ゼロ目標値に最も近い経路値を有する前記開始ノードから前記ゴールノードに到る少なくとも１つの経路を識別するために、前記上界および下界値を使用して最良優先探索を実行するステップと、
を含むことを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、
前記接続グラフが、前記後続および先行グラフの合併として構成されることを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、
前記接続グラフの所定の各ノードの上界および下界値を決定するステップが、
前記少なくとも１つのゴールノードの前記上界および下界値をゼロに初期化するステップと、
前記ゴールノードから前記開始ノードへと逆方向に辿りながら、式
【数１】
2010020771.tif 000140
に従って、前記接続グラフの所定の各ノードｎに前記所定のノードの先行ノードｍから到着するエッジに沿って上界値ＵＳｍおよび下界値ＬＳｍを決定するステップであって、式中のｖ（ａＳＭ，ＳＮ）は、前記先行ノードｍから前記所定のノードｎへの前記エッジの前記少なくとも１つの有向加重値であるステップと、
を含むことを特徴とする方法。
【請求項４】
請求項１に記載の方法であって、
前記最良優先探索を実行するステップが、
前記開始ノードから前記ゴールノードへと順方向に辿りながら、以下のノード評価に従って、
（１）所定の各ノードｎについて、後続ノードの集合を生成するステップと、
（２）所定の集合の後続各ノードについて、後続ノード値
【数２】
2010020771.tif 000141
を決定するステップであって、
【数３】
2010020771.tif 000142
は、前記所定のノードｎから所定の後続ノードまでの前記エッジの前記加重値であり、Ｔは、前記目標値である、決定するステップと、
（３）所定の集合の各後続ノードついて、前記後続ノードの上界値ＵＳｍおよび下界値ＬＳｍを使用して、以下のように、
【数４】
2010020771.tif 000143
のように関数Ｆを評価するステップであって、ここで、
【数５】
2010020771.tif 000144
および
【数６】
2010020771.tif 000145
である、評価するステップと、
（４）すべての評価された後続ノードをリスト内に保持するステップであって、リスト内ではすべてのノードが関数Ｆの結果によってソートされる、保持するステップと、
（５）前記後続ノード集合に少なくとも部分的に基づいて、非ゼロ目標値に最も近い経路値を有する前記開始ノードから前記ゴールノードに到る少なくとも１つの経路を識別するために、最小関数Ｆを有する１つのノードを選択し、前記選択されたノードがゴールノードになるまで、ステップ（１）から続行するステップと、
に従って、所定の各ノードｎのノード評価を実行するステップ
を含むことを特徴とする方法。
【請求項５】
機械またはシステムの物理的ロケーションまたは動作状態を表し、少なくとも１つのプロパティ値を有する複数のノードと、各エッジが少なくとも１つの正の有向加重値を有するノード対の間の複数のエッジとを含む開始グラフにおいて、目標値に最も近い値を有する少なくとも１つの経路を識別するためのシステムであって、
前記システムは、目標値探索コンポーネントを有し、
前記目標値探索コンポーネントが、
前記開始グラフ、開始ノード、および少なくとも１つのゴールノードに少なくとも部分的に基づいて接続グラフを構成するように動作するグラフ構成コンポーネントと、
前記接続グラフの所定の各ノードの上界および下界値を、前記所定のノードから前記少なくとも１つのゴールノードに到るすべての経路の前記加重値に少なくとも部分的に基づいて決定するように動作する計算コンポーネントと、
非ゼロ目標値に最も近い経路値を有する前記開始ノードから前記ゴールノードに到る少なくとも１つの経路を識別するために、前記上界および下界値を使用して最良優先探索を実行するように動作する探索コンポーネントと、
を備えることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
例示的な本実施形態は、生産計画システムおよび消費者に目標とする探索結果を提供するシステムのためのオンライン診断などの様々な環境で使用され得る目標値探索のためのシステムおよび方法に関する。
【背景技術】
【０００２】
下記の特許文献１には、複数のモジュールを備え、再構成可能な生産システムのワークフローを自動的に計画しスケジューリングするためのシステムが開示されている。システムは、システムコントローラと、通常及び診断のワークユニットの同時生成を計画する計画機能、通常及び診断のワークユニットの同時生成をスケジューリングするスケジューリング機能を備える。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第７２３３４０５号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、設定目標値に最も近い値を有する、グラフ内の１つまたは複数の経路を識別するためのシステムおよび方法を提供する。
【課題を解決するための手段】
【０００５】
本発明は、目標値に最も近い値を有する少なくとも１つの経路を識別するための方法であって、複数のノードおよびノード対の間の複数のエッジを含む開始グラフを提供するステップであって、各エッジは、少なくとも１つの正の有向加重値を有し、前記ノードは個々に、少なくとも１つのプロパティ値を含み、機械またはシステムの物理的ロケーションまたは動作状態を表すステップと、前記開始グラフおよび開始ノードに少なくとも部分的に基づいて後続グラフを構成するステップと、前記開始グラフおよび少なくとも１つのゴールノードに少なくとも部分的に基づいて先行グラフを構成するステップと、前記後続および先行グラフに少なくとも部分的に基づいて接続グラフを構成するステップと、前記接続グラフの所定の各ノードの上界および下界値を、前記所定のノードから前記少なくとも１つのゴールノードに到るすべての残りの経路の加重値に少なくとも部分的に基づいて決定するステップと、非ゼロ目標値に最も近い経路値を有する前記開始ノードから前記ゴールノードに到る少なくとも１つの経路を識別するために、前記上界および下界値を使用して最良優先探索を実行するステップを含む。
【０００６】
また、本発明は、機械またはシステムの物理的ロケーションまたは動作状態を表し、少なくとも１つのプロパティ値を有する複数のノードと、各エッジが少なくとも１つの正の有向加重値を有するノード対の間の複数のエッジとを含む開始グラフにおいて、目標値に最も近い値を有する少なくとも１つの経路を識別するためのシステムであって、前記システムは、目標値探索コンポーネントを有し、前記目標値探索コンポーネントが、前記開始グラフ、開始ノード、および少なくとも１つのゴールノードに少なくとも部分的に基づいて接続グラフを構成するように動作するグラフ構成コンポーネントと、前記接続グラフの所定の各ノードの上界および下界値を、前記所定のノードから前記少なくとも１つのゴールノードに到るすべての経路の前記加重値に少なくとも部分的に基づいて決定するように動作する計算コンポーネントと、非ゼロ目標値に最も近い経路値を有する前記開始ノードから前記ゴールノードに到る少なくとも１つの経路を識別するために、前記上界および下界値を使用して最良優先探索を実行するように動作する探索コンポーネントとを備える。
本発明は、消費者プリファレンス探索システム、オンライン診断を提供する生産計画システム、および非ゼロ目標値を有する経路が識別される他のアプリケーションにおいて有用性を見出す。
【図面の簡単な説明】
【０００７】
【図１】目標値探索コンポーネントを備える、目標値に最も近い値を有する少なくとも１つの経路を識別するための例示的なシステムを示す図である。
【図２】目標値に最も近い値を有する少なくとも１つの経路を識別する例示的な方法を示す図である。
【図３】例示的な開始ノードおよびゴールノードを含む、ノードおよびエッジを有する例示的な開始グラフを示す図である。
【図４】図３の開始グラフ内の開始ノードに基づいて構成された例示的な後続グラフ（ｓｕｃｃｅｓｓｏｒ  ｇｒａｐｈ）を示す図である。
【図５】図３および図４の開始および後続グラフ内のゴールノードに基づいて構成された例示的な先行グラフ（ｐｒｅｄｅｃｅｓｓｏｒ  ｇｒａｐｈ）を示す図である。
【図６】図４および図５の後続および先行グラフの合併として構成された例示的な接続グラフ（ｃｏｎｎｅｃｔｉｏｎ  ｇｒａｐｈ）を示す図である。
【図７】開始ノードｓ、ゴールノードｇ、介在ノードａ、ｂ、および対応する有向加重値を有するエッジｅ１〜ｅ５を示す、図６の例示的な接続図を簡略形式で示す図である。
【図８】開始ノードからゴールノードに到る３つの可能な経路を示す、図５および図６の接続図から構成された例示的な拡張ツリーを示す図である。
【図９】ノードｓ、ａ、ｂ、ｇについての上界値および下界値を含む、図５および図６の例示的な接続図を示す図である。
【図１０】２つの経路が除外され、非ゼロ目標値に最も近い例示的な経路が識別された、図８の拡張ツリーを示す図である。
【図１１】生産システムと、プランナ、プラントモデル、および目標値探索システムを有する診断エンジンを備えるモデルベース制御システムとを示す図である。
【図１２】図１１の生産システム内の例示的なモジュラ印刷システムプラントをさらに詳細に示す図である。
【図１３】図１１および図１２の制御システム内の例示的なプランナおよび診断エンジンをさらに詳細に示す図である。
【図１４】生産および診断計画を含む、生産システムのための計画空間（ｐｌａｎ  ｓｐａｃｅ）を示す図である。
【図１５】生産システムで実施される計画を構成するための例示的な方法を示す図である。
【図１６】Ａ＊探索を使用して、プラントで実施される計画を評価および生成する例示的な方法を示す図である。
【図１７】システム状態を開始状態からゴール状態まで遷移させるための可能な計画を示す例示的な状態／アクション図である。
【発明を実施するための形態】
【０００８】
最初に図１〜図３を参照すると、図１には、本開示の１つ以上の態様による、目標値探索コンポーネント４３を含む、目標値Ｔに最も近い値を有する１つまたは複数の経路を識別するための例示的なシステム５００が示されている。図２は、図１のシステム５００または他のシステムにおいて実施され得る、目標値に最も近い経路を識別するための例示的な方法６００が示されている。
【０００９】
図１のシステム５００は、以下の図１１〜図１３に示されるような生産制御システム２のコンポーネントを構成することができ、あるいは探索コンポーネント４３は、例えば、ユーザ入力の期間および／またはコストもしくはその範囲を有する、休暇計画または１つ以上のユーザ定義目的地までの地図およびドライブ指図をユーザに提示するための消費者探索システム５００の部分を構成または形成することができる。図３には、少なくとも１つのプロパティ値を有する状態を表す複数のノードと、ノード対の間の複数のエッジとを含む、例示的なグラフ５０２が示されており、各エッジは、少なくとも１つの正の有向加重値を有する。
【００１０】
図１に示されるように、例示的なシステム５００は、図示の実施形態では、グラフ構成コンポーネント４３ａと、計算コンポーネント４３ｂと、探索コンポーネント４３ｃとを有する、目標値探索コンポーネント４３を含む。また図２を参照すると、システム５００には、少なくとも１つのプロパティ値を有する状態を表す、図３のノードｓ、ａ、ｂ、ｇなどの複数のノード５１０を含む開始グラフ５０２が（図２の６０２において）提供される。プロパティ値は、以下の図１１〜図１３の生産プラント２０などの機械またはシステムの動作状態を表すことができ、または旅行計画システム５００における物理的（地理的）ロケーションを表すことができ、または他の任意のタイプまたは形式の状態を表すことができる。さらに、各ノード５１０は、２つ以上のプロパティ値を有することができ、例えば、第１のノード５１０は、第１の時刻における所定のロケーションを表すことができ、また別のノード５１０は、第２の時刻における同じロケーションを表すことができる。
【００１１】
開始グラフ５０２は、ノード５１０の対の間の複数のエッジ５１２も含み、各エッジは、少なくとも１つの正の有向加重値を有する（図１）。グラフ５０２内の所定のエッジ５１２についての１つまたは複数の加重値は、目標値に関連付け得る表現で有向アクションまたは状態遷移を定量化するために使用できるプロパティを表す。例えば、加重値は、開始ノード状態５１０から後続ノード状態５１０まで所定のエッジ５１２に沿って遷移するのに必要とされる時間量などの期間を表すことができる。別の例では、エッジ加重値は、（第１のノード５１０における）１つのロケーションから（第２のノード５１０における）別のロケーションまで移動するコストなどのコストを表すことができる。他の例では、グラフ５０２内の個々のエッジ５１２は、第１の状態ノード５１０から別の状態ノード５１０まで遷移するための期間およびコストなど、多数の正の加重値を有することができる。また別の例では、所定のエッジ５１２についての加重値は、第１のグラフノード５１０における第１のシステム状態から第２のノード５１０における後続システム状態までシステム（例えば、以下の図１１〜図１３のプラント２０）を遷移させる際の、生産システム失敗の確率を定量化する０以上１以下の値など、確率を表すことができる。
【００１２】
図３の例示的な開始グラフ５０２は、いくつかの説明的なノード５１０およびエッジ５１２を含むが、実際には、グラフ５０２は、多数のノード５１０およびエッジ５１２を含むことができる。図３の例では、「ｓ」とラベル付けされた例示的な開始ノード５１０と、「ｇ」とラベル付けされた例示的なゴールノード５１０と、２つの介在ノード「ａ」、「ｂ」とを含むわずか６つの例示的なノード５１０が、これらの例示的なノード５１０を相互接続する様々なエッジ５１２とともに示されており、これらの例示的なノード５１０の間の有効な経路を形成しない図中のエッジ５１２は、図示されていないノード５１０でこれらのエッジ５１２が開始または終了することを示す二重交差線を付して示されている。さらに、エッジ５１２は、本質上有向であり、したがって、すべてが正（例えば、ゼロを含む非負）の加重値を有する、一方向だけのノード／状態遷移を表す。図３〜図１０では、エッジ５１２は、加重値に対応する方向性を示す矢印端をもって示されている。
【００１３】
所定の目標値Ｔ（図１の目標５０８）に最も近く接近する１つ以上の経路を見出す際、目標値探索コンポーネント４３は、入力として、（例えば、図２の６０４において）開始ノード「ｓ」、および１つ以上のゴールノード「ｇ」（図２の６０６）、ならびに１つ以上の目標値「Ｔ」（図２の６０８）を受け取る。２つ以上のゴールノードは、例えば、消費者がヨーロッパへの旅行を検討中であり、５日〜７日という所定の期間にわたる、コストが所定の金額範囲の旅行計画の選択を望んでおり、いくつかの目的地都市／国／地域の１つ（例えば、バルセロナまたはベルリンまたはローマ）への旅行を検討したいと思っている場合に提供することができる。また、２つ以上の目標値は、（例えば、旅行計画システムアプリケーションのための）時間的期間もしくはコストに関する範囲を指定するため、または生産計画生成失敗確率の範囲などのために提供することができる。
【００１４】
グラフ構成コンポーネント４３ａは、これらの入力を受け取り、それらを使用して、（図２の６１２において）開始グラフ５０２および開始ノード「ｓ」に少なくとも部分的に基づいて後続グラフ５２０を構成する。図４は、図３の開始グラフ５０２から構成された例示的な後続グラフ５２０を示しており、指定された開始ノード「ｓ」５１０から究極的に生じ得るエッジだけを含み、図中の他のエッジ５１２は、後続グラフ５２０に含まれないので、点線で示されている。グラフ構成コンポーネント４３ａは、ノード５１０およびそのプロパティ、ならびに関連ノード、方向、および加重値を伴ったエッジ５１２を示すデータを有する、システム５００のメモリにセーブされるリストなど、任意の適切な形式またはフォーマットで、構成された後続グラフ５２０を保存することができる。同様の保存は、最初の開始グラフ５０２にも提供することができ、またはシステム５００は、別個に保存された開始グラフ５０２に基づいて動作することができる。
【００１５】
図２の６１４において、構成コンポーネント４３ａは、開始グラフ５０２および少なくとも１つのゴールノード「ｇ」に少なくとも部分的に基づいて、先行グラフ５２２（図５）を構成する。ある実施では、６１４において、指定された各ゴールノード５１０に関して、別個の先行グラフ５２２が生成される。先行グラフは、究極的にゴールノード「ｇ」で終了し得るノード５１０およびエッジ５１２を含み、先行グラフ５２２は、保存することができる。６１６において、構成コンポーネント４３ａは、後続グラフ５２０および先行グラフ５２２にそれぞれ少なくとも部分的に基づいて、１つ以上の接続グラフ５２４（図６および図７）を構成する。一例では、対応する各先行グラフ５２２について、したがって、入力によって指定された対応する各ゴールノード「ｇ」について、別個の接続グラフ５２４が生成される。さらに、構成コンポーネント４３ａは、開始グラフ５０２、開始ノード「ｓ」５１０、および１つ以上のゴールノード５１０「ｇ」に少なくとも部分的に基づいて、任意の適切な手段によって、１つ以上の接続グラフ５２４を構成することができ、それは単一のプロセスもしくはステップとして実行することができ、または複数のプロセスもしくはステップを介して実行することができる。構成コンポーネント４３ａは、後続グラフ５２０および先行グラフ５２２の合併として、接続グラフ５２４を構成する。図６は、図４の後続グラフおよび図５の先行グラフの合併として構成された接続グラフ５２４を示しており、図７では、この接続グラフ５２４は、開始ノードｓ、ゴールノードｇ、介在ノードａ、ｂ、および対応する有向加重値を有するエッジｅ１〜ｅ５をより良く説明するために簡略形式で示されており、構成コンポーネント４３ａは、探索コンポーネント４３ｃによるさらなる処理のために、任意の適切な方法で、接続グラフ５２４を保存することができる。
【００１６】
図８は、１つ以上の介在ノード「ａ」、「ｂ」を介して開始ノード「ｓ」からゴールノード「ｇ」に到る３つの可能な経路を示す、図６および図７の接続図から構成された例示的な拡張ツリーを示しており、開始ノード５１０は、開始目標値Ｔ＝５を示し、各ブランチの各後続ノード５１０は、先行エッジ５１２の加重値が減算された後の残りの値を示している。
【００１７】
接続グラフ５２４を使用して、計算コンポーネント４３ｂは、そのノードからゴールノード「ｇ」までのすべての経路の加重値に少なくとも部分的に基づいて、接続グラフ５２４の所定の各ノード５１０の上界値および下界値５２７を決定する（図２の６２８）。図９および図１０は、ノードｓ、ａ、ｂ、ｇの上界値および下界値５２７［上界，下界］を含む、この簡略化された例の接続グラフ５２４および拡張ツリー８００をそれぞれ示しており、図１０は、本開示のシステムおよび方法を使用する第１の探索を介する、２つの経路の選択的除去と、非ゼロ目標値Ｔ＝５に最も近い例示的な経路ｓ、ａ、ｂ、ｇの識別とを示している。図２の説明的な実施形態の６１８における境界値決定は、（図９に示されるように）ゴールノード「Ｇ」の上界値および下界値５２７をゼロに初期化する計算コンポーネント４３ｂを必要とする。ゴールノード「ｇ」から開始ノード「ｓ」へと逆方向に辿りながら、計算コンポーネント４３ｂは、以下の式に従って、接続グラフ５２４の所定の各ノードｎ  ５１０に所定のノードの先行ノードｍ  ５１０から到着するエッジ５１２に沿って上界値５２７（ＵＳｍ）および下界値５２７（ＬＳｍ）を決定する。
【００１８】
2010020771.tif 000003
【００１９】
ここで、ｖ（ａＳＭ，ＳＮ）は、先行ノードｍから所定のノードｎへのエッジ５１２の有向加重値である。したがって、図９のノード「ｂ」では、ゴールノード「ｇ」に到着するために、（２の加重値を有する）エッジ５１２  ｅ４だけを辿るので、両方の境界値５２７は２である。他方、ノード「ａ」はゴールノード「ｇ」に到る２つの可能なルートを有する。ノード「ｂ」を経由する第１のサブ経路は、エッジｅ３（２の加重）およびエッジｅ４（２の加重）を辿り、合計は４である。第２のサブ経路は、３の加重を有するエッジｅ５を直接辿る。したがって、ノード「ａ」の場合、下界値ＬＳｍ＝３であり、上界値ＵＳｍ＝４である。図９に示される境界値５２７を計算するために、同様の計算が、ゴールノード「ｇ」から開始ノード「ｓ」へと逆方向に辿りながら、接続グラフ５２４の各ノード５１０について実行される。
【００２０】
上界値および下界値５２７を使用して、探索コンポーネント４３ｃは、非ゼロ目標値Ｔ  ５０８（または多数の目標値Ｔによって指定される範囲）に最も近い経路値を有する、開始ノード「ｓ」からゴールノード「ｇ」に到る少なくとも１つの経路５３０を識別するために、最良優先探索（ｂｅｓｔ  ｆｉｒｓｔ  ｓｅａｒｃｈ）を（図２の６２０において）実行する。これは、所定の各ノードｎについてメモリ内に保存できる１組の後続ノード（図１の後続ノード集合５２８）を生成することによって、開始ノード「ｓ」からゴールノード「ｇ」へと順方向に辿りながら、以下のノード評価に従って、６２０において所定の各ノードｎのノード評価を実行するステップを含む。所定の集合５２８の各後続ノードについて、探索コンポーネント４３ｃは、後続ノード値
2010020771.tif 000004
を決定し、ここで、
2010020771.tif 000005
は、所定のノードｎから所定の後続ノード５１０へのエッジ５１２の加重値である。所定の集合５２８の各後続ノードについて、探索コンポーネント４３ｃは、以下のように、後続ノード５１０の上界値および下界値５２７を使用して、関数Ｆを評価する。
2010020771.tif 000006
ここで、
2010020771.tif 000007
および
2010020771.tif 000008
である。関数Ｆの値は、システムメモリに保存することができる。その後、探索コンポーネント４３ｃは、関数Ｆがゼロまたは最小となる１つ以上のノード５１０をそのまま残し、他のすべての後続ノード５１０を削除して、集合５２８から非最小後続ノード５１０を選択的に除去する。その後、探索コンポーネント４３ｃは、後続ノード集合５２８に少なくとも部分的に基づいて、非ゼロ目標値Ｔに最も近い値を有する、開始ノード「ｓ」からゴールノード「ｇ」に到る経路を識別する。探索コンポーネント４３ｃは、最良優先探索をスピードアップするために、後続ノード集合５２８を選択的に刈り込む、刈り込みコンポーネント５２９をさらに含むことができる。
【００２１】
上述の技法は、目標値探索問題をＡ＊などのヒューリスティック探索が利用できる構成要素に分解するアルゴリズム５２６を提供する。一般的な状況では、ｖ（ｐ）が開始ノード「ｓ」から１つ以上のゴールノード「ｇ」に到る経路ｐの値である、加重有向非循環グラフ（ｗｅｉｇｈｔｅｄ  ｄｉｒｅｃｔｅｄ  ａｃｙｃｌｉｃ  ｇｒａｐｈ）などの、開始グラフＧ＝（Ｖ，Ｅ）が提供され、グラフノード５１０は、代替として、頂点と呼ばれることもある。非最小／非最大目標値「Ｔ」を与えると、説明されたシステム５００および方法６００は、目標値Ｔに最も近い経路値「ｖ」を有する、開始ノードｓからゴールノードｇに到る１つまたは複数の経路を識別する。目標値経路問題は、所定のノード５１０における最良経路完成が、開始ノードｓから現在のノード５１０までそれまでに辿られた経路に依存する点で、非順序保存的である。
【００２２】
各ノード５１０が計画プレフィックスを表す図８および図１０に示されるような拡張ツリーを構成し、目標Ｔに最も近い値を有する経路を識別するためにすべての経路値を評価するよって、接続グラフ５２４を用いて、問題を解くことができる。説明的な実施形態では、所定のノード５１０からゴールノード「ｇ」に到るすべての可能な経路の上界値および下界値５２７を使用する、最良優先探索技法が利用される。
【００２３】
2010020771.tif 000009
が、有限非循環有向グラフ５０２であると仮定し、ここで、
2010020771.tif 000010
は、有向頂点５１０の集合であり、
2010020771.tif 000011
は、正のエッジ加重を有するエッジ５１２の集合である。経路は、
2010020771.tif 000012
である場合かつその場合に限って、Ｇ内のノードｓ０からｓｎへの列
2010020771.tif 000013
として定義される。経路長‖ｐ‖は、列内の要素の数から１を減算したもの、すなわち、ノード遷移の数である。開始およびゴールノードｓ、ｇ∈ＶＧは、グラフ５０２内のノード５１０であり、
2010020771.tif 000014
は、Ｇ内におけるｓからｇに到るすべての経路の組である。先行ノードであるという関係
2010020771.tif 000015
および後続ノードであるという関係
2010020771.tif 000016
を、
2010020771.tif 000017
および
2010020771.tif 000018
のようなグラフの頂点における関係として定義すると、それぞれの補集合（ｃｏｍｐｌｅｍｅｎｔ）は、
2010020771.tif 000019
および
2010020771.tif 000020
である。
2010020771.tif 000021
は、各エッジを正の実数値に写像する関数であり、値関数（ｖａｌｕｅ  ｆｕｎｃｔｉｏｎ）と呼ばれる。以下の説明では、Ｇ内のいくつかの経路について、ｖ（ｐ）が、ｐ内のエッジ５１２の値の和として定義され、ｖ（ｐ）を経路の値と呼ぶ。
【００２４】
ある目標値
2010020771.tif 000022
について、経路
2010020771.tif 000023
が存在して、目標値経路と呼ばれ、その値ｖ（ｐ）は、ｓ、ｇ、およびＴに関して、目標値Ｔに最も近く、これらの経路の集合を
2010020771.tif 000024
と表し、これは以下で与えられる。
【００２５】
2010020771.tif 000025
【００２６】
例示的な目標値探索の非決定論的バージョンは、ある目標値経路
2010020771.tif 000026
を返す。決定論的バージョンへの拡張は簡単であり、以下の考察から、それの異なるところが略述される。具体的には、以下の点である。
【００２７】
2010020771.tif 000027
【００２８】
したがって、この探索は、経路値と目標値Ｔの間の差を最小化する経路を見出す。目標値経路集合は、反復的または再帰的に
2010020771.tif 000028
集合を構成し、上記の式（１）を評価することによって、入力ｓ、ｇ、およびＴに関して、計算することができる。グラフＧ５０２は有限であるので、集合
2010020771.tif 000029
も、
2010020771.tif 000030
について有限であり、各経路
2010020771.tif 000031
は、長さが有限であり、そのため、常に集合を構成することができ、したがって、式（Ａ）を評価することができる。
【００２９】
ａｒｇｍｉｎが関数
2010020771.tif 000032
であることに留意されたい。
2010020771.tif 000033
を、ある経路の値とある値の差として定義された関数
2010020771.tif 000034
とすると、目標値経路の集合は、再帰的に
2010020771.tif 000035
と定義することができる。
【００３０】
ここで、Ｔｓ’＝Ｔ−ｖ（＜ｓ、ｓ’＞）であり、目標値と経路
2010020771.tif 000036
の値の差である。写像
2010020771.tif 000037
は、頂点とＧにおいて定義される集合内の各経路の第１の要素との間にエッジ５１２が存在するように、（頂点，経路の集合）対に対して定義される。この写像は、それらの対を、ｓと各経路の連結から成る集合に写像するように作用して、Ｇ内の経路をもたらす。式（Ｃ）は、
2010020771.tif 000038
の再帰的定義を示している。目標値経路の集合は、ｓ＝ｇである場合かつその場合に限って、単集合
2010020771.tif 000039
であり、
2010020771.tif 000040
である場合かつその場合に限って、空集合φであり（このケースは、頂点ｓ，ｇ∈ＶＧのすべての対について
2010020771.tif 000041
が定義されることを保証する）、またはグラフＧ内の完成のｓ「最良」（後続ノードのそれぞれ目標値
2010020771.tif 000042
に関して）集合への連結からもたらされる経路の集合である。経路
2010020771.tif 000043
および値ｔ，ｔ’＝ｔ−ｖ（〈ｓ０，ｓ１〉）について、δ（ｐ，ｔ）＝δ（ｐ’，ｔ’）であることに留意されたい。したがって、第３のケースでは、直後の後続ノード
2010020771.tif 000044
の目標値経路集合の合併、およびそのそれぞれの目標値
2010020771.tif 000045
において、常に最適完成を見出すことができる。したがって、ａｒｇｍｉｎの第１の引数において、定義はツリー再帰である。
【００３１】
さらに、この再帰は、終了することが保証される。その結果、上記の分解によって簡単な方法で
2010020771.tif 000046
を計算することができる。しかし、このアルゴリズムのツリー再帰の性質により、特にファンアウトが大きいグラフ５０２では、計算が非常に高価になり得る。例えば、平均ファンアウトが３である、おおよそ４０のノードを有するグラフ５０２は、約２万のノードの再帰ツリーをもたらす。しかし、目標値経路集合を計算するためのコストを著しく低減させる方法が存在する。
【００３２】
図３に示されるようなグラフ５０２
2010020771.tif 000047
の抽出を仮定すると、頂点
2010020771.tif 000048
の後続グラフ５２０
2010020771.tif 000049
（図４）は、Ｇ内のｖのすべての後続ノードと、Ｇ内のこれらの後続ノード間のすべてのエッジ５１２とから成るサブグラフ５２０として定義される。
2010020771.tif 000050
【００３３】
頂点ｖ∈Ｇの先行グラフ５２２
2010020771.tif 000051
（図５）は、Ｇ内のｖのすべての先行ノード５１０と、Ｇ内のこれらの先行ノード間のすべてのエッジ５１２とから成るサブグラフである。
2010020771.tif 000052
【００３４】
頂点ｖ１，ｖ２∈Ｇの接続グラフ５２４
2010020771.tif 000053
（図６）は、Ｇ内のｖ１の後続グラフ５２０と、Ｇ内のｖ２の先行グラフ５２２の共通部分である。
2010020771.tif 000054
【００３５】
上記の分解アルゴリズムは、接続グラフ
2010020771.tif 000055
を有向ツリーに拡張し、（ｓ，Ｔ）をルートノードとして開始し、各ノード（ｎ，ｔ）について、
2010020771.tif 000056
内のｎの各後続ノードｎ’の子を反復的に生成し、ノードに
2010020771.tif 000057
というラベルを付することと考えることができる。
2010020771.tif 000058
の構造のため、この拡張は、すべてのリーフがｇとある値ｔｉでラベル付けされたツリーで終了するが、それは、ｇが（構成によって）
2010020771.tif 000059
内に後続ノードをもたない唯一のノードだからである。これらのリーフノードは各々、目標値との絶対差を表すそれぞれのｔｉを、すなわち形式的にはＴに関する経路の｜ｄ｜−関数の絶対値を有する、ｓとｇの間の可能な経路の１つを表す。その結果、拡張ツリーのルートノードから最小｜ｔｉ｜を有するリーフに到る経路は、所望の目標値経路集合
2010020771.tif 000060
を構成する。以下に掲げる擬似コード例は、ｔｖｓアルゴリズムを与える。
【００３６】
2010020771.tif 000061
【００３７】
上記の図７および図８は、エッジ加重を有する例示的な接続グラフ５２４（図７）と、目標値が５である対応する拡張ツリー（図８）を表し、目標値経路集合は、
2010020771.tif 000062
である。
【００３８】
2010020771.tif 000063
【００３９】
2010020771.tif 000064
および
2010020771.tif 000065
を関数とし、
2010020771.tif 000066
であるとすると、上記のツリーの生成中のノードのＴ値の下界は、それぞれのサフィックス経路の目標値を表す。所定のノード（ｎ，ｔ）について、ｔ≦ｌ（ｎ）が成り立つ場合、他のどの完成も目標値Ｔからのより大きなオフセットをもたらすので、このノードについての最良の完成が、
2010020771.tif 000067
における最短経路である。ｔ＝ｕ（ｎ）である類似ケースでは、最良の完成が、
2010020771.tif 000068
における最長経路である。結果として、これらの条件のいずれかがノード５１０について成り立つ場合、このノード５１０についてのグラフ拡張は、停止することができ、その完成は、
2010020771.tif 000069
における最短（最長）経路探索によって計算することができる。どちらの場合も、これは、ヒューリスティックｌおよびｕをそれぞれ用いるＡ＊アルゴリズムを使用して、効率的に実行することができる。
2010020771.tif 000070
はＧのサブグラフであるので、それは非循環（ｃｙｃｌｅ  ｆｒｅｅ）でもあり、したがって、最長経路探索が修正Ａ＊を用いて実行できることにさらに留意されたい。
【００４０】
結果として、例示的なヒューリスティック目標値探索アルゴリズム５２６は、２つのフェーズで動作する。第１のフェーズは、グラフ拡張であり、リーフレベル（すなわちｎ＝ｇ）に達したか、またはｔが［ｌ（ｎ），ｕ（ｎ）］区間から外れたかしない限り、ノード（ｎ，ｔ）の後続ノードが生成される。これらのノードは、その後の処理のための候補リスト内に保存される。このフェーズの終わりに、アルゴリズムは、最小ｔ値を有するリーフノードを決定する。アルゴリズム５２６は、より良い経路を見出すことができない場合は直ちに終了すべきであり、そのため、生成されたリーフノードが最適（すなわち、そのｔ値がゼロ）である場合、アルゴリズム５２６は終了し、対応する経路を返す。
【００４１】
さもなければ、アルゴリズム５２６は、フェーズ２に進み、フェーズ１で見出された最良解（またはリーフノードに達しなかった場合は∞）を記録し、ｔ１およびｔ２がｌ（ｎ）（またはｕ（ｎ））より小さく（または大きく）なるような、対（ｎ，ｔ１）、（ｎ，ｔ２）を求めて候補リストを探索する。そのような場合、より大きな（または小さな）ｔを有するノードは、対応する経路が常により悪いので、刈り込まれる。最後に、アルゴリズム５２６は、保持された集合内の各ノード（ｎ，ｔ）について、特定のグラフ
2010020771.tif 000071
におけるｎからｇまでの最短（または最長）経路Ａ＊探索を初期化し、初期コストは、対応するｔｉに設定される。プレフィックス空間におけるツリー拡張とは反対に、これらの探索がはるかに小さなグラフ空間で実行されることに留意されたい。
2010020771.tif 000072
ＤＡＧは非循環であり、そのため、Ａ＊最長経路探索は簡単である。アルゴリズムは、今度は各ステップにおいて、現在の最良解のｔ値は開いている待ち行列内のすべての第１の要素の中間ｔ値以下かという終了条件を最初にチェックする。中間ｔ値は、Ａ＊探索のＦ関数の値に最初の候補ノードのｔ値を加算したものである。この条件が満たされる場合、最良経路は存在することができず、アルゴリズムは、現在の最良解を返す。さもなければ、最小の中間ｔ値を用いた探索が進められる（ノードが１つ拡張される）。選択されたＡ＊が終了した場合、その解は現在の最良解と比較され、最終的にそれに取って代わる。すべてのＡ＊探索が終了した場合、現在の最良解が返される。このヒューリスティック目標値探索は非決定論的であり、すなわち、
2010020771.tif 000073
の単一の代表を計算するだけであることに留意されたい。しかし、決定論的バージョンへの拡張は簡単である。このヒューリスティック目標探索アルゴリズムについて、以下の擬似コードが提供される。
【００４２】
2010020771.tif 000074
【００４３】
2010020771.tif 000075
【００４４】
Ａ＊探索では、ヒューリスティックを人手を介してまたは自動的に生成することができる。１つの適切な技法は、実際の経路完成コストを計算するために動的プログラミングを利用し、完全な動的プログラミングは、問題を解くために使用することができる。しかし、疎形式（ｓｐａｒｓｅ  ｆｏｒｍ）の動的プログラミングは、各頂点の正確な下界および上界を提供する。ゴール頂点ｇに到るｎを通過する経路についてグラフの各頂点ｎの値境界を計算するために、グラフ構造およびエッジ値を使用して、探索ヒューリスティックまたはアルゴリズム５２６を計算することができる。ヒューリスティックは、横型探索（ＢＦＳ：ｂｒｅａｄｔｈ−ｆｉｒｓｔ  ｓｅａｒｃｈ）と同様に、グラフを探索（ｅｘｐｌｏｒｅ）することによって構成することができる。ゴール頂点ｇから開始して、逆方向に辿りながら、計算コンポーネント４３ｂは、ｇへの経路値の境界区間を計算することによって、すべての直前の頂点を検査する。その後、それらの直前の頂点の各々について、計算コンポーネント４３ｂは、それらの直前の頂点を再帰的に検査し、開始ノードｓまで遡りながら、全接続グラフ５２４が評価されるまで、それを続ける。
【００４５】
これらの境界値５２７を計算するために使用されるデータ構造は、頂点の待ち行列、およびキーが頂点で、値が区間である、写像ｍａｐ（ｎ）＝（ｌ（ｎ），ｕ（ｎ））として実施することができる。区間に関連付けられる各頂点ｎについて、（ｌ（ｎ），ｕ（ｎ））は、下界ｌ（ｎ）および上界ｕ（ｎ）を有する、ｎからｇに到る経路の最良値境界を表す。ゼロ長経路の値はゼロであるので、ｇに関連付けられる区間の境界は、ゼロに初期化される。他のすべての境界値５２７は、下界については正の無限大におよび上界についてはゼロに初期化される。ヒューリスティックの構成は、ゴール頂点ｇを待ち行列に入れることによって開始し、待ち行列が空になるまで、待ち行列スタックをポップして待ち行列からの最初の頂点を検査することによって続行する。頂点ｎの検査は、（１）頂点ｎのすべての直前の頂点を待ち行列の最後に追加し、（２）それらの境界を更新するという、２つの動作を含む。先行頂点ｍの境界更新は、以下のように定義される。
【００４６】
2010020771.tif 000076
【００４７】
待ち行列が空である場合、グラフのすべての頂点の境界は固定値に達している。計算された写像（例えば、図１の値５２７）は、経路値についての上界および下界５２７を含み、その後、写像は、探索をガイドするために使用される。
【００４８】
探索のノード評価は、先に説明されたように関数Ｆの評価を含む。
【００４９】
2010020771.tif 000077
【００５０】
最初のグラフ５０２では、ゴールノードは［０；０］に初期化され、ノードへの到着エッジに沿って境界を伝播させる。これは動的プログラミングを用いて効率的に実行することができる。
【００５１】
2010020771.tif 000078
【００５２】
説明的な実施形態は、図１のコンポーネント５２９によって探索空間の選択的な刈り込みも提供することができる。
2010020771.tif 000079
【００５３】
また図１１〜図１７を参照すると、開始グラフ５０２は、生産プラント２０を動作させて１つ以上の生産ゴールを達成するために計画５４を構成するための、モデルベース制御システム２内の診断エンジン４０（図１１〜図１３）のビリーフモデル４２とすることができる。このアプリケーションでは、開始グラフ５０２は、生産プラント２０の状態を表す複数のノード５１０と、プラント状態を１つのグラフノード５１０から別のグラフノードに遷移させるための、１つ以上のプラントリソース２１〜２４によるアクションを表す複数のエッジ５１２とを含み、各エッジ５１２は、０以上１以下の値を有するアクションに関連する失敗確率を定義する、少なくとも１つの正の有向加重値を有する。この場合、目標値探索コンポーネント４３は、診断エンジン４０に組み込まれ、目標値探索コンポーネント４３のうちの探索コンポーネント４３ｃは、最良優先探索を実行して、非ゼロ目標値に最も近い失敗確率値を有する所定の生産ゴールを達成するための少なくとも１つの生産計画５４を識別する。さらに、以下の例では、プラントリソース２１〜２４における障害の診断について最適学習可能性を有する計画を識別するために、目標値は、０．５またはその周辺のある範囲に有利に設定される。
【００５４】
図１１〜図１３の例示的なプランナドリブンシステムでは、システムのモデルは、プラント２０内のすべての主要なコンポーネントまたはリソース２１〜２４と、コンポーネント間の接続と、コンポーネントがとり得るすべてのアクションとを説明する。プランナ３０のタスクは、要求された出力を生成するためにシステム２０を通してシートを移動させる、計画と呼ばれるアクション列を見出すことである。図１１〜図１３は、本開示の様々な態様が実施され得るそのようなシステム１について示している。
【００５５】
図１１に最もよく示されるように、生産システム６は、生産ジョブ４９をカスタマ４から受け取るプロデューサコンポーネント１０と、プロデューサ１０によってカスタマ４に提供される１つ以上の製品５２を生産するために、１つ以上の計画５４に従って始動および動作させ得る、複数のリソース２１〜２４を有するプラント２０とを含んで示され、ここで、製品の「生産」は、限定することなく製品のパッケージングまたはラッピングを含む、製品、物体などの変形を含むことができる。図１２は、１つの例示的なプラント２０をさらに詳細に示しており、図１３は、例示的なモデルベース制御システム２に関してさらに詳細に示している。プロデューサ１０は、カスタマジョブ４９を満たすために出力製品５２を実際に生産する１つ以上のプラント２０を管理する。この実施形態では、プロデューサ１０は、ジョブおよび目標５１をモデルベース制御システム２の多目標プランナ３０に提供し、生産システム６は、プラント２０で実施される計画５４をプランナ３０から受け取る。ジョブ５４は、生産ゴールおよび診断ゴールの一方または両方を含むことができる。図１１に示されるように、制御システム２はさらに、プラント２０のモデルを有するプラントモデル５０と、ビリーフモデル４２を有する診断エンジン４０と、上述された目標値探索コンポーネント４３とを含む。診断エンジン４０は、１つ以上の以前に実施された計画５４、プラント２０からの対応する観測５６、およびモデル５０に基づいて、プラントコンディション推定／更新コンポーネント４４（図１３）を介して、現在のプラントコンディション５８を決定および更新する。診断エンジン４０はまた、現在のプラントコンディション５８およびモデル５０に基づいて、１つ以上の可能な計画５４についての予想情報獲得データ７０をプランナ３０に提供する。
【００５６】
目標値探索コンポーネント４３およびその他のコンポーネントを含む、モデルベース制御システム２は、ハードウェア、ソフトウェア、ファームウェア、プログラマブルロジック、またはそれらの組合せとして実施することができ、一体方式または分散方式で実施することができる。可能な一実施では、プランナ３０、診断エンジン４０、探索コンポーネント４３、およびモデル５０は、ソフトウェアコンポーネントであり、１つ以上のプロセッサ、データストア、メモリなどを含む１つ以上のコンピュータなど、１つ以上のハードウェアプラットフォーム上で動作する、コンピュータ実行可能命令およびコンピュータ可読データを含む、１組のサブコンポーネントまたはオブジェクトとして実施することができる。コンポーネント３０、４０、４３、５０およびそれらのサブコンポーネントは、同一コンピュータ上で動作させることができ、または本明細書で説明される機能および動作を提供するために互いに動作可能に結合された２つ以上の処理コンポーネントにおいて分散方式で動作させることができる。同様に、プロデューサ１０は、単一のシステムコンポーネントにおいて、または多数の相互運用可能なコンポーネントにおいて分散方式で、任意の適切なハードウェア、ソフトウェア、ファームウェア、ロジック、またはそれらの組合せで実施することができる。制御システム２は、デバッグおよびテストをより容易にし、最新モジュールを任意の役割に結び付ける能力を促進し、多数のサーバ、コンピュータ、ハードウェアコンポーネントなどへの動作の分散を容易にするために、モジュラソフトウェアコンポーネント（例えば、モデル５０、プランナ３０、診断エンジン４０、および／またはそれらのサブコンポーネント）を使用して実施することができる。
【００５７】
図１１の実施形態は、制御システム２の他のコンポーネントが実施される、コンピュータまたは他のプラットフォームにおいて実施される、任意選択のオペレータインタフェース８も含む。例示的なオペレータインタフェース８は、オペレータ観測５６ａを診断エンジン４０に提供するために、診断エンジン４０に動作可能に結合され、診断エンジン４０は、ある実施ではオペレータ観測５６ａに少なくとも部分的に基づいて、現在のプラントコンディション５８を決定する。さらに、例示的なオペレータインタフェース８は、オペレータが診断ジョブ記述言語８ａを使用して診断ジョブ８ｂを定義することを可能にし、診断エンジン４０は、診断ジョブ６０をプロデューサ１０に提供する。診断エンジン４０は、１つ以上の自己生成診断ジョブ６０および／またはオペレータ定義診断ジョブ８ｂをプロデューサ１０に選択的に提供するように動作し、それを受けて、プロデューサ１０は、ジョブおよび目標５１をプランナ３０に提供する。
【００５８】
また図１２および図１３を参照すると、プランナ３０は、少なくとも１つの出力目標３４（図１３）、およびプロデューサ１０からの到着ジョブ５１によって指示される生産ゴールに基づいて、プラント２０で実施される１つ以上の計画５４を生産システム６に提供する。プランナ３０は、生産目標３４ａおよび診断目標３４ｂを含む計画５４を構成する際に、ジョブおよび目標５１から導き出された１つ以上の出力目標３４を選択的に考慮する。生産目標３４ａは、生産システム６から取得されたジョブおよび目標５１に従って生成され、それらに従って更新され、診断目標３４ｂは、診断エンジン４０によって提供される現在のプラントコンディション５８および予想情報獲得データ７０から導き出され、それらに従って更新される。生産目標３４ａは、生産される製品５２（図１１）の順序のスケジューリングに関係することができ、生産の優先順位、在庫の最小化、ならびに大部分はコストおよびカスタマの必要に起因する他の考慮および制約を含むことができる。生産目標３４ａの例は、所定の製品出力ゴール（単純な生産基準）の達成、ならびに単純な時間効率のよい生産、コスト効率のよい生産、および堅牢な生産など、２次的な考慮の達成に関する、計画構成／生成の優先順位付けを含む。例えば、コスト効率のよい生産目標３４ａは、プロデューサ１０から受け取ったジョブ５１によって指示される生産ゴールを満たす計画のうちで最もコスト効率のよい計画５４の構成／生成をもたらす。診断目標３４ｂは、所定の生産関係タスクを実行し、プラント２０の動作における保守および修理コストを最小化し、間欠的または持続的な障害を引き起こすリソース２１〜２４を識別するためなどの、生成された計画５４における好ましいアクションシーケンスの決定に関する目標を含むことができる。
【００５９】
制御システム２は、１つ以上の生産目標または診断目標３４を容易にするために、プランナ３０によって選択可能なプラント２０で実施される計画５４を保存するために使用される計画データストアまたはデータベース３６を任意選択で含むことができ、本明細書で使用される計画５４の構成／生成は、１つ以上の事前保存された計画５４をデータストア３６から選択することを含むことができる。プランナ３０は、情報獲得の可能性を改善するために、ジョブ待ち行列を選択的に並べ直すことができる。計画データストア３６は、プランナ３０と動作可能に結合される１つ以上の別個のコンポーネントにおいて提供することができ、プランナ３０は、そこから１つ以上の（全体および／または部分）計画５４を取得することができる。代替として、プランナ３０は、所定の生産目標および／または診断目標３４を容易にするために必要とされる状態およびアクションを決定するために、プラントモデル５０と、プロデューサ１０および診断エンジン４０からの情報とを使用して、必要とされる１つ以上の計画５４を合成（例えば、構成または生成）することができる。
【００６０】
プランナ３０は、プラント２０で実施される計画５４を生成し、提供する。計画５４は、ジョブ５１に従って生産ゴールを達成しながら、１つ以上の生産目標および／または診断目標３４を容易にするための一連のアクションを含み、その中には所定のアクションが１回以上出現し得る。アクションは、例えば、図２に示されるように、所定の基板を開始状態から終了状態までモジュラ印刷システム２０の中を配送するために、プラント２０のモデル５０において定義された状態およびリソース２１〜２４に関して取られる。動作中、プランナ３０は、診断目標３４ｂと、診断エンジン４０からの予想情報獲得データ７０とに少なくとも部分的に基づいて、所定の生産ゴールを達成する計画５４を生成または構成する。図示の実施形態におけるプランナ３０は、プラント２０で実施される計画５４を生成する際に、診断エンジン４０からの現在のプラントコンディション５８を評価するゴールベース計画構成コンポーネント３２を含む。コンポーネント３２は、観測５６と、システム障害の原因であることが疑われる１つ以上のプラントコンポーネント２１〜２４を指示する現在のプラントコンディション５８とに基づいて、計画５４を構成する際に障害コンポーネント２１〜２４またはそれらの組の識別を容易にすることもできる。
【００６１】
また図１４を参照すると、システムは、生産計画１０２および診断計画１０４の両方を含む計画空間１００内における、プラント２０で実施される計画５４を生成する。計画集合１０２および１０４の合併は、（例えば、図３の１つ以上の診断目標３４ｂを容易にすることができる）診断値を有する生産計画１０６を含み、プランナ３０は、診断目標３４ｂに従って有用な診断情報を取得しながら生産ゴールを達成する計画１０６を優先的に構成するために、診断エンジン４０からの情報を有利に利用する。
【００６２】
診断エンジン４０は、プラント２０の現在の状態を表すビリーフモデル４２と、以前の計画５４および対応するプラント観測５６に基づいてプラント２０の現在のコンディションをプランナ３０に提供するコンポーネント４４とを含む。コンポーネント４４はまた、プラント観測５６、プラントモデル５０、および以前に実施された計画５４に従って、ビリーフモデル４２のプラントコンディションを推定し、更新する。インタフェース８からのオペレータ観測５６ａも、コンポーネント４４による現在のプラントコンディションの推定および更新を補足するために使用することができる。推定／更新コンポーネント４４は、プラント２０（図１１）の１つ以上のリソース２１〜２４または他のコンポーネントの確認されたまたは疑わしいコンディションについてプランナ３０に通知するために、コンディション情報５８を提供する。このコンディション情報５８は、所定の生産ジョブまたはゴール５１を実施するための計画５４を提供する際に、生産目標３４ａおよび診断目標３４ｂに鑑みて、プラントモデル５０からのプラント２０についての情報と一緒に、計画構成コンポーネント３２によって検討することができる。診断エンジン４０は、モデル５０およびビリーフモデル４２に基づいて、予想情報獲得データ７０をプランナ３０に提供するコンポーネント４６も含む。予想情報獲得データ７０は、オペレータインタフェース８からのオペレータ定義診断ジョブ８ｂに鑑みて、任意選択で決定することができる。
【００６３】
図１の開始グラフ５０２は、診断エンジン４０のビリーフモデル４２を構成し、またはビリーフモデル４２内に含まれ、複数のノード５１０は、生産プラント２０の状態を表し、複数のエッジ５１２は、プラント状態を１つのグラフノード５１０から別のグラフノードに遷移させるための、１つ以上のプラントリソース２１〜２４によるアクションを表す。この実施形態では、各エッジ５１２は、０以上１以下の値を有するアクションに関連する失敗確率を定義する、少なくとも１つ正の有向加重値を含む。診断エンジン４０の目標値探索コンポーネント４３は、最良優先探索を実行して、非ゼロ目標値Ｔに最も近い失敗確率値を有する所定の生産ゴールを達成するための少なくとも１つの生産計画５４を識別するために上述のように動作し、一実施では、システムの動作における診断ゴールに関して予想情報獲得を最適化するために、非ゼロ目標値Ｔは、好ましくは０．５である。
【００６４】
図１２は、生産システム６における例示的なモジュラ印刷システムプラント２０をさらに詳細に示しており、モジュラ印刷システムプラント２０は、２つの供給源２１ａ、２１ｂの一方から印刷可能なシート基板を提供する材料供給コンポーネント２１と、複数の印刷またはマーキングエンジン２２と、出力仕上げステーション２３と、（図１２では点線の円で示される）複数の双方向基板輸送／配送コンポーネント２４を含むモジュラ基板輸送システムと、輸送システム２４と仕上げ２３の間に配置される１つ以上の出力センサ２６と、プラント２０の様々なアクチュエータリソース２１〜２４を動作させるための制御信号を提供するコントローラ２８とを含む。例示的な印刷システムプラント２０は、４つの印刷エンジン２２ａ、２２ｂ、２２ｃ、２２ｄを含むが、そのようなマーキングエンジンはいくつ含まれてもよく、また印刷システムプラント２０はさらに、個々の基板シートを供給２１から（双方向両面印刷のために反転されるまたは反転されない）１つ以上のマーキングエンジン２２を介して最終的に所定の印刷ジョブが出力製品５２として提供される出力仕上げステーション２３まで輸送するために、３つの双方向基板輸送経路２５ａ、２５ｂ、２５ｃを有する多経路輸送ハイウェイを、コントローラ２８からの適切な配送信号によって動作可能な輸送コンポーネント２４に提供する。さらに、印刷エンジン２２の各々は、ローカル双方向配送および媒体反転を個別に提供することができ、またコントローラ２８からの信号を介して動作可能な単色または多色印刷エンジンとすることができる。モデルベース制御システム２は、ある実施形態では、プラントコントローラ２８に組み込むことができる。
【００６５】
ここで図１１〜図１３を参照すると、動作中、プランナ３０は、例えば、計画を形成するための一連のアクションの区分的（ｐｉｅｃｅ−ｗｉｓｅ）決定によって、ならびに／または１つ以上の生産目標３４ａおよび診断目標３４ｂに鑑みて到着ジョブ５１から導き出される出力生産ゴールの記述に基づいて、印刷システムプラント２０のコンポーネントリソース２１〜２４のための全体もしくは部分計画５４をデータストア３６から取得することによって、計画５４を自動的に生成する。特に、所望の製品５２を生産するために２つ以上の可能な計画５４が使用できる場合など、どのように出力ゴールを達成できるか（例えば、どのように所望の製品５２を作成し、変形し、パッケージし、ラップできるかなど）について、プラント２０が柔軟性を有する場合、診断エンジン４０は、最も情報提供的な観測５６をもたらすことが期待される計画５４を生成するために、プランナ３０の計画構成動作を変更すること、または計画構成動作に影響を及ぼすことができる。構成された計画５４は、この点に関して、（例えば、ジョブ時間の増加、または僅かな品質の低下など）短期生産目標３４ａを損なう計画をもたらすこともあり、またはもたらさないこともあるが、それにも関わらず、システムが学習するために、生産を停止させる必要はない。構成された計画５４の実施から獲得される付加的情報は、障害コンポーネントリソース２１〜２４に対処するため、効果的な修理／保守をスケジュールするため、および／またはシステム状態をさらに診断するため（例えば、あるシステムリソース２１〜２４をセンサ２６によって以前に検出された障害の発生源として確認もしくは除外するため）、プロデューサ１０によって、ならびに／またはプランナ３０および診断エンジン４０によって使用することができる。このようにして、構成された計画５４から収集された情報（例えば、プラント観測５６）は、現在のビリーフモデル４２の正確性をさらに改善するために、推定および更新コンポーネント４４によって使用することができる。
【００６６】
さらに、プラント２０が限定されたセンシング能力しか含まない場合（例えば、印刷エンジン２２の下流の輸送システム２４の出力にのみセンサ２６を有する図１２のシステムなど）、パッシブ診断は、システム２０で起こり得るすべての障害を曖昧さなしに識別することができず、それに対して、ダイレクト診断法の試みは、システム休止時間と、生産性の観点からそれに関連するコストをもたらす。他方、本開示の制御システム２は、プラントコンディション５８および／または予想情報獲得７０に従って拡張診断情報を提供する計画５４の構成および実施を介した、インテリジェントオンライン診断の選択的な利用を有利に容易にし、少なくとも１つの診断目標３４ｂおよびプラントコンディション５８に基づいた、プラント２０で実施される１つ以上の専用診断計画５４の生成をさらに有利に容易にすることができ、専用診断計画５４および生産計画５４は、現在のプラントコンディション５８に従い、生産目標および診断目標３４に基づいて、インテリジェントに交互実施される。特に、計画から獲得された情報７０が、将来における生産性の著しい増大、障害リソース２１〜２４を識別する能力の増強、または他の長期生産性目標３４ａおよび／もしくは診断目標３４ｂをもたらすことが予想される場合、プランナ３０は、生産停止を伴うエクスプリシット診断計画５４の実施を引き起こすことができる。
【００６７】
さらに、専用診断計画５４を利用しなくても、制御システム２は、生産の最中に本開示のパーベイシブ診断態様によってオンラインで行うことができる診断の範囲を著しく（例えば、システムの純粋にパッシブな診断能力を超えて）拡大し、それによって、停止時間、サービス来訪（ｓｅｒｖｉｃｅ  ｖｉｓｉｔ）の数、および実際にはセンサによる完全なカバーを必要とせず動作するシステム２０内のコンポーネント２１〜２４の不要な取替えコストを軽減することによって、診断情報の全体的コストを低下させる。プランナ３０はさらに、プラント２０で実施される計画５４を生成する際に、生産目標３４ａと診断目標３４ｂの間でトレードオフを行う場合、現在のプラントコンディション５８を使用するように動作し、プラント２０の障害リソース２１〜２４を分離するにあたって診断を実行する場合、コンディション５８を考慮することもできる。
【００６８】
診断エンジン４０のプラントコンディション推定および更新コンポーネント４４は、限定されたセンサ２６から取り出された観測５６の形の情報から少なくとも部分的に、プラント２０の内部コンポーネント２１〜２４のコンディションを推論し、一実施形態では、診断エンジン４０は、プラント２０の個々のリソース２１〜２４またはコンポーネントのコンディション（例えば、正常、消耗、故障）および現在の動作状態（例えば、オン、オフ、使用中、空きなど）の両方を表すプラントコンディション５８を構成し、ビリーフモデル４２は、リソースまたはコンポーネント２１〜２４のコンディションおよび／または状態の信頼性を表すために、しかるべく更新することができる。プロデューサ１０が１つ以上の計画５４の生産を開始すると、診断エンジン４０は、実施計画５４および対応する観測５６のコピーを（任意のオペレータ入力観測５６ａとともに）受け取る。コンディション推定および更新コンポーネント４４は、内部コンポーネント／リソース２１〜２４のコンディション５８を推論および推定するために、プラントモデル５０とともに観測５６、５６ａを使用し、ビリーフモデル４２をしかるべく更新する。推論されたプラントコンディション情報５８は、障害中であることが知られている（もしくは高い確率で信じられる）１つ以上のリソース／コンポーネント２１〜２４の使用を回避する計画５４を選択的に構成することなどによって、システム２０の生産性を直接的に改善するために、プランナ３０によって使用され、および／またはプロデューサ１０は、障害リソース２１〜２４のそのような回避を達成するようにジョブ５１をスケジュールする際に、コンディション情報５８を利用することができる。例示的な診断エンジン４０は、多数の冗長コンポーネント２１〜２４に利用負荷を拡散させて、耐久性（ｗｅａｒ）さえ生み出し、または他の長期目標３４を容易にするために、プランナ３０によって使用され得る、診断目標３４ｂを更新するための将来の予測情報も提供する。
【００６９】
さらに、将来の生産性を向上させるため、診断エンジン４０は、様々な可能な生産計画５４の予想情報獲得に関するデータ７０をプランナ３０に提供する。プランナ３０は、それを受けて、最も診断的な（例えば、診断値が最も高い情報をもたらす可能性が最も高い）生産計画５４を構成するために、このデータ７０を使用することができる。このようにして、プランナ３０は、生産中の情報を増大させるために慎重に生成または変更された生産計画５４を使用する（例えば、「診断的」生産計画を使用する）ことによって、アクティブ診断法またはアクティブ監視を実施することができる。一実施では、プロデューサ１０は、要求されたカスタマジョブ４９および診断ジョブ６０を並べたジョブ待ち行列を操作することができ、プロデューサ１０は、コンポーネントコンディション更新５８を診断エンジン４０から受け取る。プロデューサ１０は、カスタマジョブ４９と診断ジョブ６０の間で選択を行うため、生産計画５４において生産効率と診断値とをトレードオフするため、また互いに互換性がある場合、カスタマジョブ４９と専用診断ジョブ６０を合併（例えば交互実施）するためにコンディション５８を使用し、ジョブを合併する場合、それらのスケジューリングは、１つ以上の診断目標および生産目標３４を容易にすることができる。診断エンジン４０は、ある基準に関する計画５４の質の向上を助けるために、予測情報もプランナ３０に提供することができる。
【００７０】
また図１５を参照すると、１つ以上の生産ゴールを達成ために、複数のリソース２１〜２４を有するプラント２０を備えた生産システム６で実施される計画５４を構成するための、例示的な方法２００が示されている。２０２において、診断目標３４ｂが受け取られ、２０４において、プラントモデル５０を使用して、以前に実施された計画５４と、プラント２０からの少なくとも１つの対応する観測５６とに少なくとも部分的に基づいて、現在のプラントコンディション５８が決定される。２０６において、現在のプラントコンディション５８と、モデル５０とに基づいて、予想情報獲得データ７０が決定される。プランナ３０は、２０８において、プラントコンディション５８を診断エンジン４０から受け取り、２１０において、生産ジョブおよび目標５１をプロデューサ１０から受け取る。２１２において、プランナ３０は、診断目標３４ｂと、予想情報獲得データ７０とに少なくとも部分的に基づいて、計画５４を構成する。２１４において、プランナ３０は、構成された計画５４を実施のためにプラント２０に送り、２１６において、診断エンジン４０は、計画５４およびプラント観測５６を受け取る。２１８において、診断エンジン４０は、プラントコンディション５８を更新し、また予想情報獲得データ７０を更新し、その後で、さらなるジョブおよび目標５１が提供され、プロセス２００は、２１０から再び上述のように継続される。
【００７１】
２１２における計画構成は、現在のプラントコンディション５８に少なくとも部分的に基づくことができ、現在のプラントコンディション５８に少なくとも部分的に基づいて、生産目標３４ａと診断目標３４ｂの間でトレードオフを行うことを含むことができる。さらに、２１２における計画構成は、現在のプラントコンディション５８に少なくとも部分的に基づいて、プラント２０内の障害リソース２１〜２４を分離するために、予測を実行することを含むことができる。プラント２０で実施される専用診断計画５４は、少なくとも１つの診断目標３４ｂと、診断ジョブ６０、８ｂと、現在のプラントコンディション５８とに少なくとも部分的に基づいて、構成することができ、計画構成は、少なくとも１つの生産目標３４ａと、少なくとも１つの診断目標３４ｂとに基づいて、専用診断および生産計画５４の選択的な交互実施を提供することができる。方法２００はまた、オペレータが診断ジョブ記述言語８ａを使用して診断ジョブ８ｂを定義することを可能にすることと、オペレータ観測５６ａを受け取ることとを含むことができ、２１６における計画選択／生成は、オペレータ観測５６ａに少なくとも部分的に基づいている。
【００７２】
ここで図１６および図１７を参照すると、一実施形態では、診断生産計画５４を構成する際に、ヒューリスティック探索が、プランナ３０によって利用される。図１６は、Ａ＊探索を使用して、プラント２０で実施される計画を評価および構成するための例示的な方法３００を示している。一実施形態では、コンポーネント４４が、プラントコンディションについてビリーフモデル４２内のビリーフを確立および更新し、またプラントモデル５０を更新する。コンポーネント４４は、図１６の３０２において、プラント２０における各障害仮説について失敗または障害確率を導き出し、３０４において、ビリーフモデル４２と現在のプラントコンディション５８とに基づいて、上界および下界計画失敗確率ヒューリスティック（ｕｐｐｅｒ  ａｎｄ  ｌｏｗｅｒ  ｐｌａｎ  ｆａｉｌｕｒｅ  ｐｒｏｂａｂｉｌｉｔｙ  ｂｏｕｎｄｉｎｇ  ｈｅｕｒｉｓｔｉｃ）を生成するために、動的プログラミングを利用する。３０６において、プランナ３０は、好ましくはＡ＊探索手法を使用して、最も情報提供的な計画５４を構成するために、ヒューリスティックを使用して部分計画５４を評価する。その後、３０８において、診断エンジン４０は、構成された計画５４と、プラント２０における構成された計画５４の実施から取得された出力観測５６とを使用して、ビリーフモデル４２を更新する。
【００７３】
診断エンジン４０は、システム２０の診断にとって価値ある情報を取り出すために、プランナ３０による探索に入力を有利に提供する。単一持続的障害のための診断値に関して最良の計画５４は、成功または失敗について等しい確率を有する計画である。診断エンジン４０は、プラント２０で実施される計画５４を構成するために部分計画５４を評価する際に、この概念を使用して、プランナ３０による探索を導くためのヒューリスティックを開発する。加えて、計画構成探索は、探索パフォーマンスを改善するために、刈り込み技法を利用することができる。制御システム２は、プランナ３０における効率的なヒューリスティックターゲット探索を使用して、診断エンジン４０におけるモデルベースの確率的推論と、所定の計画５４の実施に関連する情報獲得の分解（ｄｅｃｏｍｐｏｓｉｔｉｏｎ  ｏｆ  ｉｎｆｏｒｍａｔｉｏｎ  ｇａｉｎ）との組合せを通して、プラント２０を制御する際に、効率的なオンラインアクティブまたはパーベイシブ診断を実施する。このアクティブ診断技法では、制御されるシステムプラント２０から取得される診断情報の量および／または品質を最大化または増大させるために、計画５４の形の特定の入力または制御アクションが、診断エンジン４０の助けを借りて、プランナ３０によって構成される。情報生産（アクティブまたはパーベイシブ診断）技法は、生産ゴールを達成する部分計画の組を、潜在的な情報獲得によって構成プロセスにおける任意の所定のポイントにランク付け、プランナ３０は、他の可能な生産目標３４ａおよび診断目標３４ｂに鑑みて、その点に関して最も有望な戦略を選択的に生成するように動作する。
【００７４】
プランナ３０は、計画構成を支援するためのパーベイシブ診断を使用して、基板シートをシステム２０を通して移動させて、所定の印刷ジョブについて要求された出力を生成する（例えば、生産ゴールを満たす）、アクションの列（計画５４）を構成するように動作する。このシステム２０における１つの特定の生産目標３４ａは、印刷エンジン２２のいくつかが故障を起こし、または用紙処理モジュール２４のいくつかが故障もしくは紙詰まりを起こしたとしても、印刷を継続することである。この印刷システム２０では、仕上げ２３の手前に出力タイプセンサ２６が存在するだけであり、結果として、多くのアクションから成る計画５４は、有益な観測５６が行われ得る前に実施されなければならない。診断エンジン４０は、実施された計画５４および観測５６に一致するように、そのビリーフモデル４２および現在のコンディション５８を更新する。診断エンジン４０は、更新されたコンディション情報５８および予想情報獲得データ７０をプランナ３０に転送する。
【００７５】
例示的なプランナ３０では、計画５４を見出し、構成するために、探索アルゴリズムを利用することができる。モデル５０は、プラントシステム２０を、プラント２０が対応できるすべての可能なアクションＡを有する状態機械として記述する。アクションは、システム状態に関する事前条件および事後条件によって定義される。そのため、アクションは、実行可能であるために、ある状態にあることをシステム２０に要求し、実行された場合、システム状態を変更する。システム２０は、可能なアクションの集合
2010020771.tif 000080
から取り出された一連のアクション
2010020771.tif 000081
から成る計画ｐ（５４）によって制御される。アクションの実行は、システム状態を変化させる可能性があり、アクションが生産計画５４の部分である場合は特に、システム状態の部分は、任意の所与の時間における製品５２の状態を表すことができる。さらに、システム２０の内部制約が、計画５４の集合を、すべての可能な列の部分集合（例えば、上述の図１４の計画空間１００）に制限する。さらに、システム２０における所定の計画ｐについてのアクションの実行は、ただ１つの観測可能な計画結果または観測Ｏ（例えば、センサ２６からの観測５６）をもたらすことができる。
【００７６】
観測結果５６の１つのタイプは、異常として定義されて、
2010020771.tif 000082
と表記され、その場合、計画５４はその生産ゴールの達成に失敗する。別のタイプは、正常（非異常）結果であって、
2010020771.tif 000083
と表記され、その場合、計画５４は関連する生産ゴールを達成する。例示的な制御システム２では、プラント２０についての情報は、ビリーフモデル４２内に構成された、様々な可能な仮説についての診断エンジンのビリーフによって表すことができ、そのような仮説
2010020771.tif 000084
は、例えば、
2010020771.tif 000085
のような、システムアクションの各々に対する異常または正常の割り当てである。単一のプラントリソース／コンポーネントにおける障害の事例（単一障害事例）では、正確に１つのアクションが異常となる。すべてのアクションが正常である状況のための１つの仮説（「障害なし」仮説ｈ０）を除外した仮説の集合として
2010020771.tif 000086
を定義すると、すべての仮説は、各アクションへの異常性の割り当ての全体であり、すべては一意的で、相互に排他的（例えば、∀ｈｉ，ｈｊ∈  Ｈｓｙｓ，ｈｉ≠ｈｊ）である。ビリーフモデル４２内のシステムのビリーフは、仮説空間Ｈｓｙｓ上の確率分布Ｐｒ（Ｈ）として表すことができ、ビリーフモデル４２は、観測Ｏと計画Ｐが与えられた場合に未知の仮説Ｈに関する事後分布を取得するために、ベイズの公式Ｐｒ（Ｈ｜Ｏ，Ｐ）＝αＰｒ（Ｏ｜Ｈ，Ｐ）Ｐｒ（Ｈ）を使用して、過去の観測５６から、診断エンジン４０によって更新される。
【００７７】
計画ｐは、診断エンジンのビリーフ４２に情報を与える（例えば、その不確実性を低下させる）場合、診断エンジン４０およびプランナ３０によって、情報提供的と見なされ、情報値は、システムビリーフＰｒ（Ｈ）と実施された計画に左右される計画結果Ｉ（Ｈ；Ｏ｜Ｐ＝ｐ）の間の相互情報として測定することができる。この相互情報は、確率分布によって暗示されるエントロピまたは不確実性の観点から定義することができ、一様確率分布は高い不確実性を有し、決定論的分布は低い不確実性を有する。診断的な情報値の文脈では、情報提供的な計画５４は、システムのビリーフ４２の不確実性を低下させ、したがって、予測が困難な結果を有する計画５４は、最も情報提供的であり、一方、成功することが分かっている（または失敗することが分かっている）計画５４の実施は、診断的な情報獲得をもたらさない。この点に関して、予想情報値に関して計画５４を格付けするために、最適な（例えば「ターゲット」）不確実性Ｔを使用することができ、それによって、診断エンジン４０は、計画５４をしかるべく評価することができ、計画選択／生成に影響を与えて、情報提供的な計画５４を優先的に選択／生成するために、予想情報獲得データ７０をプランナ３０に提供することができる。
【００７８】
持続的な単一障害の場合、結果についての最適な不確実性として、Ｔ＝０．５という値を使用することができ、間欠的障害の場合の不確実性は、例示的な一実施では、約０．３６≦Ｔ≦０．５の範囲内で最大化させることができる。所定量の不確実性Ｔを有する計画５４を見出す際、診断エンジン４０は、所与の計画ｐ＝［ａ１，ａ２，．．．，ａｎ］に関連する不確実性を予測するように動作し、計画内の一意的なアクションの集合は、Ａｐ＝Ｕｉ｛ａｉ∈ｐ｝である。失敗が観測されたと仮定すると、以下の式（１）に示されるように、１つ以上のアクションが異常である場合に、計画５４は異常ａｂ（ｐ）となる。
【００７９】
（１）
2010020771.tif 000087
ここで、ａｉ∈Ａｐであり、ｐは計画である。異常である計画５４のアクションの予測確率は、すべての関連する仮説に割り当てられた確率の関数であり、計画ｐの結果の不確実性に影響を与える仮説の集合は、Ｈｐで表され、以下の式（２）で定義される。
【００８０】
（２）
2010020771.tif 000088
【００８１】
仮説に関する分布と、所定の計画ｐの説明的な仮説の集合Ｈｐが与えられると、計画ｐが失敗する確率を計算することが可能である。すべての仮説ｈ∈Ｈｐは、計画ｐ内のものでもある少なくとも１つの異常アクションを含むので、仮設ｈが真であることは、ａｂ（ｐ）を含意する。
【００８２】
（３）
2010020771.tif 000089
【００８３】
仮説は定義により相互に排他的であるので、計画失敗確率Ｐｒ（ａｂ（ｐ））は、以下の式（４）のように、計画が失敗することを含意する仮説のすべての確率の総和として定義することができる。
【００８４】
（４）
2010020771.tif 000090
【００８５】
情報提供的でもありながら、生産ゴールを達成する計画を見出すため、プランナ３０は、確率Ｔの観点から計画５４を評価し、これと現在のプラントコンディション５８を使用して、正の失敗確率を有しながら、生産ゴールを達成する計画５４を優先的に構成する。短期的には、これはシステム２０の生産性をより低下させる可能性があるが、獲得した情報が、長期的な生産性の向上を可能にする。さらに、プランナ３０は、個々には最も情報提供的でなくても、一緒にすれば最も情報提供的となり得る、プラント２０で実施される一連の計画５４を構成することができる。
【００８６】
上述したように、本開示の範囲内においては、有用な診断情報をもたらしながら、所定の生産ゴールを達成する適切な計画から区分的選択／生成を行うプランナ３０において、任意の形態の探索が利用できる。すべての可能なアクション列を生成するために、単純な力づく探索が利用でき、以下の式（５）のように、情報提供的でありながら、生産ゴールを達成する計画５４をもたらすために、結果リストをフィルタリングすることができる。
【００８７】
（５）
2010020771.tif 000091
【００８８】
しかし、計画空間Ｐが非常に大きい場合、リアルタイム制御アプリケーションでは、これは非現実的なこともある。例示的なシステム２で利用される別の可能な手法は、初期状態Ｉから中間状態Ｓ１，Ｓ２，．．．，Ｓｎに進む部分計画の集合
2010020771.tif 000092
を使用するＡ＊ターゲット探索を利用することなどによって、構造を共用する計画５４の集合またはファミリをプランナ３０がそれによって考えるヒューリスティックを、診断エンジン４０が確立することである。この手法では、ステップ毎に、プランナ３０は、最良の（例えば、最も情報提供的な）方法で生産ゴールを達成する可能性が最も高くなるよう計画の拡張を試みるために、Ａ＊ターゲット探索を使用する。この点に関して理想的な計画ｐは、システム２０を状態Ｓｎにするプレフィックス（ｐｒｅｆｉｘ）
2010020771.tif 000093
で開始し、状態Ｓｎからゴール状態Ｇに到るサフィックス（ｓｕｆｆｉｘ）計画
2010020771.tif 000094
を続行する。このＡ＊技法は、診断エンジン４０によって提供されるヒューリスティック関数ｆ（Ｓｎ）を使用して拡張するために、部分計画
2010020771.tif 000095
を選択し、ヒューリスティック関数ｆ（Ｓｎ）は、以下の式（６）によって、計画プレフィックス
2010020771.tif 000096
の品質（ｇ（Ｓｎ）と書かれる）に、サフィックス
2010020771.tif 000097
の予測品質（ｈ（Ｓｎ）と書かれる）を加算したものとして全経路品質を推定する。
【００８９】
（６）
2010020771.tif 000098
【００９０】
ヒューリスティック関数ｆ（Ｓｎ）が全計画の真の品質を決して過大に推定しない場合、ヒューリスティックｆ（Ｓｎ）は、容認可能であると言われ、プランナ３０によるＡ＊ターゲット探索は、最適な計画５４を返すべきである。この点に関して、過少な推定は、不確実性にも関わらず、Ａ＊探索手法を最適なものにし、それによって、品質が高いことが知られている完全な計画にかかわる前に、不確実な計画が探索されることを保証する。結果として、ヒューリスティック関数がより正確になるほど、Ａ＊ターゲット探索は、高度に情報提供的な計画５４により多くの焦点をおく。したがって、示された実施形態では、プランナ３０は、プラントモデル５０におけるシステムアーキテクチャおよびダイナミクスの記述に少なくとも部分的に基づいて、診断エンジン４０によって導き出されたヒューリスティック関数を利用する。
【００９１】
図１７は、プラント２０においてシステム状態を開始状態Ｓからゴール状態Ｇまで遷移させるための可能な計画を表す、例示的な状態／アクション図４００を示している。システム状態ノード４０２は、開始状態Ｓ  ４０２ｓ、ゴール状態Ｇ  ４０２ｇ、およびノードＡ〜Ｄにそれぞれ対応する４つの中間状態４０２ａ〜４０２ｄを含む。この例のための所定の計画５４は、最終的にゴールＧ  ４０２ｇに到達する図４００の以下のアクション４０４によって進行する。そのような生産ゴールを満たす１つの可能な計画５４は、図１７に示されるように、アクション４０４ｓａ、４０４ａｃ、および４０４ｃｇを通る状態列［Ｓ，Ａ，Ｃ，Ｇ］によってシステムを動かす。説明目的で、この計画５４が、システムリソース２１〜２４の１つにおける単一持続的障害に起因する、ノードＡとノードＣの間の障害アクション４０４ａｃ（アクションａＡ，Ｃ）によって引き起こされる異常結果をもたらすと仮定すると、診断エンジン４０は、計画５４および結果の障害観測５６から、計画経路沿いのアクション４０４ｓａ、４０４ａｃ、および４０４ｃｇのすべては、（さらなる情報なしに）障害を起こしていることが疑われると決定する。単一持続的障害が仮定されるので、疑わしいアクション｛｛ａＳ，Ａ｝，｛ａＡ，Ｃ｝，｛ａＣ，Ｇ｝｝に対応する３つの正の確率の仮説が存在する。付加的な情報が存在しない場合、診断エンジン４０は最初、３つの疑わしいアクションに等しい確率｛１／３｝、｛１／３｝、｛１／３｝を割り当てる。
【００９２】
診断エンジン４０は、この例では、図１７において右から左にヒューリスティックを構築することによって、任意の計画サフィックスによって計画に与えることができる、不確実性のヒューリスティック境界を構成するために、グラフ構造および確率推定を使用する。特に、例示的な診断エンジン４０は、図１７に示されるように、下界および上界［Ｌ，Ｕ］をノード４０２に割り当て、一実施では、これらの境界値は、プランナ３０に送られる。説明的な一例として、図１３において状態Ｄからゴール状態Ｇに到るアクションａＤ，Ｇは、失敗した観測された計画５４の部分ではなく、したがって、候補仮説ではなく、このアクションは、仮定された単一持続的システム障害の発生源であることに関してゼロ確率を有する。結果として、任意のプレフィックス計画５４を延長して、アクションａＤ，Ｇを有する状態Ｄで終わらせても、アクションａＤ，Ｇは異常であることに関してゼロ確率を有するので、延長された計画５４の失敗確率は増加しない。この例では、ＤからＧへの他の可能な計画５４は存在しないので、状態Ｄで終わる任意の計画の上界および下界はともにゼロであり、したがって、図７では、ノードＤは、［０，０］とラベル付けされる。状態Ｂを通過する計画５４は、疑わしいアクション４０４を使用せず、ゼロ下界を有する状態Ｄで終わる、アクションａＢ，Ｄ  ４０４ｂｄによって完成することができるので、状態Ｂ  ４０２ｂも同様に、ゼロの下界を有する。状態Ｂは、状態Ｃ  ４０２ｃに到る疑わしくないアクションａＢ，Ｃ  ４０４ｂｃによって完成することができ、状態Ｃ  ４０２ｃは、異常であることに関して１／３の確率を有する上界および下界の両方を有するので、この例の状態Ｂは、１／３の上界を有する。診断エンジン４０は、サフィックスサブ計画が異常である確率の境界を決定するために、この解析を再帰的に継続し、これらを情報獲得データ７０の部分としてプランナ３０に送る。
【００９３】
プランナ３０は、ターゲット確率Ｔを達成する、またはそれに最もよく接近する計画５４を識別し、構成するために、これらの境界を前方Ａ＊ターゲット探索とともに使用する。１つの可能な計画５４は、開始ノードＳ  ４０２ｓから開始し、異常であることが観測された計画５４の部分である第１のアクションａＳ，Ａを含む。アクションａＳ，Ａ  ４０４ｓａが部分計画に追加される場合、それ自体が候補であるので、それは失敗の可能性に１／３の確率を追加しなければならない。ａＳ，Ａの後、システム２０は状態Ａにあり、計画５４は、ゴール状態Ｇ  ４０２ｇに到達するためにアクション４０４ａｄおよび４０４ｄｇを含むことによって、Ｄを経由して完成することができる。アクションａＡ，Ｄ自体は、以前に観測された障害のある計画に含まれないので、異常であることに関してゼロ確率を有する。したがって、ヒューリスティック境界を使用することで、状態ノードＤ  ４０２ｄを経由する完成は、異常であることに関してゼロ確率を追加する。ノードＡ  ４０２ａから、計画５４は、代替として、最初に観測された計画５４でのように、ノードＣを経由して完成することができる。対応するアクションａＡ，Ｃ  ４０４ａｃは、１／３の失敗確率をそのような計画に追加し、ヒューリスティック境界に基づいて、ノードＣ  ４０２ｃを経由する完成は、異常であることに関して別の１／３の確率を追加しなければならない。
【００９４】
ヒューリスティックは、システム２０を状態ノード列［Ｓ，Ａ，Ｃ，Ｇ］または［Ｓ，Ａ，Ｄ，Ｇ］を経由して動かす可能な計画５４についての全計画異常性確率の予測を可能にする。全計画の下界は、ａＳ，Ａからの１／３と完成ａＡ，Ｄ、ａＤ，Ｇからの０との和によって決定される１／３であり、上界は、ａＳ，Ａからの１／３とａＡ，Ｃ、ａＣ，Ｇの各々からの１／３との和に等しい３／３である。この計画が［ａＡ，Ｃ，ａＣ，Ｇ］経由で計算される場合、確率１となって、全計画５４は失敗し、したがって、そのような計画完成を構成することからは何も学べない。代わりに、計画５４がサフィックス［ａＡ，Ｄ，ａＤ，Ｇ］経由で完成される場合、全計画の失敗確率は１／３であり、それは最適な情報提供的確率Ｔ＝０．５により近い。この場合、プランナ３０は、プラント２０で実施される計画５４［Ｓ，Ａ，Ｄ，Ｇ］を構成する。計画５４は、成功しても、または成功しなくてもよく、いずれの場合でも、診断的な観点から何かを学ぶことができる。例えば、計画［Ｓ，Ａ，Ｄ，Ｇ］が失敗した場合、診断エンジン４０は、（単一持続的障害のシナリオを仮定した場合）アクションａＳ，Ａが失敗アクションであったことを学び、計画５４が成功した場合、エンジン４０は、アクション４０４ｓａを障害容疑ありとして排除することによって、ビリーフモデル４２をさらに改良することができる。
【００９５】
境界の間に任意の所与の値の計画５４が存在することの保証はないことに留意されたい。診断エンジン４０は、すべてのゴール状態から開始してヒューリスティック境界を再帰的に計算し、ゴール状態は空集合のサフィックス計画
2010020771.tif 000099
＝φを有し、したがって、ＬＧ＝０の設定下界と、ＵＧ＝０の設定上界を有する。新しい各状態Ｓｍについて、診断エンジン４０は、すべての可能な後続状態ＳＵＣ（Ｓｍ）の境界と、Ｓｍと後続状態Ｓｎの間の接続アクションａＳｍ，Ｓｎの失敗確率とに少なくとも部分的に基づいて、対応する境界を計算する。状態Ｓｍの後続状態Ｓｎは、状態Ｓｍから開始する単一ステップで到達し得る任意の状態である。単一障害が仮定される場合、アクション
2010020771.tif 000100
を連結することによって計画
2010020771.tif 000101
に追加される失敗確率は、
2010020771.tif 000102
である場合、計画
2010020771.tif 000103
から独立である。診断エンジン４０は、Ｓｍをその直接の後続状態に連結するアクション確率と、これらの後続状態の下界によって、Ｓｍの下界を決定し、診断エンジン４０は、ＬＳｍ＝ｍｉｎＳｎ∈ＳＵＣ（Ｓｍ）［Ｐｒ（ａｂ（ａＳｍ，Ｓｎ））＋ＬＳｎ］と類似した方法であるＵＳｍ＝ｍａｘＳｎ∈ＳＵＣ（Ｓｍ）［Ｐｒ（ａｂ（ａＳｍ，Ｓｎ））＋ＵＳｎ］で上界を計算する。
【００９６】
プランナ３０による情報提供的生産計画の探索は、初期開始状態Ｓ  ４０２ｓから開始し、ゴール状態４０２ｇへと順方向に再帰的に作業する。初期状態Ｓで開始する空計画の異常性確率は、ゼロと最良完成の和である。プランナ３０は、現在の状態までの計画確率と最良完成ルートの異常性確率の和として異常性確率を計算する。プランナ３０は最初は完成について確信がないので、異常性の確率は、下界および上界と、その間の値を含む区間である。結果として、全異常性確率も、以下の式（７）で示される区間である。
【００９７】
（７）  Ｉ（ｐＩ→Ｓｎ）＝［Ｐｒ（ａｂ（ｐＩ→Ｓｎ））＋ＬＳｎ，Ｐｒ（ａｂ（ｐＩ→Ｓｎ））＋ＵＳｎ）］
【００９８】
最も情報提供的な計画５４は、全失敗確率がＴである計画であり、持続的な単一障害が仮定される好ましい実施では、Ｔ＝０．５である。計画の全異常性確率に関する境界を表す区間
2010020771.tif 000104
が与えられた場合、したがって、プランナ３０は、以下の式（８）に従って、異常性確率がＴにどれだけ近いかを表す区間を構成することができる。
【００９９】
（８）
2010020771.tif 000105
【０１００】
式（８）のこの絶対値は、Ｔの周りの範囲を折り畳んでおり、計画５４の推定全異常性確率がターゲット確率Ｔを跨ぐ場合、区間
2010020771.tif 000106
はゼロを跨ぎ、区間はゼロから
2010020771.tif 000107
の絶対最大値にわたる。例示的なプランナ３０は、予想情報獲得データ７０の部分として、診断エンジン４０によって提供される探索ヒューリスティック
2010020771.tif 000108
を使用するが、ターゲット探索が相対的に高い情報値を有する計画５４を構成することを可能にする他のヒューリスティックも、開示の範囲内で企図されている。例示的な関数Ｆは、いくつかの有利な特性を有する。例えば、予測全計画異常性確率がＬとＵの間に存在する場合、Ｆはゼロである。また、異常性確率が正確にターゲット確率Ｔを達成する計画５４が存在できる。さらに、すべての場合で、
2010020771.tif 000109
は、状態Ｓｎを通過する任意の最も近い計画が、ターゲット異常性確率Ｔに正確になり得ることを表す。
【０１０１】
プランナ３０は、（例えば、プランナ３０、データストア３６、もしくはシステム２内の他のどこか、またはプランナ３０によってアクセス可能な外部データストアに保存された）部分計画の集合全体
2010020771.tif 000110
から探索することができる。部分計画毎に、プランナ３０は、
2010020771.tif 000111
を評価し、最低値を用いて計画を拡張する。
2010020771.tif 000112
は過少推定であるので、この推定を使用するＡ＊探索は、生産ゴールを達成する最も情報提供的な計画を返す。
【０１０２】
開示のさらなる態様では、プランナ３０は、選択的な刈り込みを使用して、目標計画探索の効率を改善するように動作することができる。この点に関して、上述の探索ヒューリスティックは多くの場合、同じ値、すなわちゼロを返すことができ、それは選択を行う際にプランナ３０に僅かなガイダンスしか提供しない。プランナ３０は、１つ以上の技法を使用して、探索を集束させるようにしかるべく適合させることができる。第１の集束手法では、プランナ３０は、探索空間の優勢な部分を刈り込む。例えば、ターゲット値Ｔを跨がない異常性確率区間を有する所定の部分計画
2010020771.tif 000113
を、プランナ３０によって識別することができる。この区間内の最良の可能な計画は、ターゲット値Ｔに最も近い、区間の２つの境界の一方の上にある。例えば、
2010020771.tif 000114
および
2010020771.tif 000115
を異常性確率区間
2010020771.tif 000116
の下界および上界とする。プランナ３０は、そのような場合、最良計画の値
2010020771.tif 000117
を以下の式（９）に従って決定する。
【０１０３】
（９）
2010020771.tif 000118
【０１０４】
計画
2010020771.tif 000119
は、
2010020771.tif 000120
である場合、すべての計画
2010020771.tif 000121
より優勢である。プランナ３０は、いくつかの計画または好ましくはすべての優勢な計画をＡ＊探索空間から刈り込む（さらなる考察から除外する）ようにしかるべく動作する。
【０１０５】
プランナ３０は、他の集束技法を使用することもできる。ヒューリスティック値は、どの状態ノードが次に拡張されるかを決定するが、２つ以上のノードが同じヒューリスティック値を受け取ることも可能である。したがって、プランナ３０は、規則を利用して、どのノードを最初に拡張すべきかを決定することができる。これに関する１つの適切な規則は、単にノードを無作為に選ぶことである。
【０１０６】
開示のこの態様によれば、プランナ３０におけるさらなる改善は、（上記の式（９）の）
2010020771.tif 000122
は、プレフィックスとしての部分計画
2010020771.tif 000123
で開始する全計画
2010020771.tif 000124
についての保証された下界を表すという事実を使用して、実施することができる。上界および下界は実現可能であるが、区間の内点はどれも存在することを保証されない。したがって、プランナ３０は、２つの部分計画のどちらが最も近い実現可能解であるかを決定するために、有利にＶを比較することができる。２つの部分計画がこのパラメータについても同一である場合、情報獲得は同じであり、したがって、プランナ３０は、失敗する可能性がより低い部分計画を選択し、それによって、短期生産性を促進する。プランナ３０は、順次決定手順において、これら２つの手法を組み合わせることができる。
2010020771.tif 000125
および
2010020771.tif 000126
が、同じ最小値、すなわち
2010020771.tif 000127
を有する２つの部分計画である場合、プランナ３０は、以下の規則リストに基づいて適用する第１の規則を選択することによって、均衡を破ることができる。
【０１０７】
１  
2010020771.tif 000128
ならば
2010020771.tif 000129
を最初に拡張する。
【０１０８】
２  
2010020771.tif 000130
ならば
2010020771.tif 000131
を最初に拡張する。
【０１０９】
３  
2010020771.tif 000132
ならば
2010020771.tif 000133
を最初に拡張する。
【０１１０】
４  
2010020771.tif 000134
ならば
2010020771.tif 000135
を最初に拡張する。
【０１１１】
５  
2010020771.tif 000136
ならば
2010020771.tif 000137
を最初に拡張する。
【０１１２】
６  
2010020771.tif 000138
ならば
2010020771.tif 000139
を最初に拡張する。
【０１１３】
７  それ以外ならば、無作為に選ぶ。
【０１１４】
プランナ３０は、生産中に観測された障害の発生源の決定を助けるための計画５４の生成ばかりでなく、コンポーネント３２ｂを介して、プラント２０内の既知の障害リソース２１〜２４の選択的回避も容易にすることができる。
【符号の説明】
【０１１５】
１  システム、  ２  モデルベース制御システム、  ４  カスタマ、  ６  生産システム、  ８  オペレータインタフェース、  ８ａ  診断ジョブ記述言語、  ８ｂ  オペレータ定義診断ジョブ、  １０  プロデューサ、  ２０  プラント、  ２１  リソース、材料供給、  ２１ａ  供給１、  ２１ｂ  供給２、  ２２  リソース、マーキングエンジン、  ２３  出力仕上げ、  ２４  リソース、双方向基板輸送／配送コンポーネント、  ２５  双方向基板輸送経路、  ２６  センサ、  ２８  コントローラ、  ３０  多目標プランナ、  ３２  ゴールベース計画構成、  ３４  出力目標、  ３４ａ  生産目標、  ３４ｂ  診断目標、  ３６  計画ＤＢ、  ３８  ＳＡＴソルバ、  ４０  診断エンジン、  ４２  ビリーフモデル、  ４３  目標値探索コンポーネント、  ４３ａ  グラフ構成コンポーネント、  ４３ｂ  計算コンポーネント、  ４３ｃ  最良優先探索コンポーネント、  ４４  プラントコンディション推定／更新、  ４６  予想情報獲得決定／更新、  ４９  生産ジョブ、  ５０  プラントモデル、  ５１  ジョブ＆目標、  ５２  製品、  ５４  計画、  ５６  観測、  ５６ａ  オペレータ観測、  ５８  コンディション、  ６０  診断ジョブ、  ７０  情報獲得データ    ５００  システム、  ５０２  開始グラフ、  ５０４  開始ノード「ｓ」、  ５０６  ゴールノード「ｇ」、  ５０８  目標値「Ｔ」、  ５１０  ノード、  ５１２  エッジ、  ５２０  後続グラフ、  ５２２  先行グラフ、  ５２４  接続グラフ、  ５２６  アルゴリズム、  ５２７  境界値、  ５２８  後続ノード集合、  ５２９  刈り込みコンポーネント、  ５３０  経路。
【図１】
2010020771.tif 000146
【図２】
2010020771.tif 000147
【図３】
2010020771.tif 000148
【図４】
2010020771.tif 000149
【図５】
2010020771.tif 000150
【図６】
2010020771.tif 000151
【図７】
2010020771.tif 000152
【図８】
2010020771.tif 000153
【図９】
2010020771.tif 000154
【図１０】
2010020771.tif 000155
【図１４】
2010020771.tif 000156
【図１５】
2010020771.tif 000157
【図１６】
2010020771.tif 000158
【図１７】
2010020771.tif 000159
【図１１】
2010020771.tif 000160
【図１２】
2010020771.tif 000161
【図１３】
2010020771.tif 000162