(57)【特許請求の範囲】
【請求項１】
システム構成要素のエラーに応じて、ユーザの嗜好に少なくとも部分的に基づいてジョブを再計画するシステムであって、
ジョブを処理する計画を実行している複数の構成要素の１つから例外を受け取る例外ハンドラと、
前記例外を受け取った場合に、モデルベースの計画立案技術と、少なくとも１つのユーザの嗜好とに、少なくとも部分的に基づいて、実行中の前記ジョブに関する新しい計画を生成する計画立案部と、
を含み、
前記計画立案部は、前記新しい計画の生成に要する時間に応じて、現在実行中の計画についてフォワードシミュレーションを実行し、前記フォワードシミュレーションを行った結果得られる時間から始まる新しい計画を生成する、
システム。
【請求項２】
請求項１に記載のシステムであって、
前記計画立案部は、更に、前記計画の現在実行中の部分に対する新しい目標を生成し、
前記新しい計画は、前記新しい目標に基づいて構築されると共に、すべての仕掛け品の破棄と、前記例外を報告した構成要素に対応するすべての仕掛け品の破棄と、ジョブの整合性を乱す仕掛け品の破棄と、製造し直す必要がある仕掛け品のみの破棄と、を含む、システム。
【請求項３】
例外に応じて、ユーザの嗜好に少なくとも部分的に基づいてジョブに関する新しい計画を生成する方法であって、
計画を実行している構成要素に関連する例外を受け取り、
まだ開始されていない計画をすべてキャンセルし、
前記例外を発生した前記計画の実行中の部分について、ユーザの嗜好に少なくとも部分的に基づいて、新しい計画を生成し、
現在実行中の計画について、前記新しい計画の生成に要する時間に応じて、フォワードシミュレーションを実行し、
前記フォワードシミュレーションを行った結果得られる時間から始まる新しい目標に応じた新しい計画を生成する方法。
【請求項４】
請求項３に記載の方法であって、
生成される新しい計画の数と、新しい計画それぞれの生成に要する時間と、に基づいて再計画時間を推定することと、
前記フォワードシミュレーションを、推定された前記再計画時間に基づかせることと、
を更に含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
下記は、機械制御の計画立案に関する。特に、例外処理を対象とし、より詳細には、ユーザの嗜好に少なくとも部分的に基づいた柔軟な計画を利用した例外処理を対象とする。
【背景技術】
【０００２】
モデルベースの計画立案機能は、機械制御の計画を作成するのに利用される。この機能は、システムの各構成要素は、その動作モデルを中央の計画立案部または制御装置に送信できるという概念に基づいている。制御装置は、前記モデルを解析して、システム構成要素の機能と制約条件とを判定する。続いて、１つ以上の処理すべきジョブを受け取ると、制御装置は、各構成要素モデル内に記載された構成要素の機能とその機能の制約条件とに基づいて、前記１つ以上のジョブを処理するための計画を生成する。この計画は、次に、システムの各構成要素によって確認されてよく、この確認を行うことで、各構成要素が計画の該当部分を確実に実行できるようにする。モデルベースの計画立案では、多くの場合、構成要素はすべて想定通りに機能するという前提に基づいて計画が立てられる。したがって、モデルベースの計画立案は、通常動作での計画のみを作成するために利用されることが多く、これらの計画の実行における障害または例外（例えば、システム内で機能不全を起こしている１つ以上の構成要素／モジュールに関連する障害や例外等）からの復旧に関与するものではない。残念ながら、前述した前提には、誤りがあることが多い。
【０００３】
一例において、従来のシステムは、このような計画に関連する前述したような例外について、機械、装置、プロセス等を安全な状態（例えば、停止、アイドル状態、電源遮断等）に導き、その安全状態から復旧を試みることで、その例外を処理する。一部の高速システムでは、稼動中のシステムを優雅に（gracefully）停止させることは困難であるか、あるいは不可能な場合もある。また、エラー回復のためにシステムを頻繁に停止すること（例えば、各構成要素に障害が発生する場合等）は、ユーザに、そのシステムは信頼できないシステム、または欠陥のあるシステムであるという認識を持たせる可能性がある。また、他の例では、予め定義された規則一式を用いて、例えば、計画立案部を起動せずに代替計画を決定する。ただし、起こりうるあらゆる例外について規則一式を生成することは、時間の消費、エラーに対する脆弱さ、実現不可能性のうちの少なくともいずれかをもたらす可能性がある。また、起動時にのみシステム構成が把握され、かつ、オンラインでアップデートできるシステムでは、予め定義された一連の規則は、無効となる可能性や、例外の効率的な処理を行えなくなる可能性がある。
【０００４】
オペレータの介入なしで例外から回復することは、ジョブのパージ、システムの再起動、事前定義規則の採用等の単純な回復処理手段を用いて、現行ジョブの未完成部分を完了することで実現できる場合がある。この手法は、平行モジュールを有するシステムや、大量の作業ユニットが稼動する恐れのあるシステムにとって、満足できるものであるとは言い切れない。ジョブの各部分が複数のモジュールに分散される場合、前述の単純な処理手順は、時間的な遅延や、処理時間の喪失や、システム状態の不整合や、高価な素材の喪失（パージされたジョブ）や、予測不能な構成要素／モジュール間の相互作用等を引き起こす可能性がある。
【０００５】
【特許文献１】米国特許公開第４，５７９，４４６号
【特許文献２】米国特許公開第４，５８７，５３２号
【特許文献３】米国特許公開第４，８３６，１１９号
【特許文献４】米国特許公開第５，０８０，３４０号
【特許文献５】米国特許公開第５，０９５，３４２号
【特許文献６】米国特許公開第５，１５９，３９５号
【特許文献７】米国特許公開第５，２０８，６４０号
【特許文献８】米国特許公開第５，２７２，５１１号
【特許文献９】米国特許公開第５，３２６，０９３号
【特許文献１０】米国特許公開第５，４８９，９６９号
【特許文献１１】米国特許公開第５，４３５，５４４号
【特許文献１２】米国特許公開第５，４７３，４１９号
【特許文献１３】米国特許公開第５，５０４，５６８号
【特許文献１４】米国特許公開第５，５２５，０３１号
【特許文献１５】米国特許公開第５，５５７，３６７号
【特許文献１６】米国特許公開第５，５６８，２４６号
【発明の開示】
【課題を解決するための手段】
【０００６】
一側面において、ユーザの嗜好に少なくとも部分的に基づいてジョブを再計画することで、システム構成要素のエラーに対応するシステムを提示する。本システムは、ジョブを処理するための計画を実行している複数の構成要素の１つから例外を受け取る例外ハンドラを含む。また、本システムは、モデルベースの計画立案技術と、１つ以上のユーザの嗜好とに、少なくとも部分的に基づいて前記ジョブに関する新しい計画を作成する計画立案部／再計画部を更に含む。
【発明の効果】
【０００７】
本発明によれば、例外が発生しても好適な計画を作成することができる。
【発明を実施するための最良の形態】
【０００８】
ここに記載するシステムと方法の少なくとも一方は、モジュール式構成要素を有するシステムに対応したモデルベースの計画立案機能を提供する。従来のシステムや方法とは異なり、例外処理は、起こり得る各例外に予め定義された規則を用いずに、オンラインとオフラインの少なくともいずれかで実行される。ただし、そのような規則は、ここに記載する例外処理を容易にするために利用できる。また、例外を処理する各種の手法と方針の一方または両方が考慮される。これらの手法と方針の少なくとも一方では、従来のシステムとは異なり、リソースの救出（例えば、入力、出力等）と、例外処理の時間／労力と、ユーザの嗜好との間の少なくともいずれかの妥協点を基準として利用できる。
【０００９】
図１を参照しながら、計画立案部１０を有するシステムについて説明する。計画立案部１０は、前記システムの１つ以上の構成要素１２を用いて１つ以上のジョブを処理する１つ以上の計画を生成する。このシステムは、複数のジョブ（例えば、システムによって実行される作業の説明をそれぞれ有するジョブ）の１つ以上のバッチを処理でき、各バッチは１つ以上のジョブを含むことができる。バッチ内のジョブは、特定の順序またはランダムな順序であってよい。計画立案部１０は、ジョブの複数のバッチをほぼ同時に処理しなければならない場合もある。この同時処理は、各バッチ内のジョブの順位に従って、異なるバッチ内の要素を別々の出力場所に送ることで実現できる。
【００１０】
計画立案部１０は、また、前記１つ以上の構成要素１２による計画の実行に関連したエラーから復旧するための例外処理（例えば、再計画）も提供する。このような例外処理は、計画の実行中に障害や例外が発生した際に、オンラインとオフラインの少なくともいずれかで計画した内容の中に新規の計画を生成するフレームワークを提供する。このフレームワークは、ユーザの嗜好を考慮して適切な差し替え方針を見つけるものであり、この差し替え方針は、迅速に問題を解決することと、可能な限り多くの未完成製品を救出することと、これらの組み合わせと、その他の基準の少なくともいずれかに基づいたものである。適切な用途の一例は、緊密に統合された高速平行印刷処理のプラットフォームで、用紙詰まり、他のシステム障害、構成要素の障害のうちの少なくともいずれかの原因により、処理中のシートを迂回させることを、オンラインで再計画することである。
【００１１】
これにより、システムは「自己回復」するように見え、ユーザの介入を必要とすることが少なくなり、計画立案部１０によって制御されるシステムの信頼性についての認識が改善される。また、例外処理では、緊密に統合された印刷システムのように、高速で動作している複雑なシステムにとっては非常に困難なものになり得るシステムの完全停止や、急停止や、急な完全停止を行う代わりに、再計画立案の過程においてシステムを稼動させ続けることができる。また、例外の発生時に、システムを異常なメカニズムに追従させないようにすることで、システムの寿命を延ばすこともできる。更に、ここに記載する本例外処理の手法は、起こり得るすべての例外に規則を決定する必要性を軽減すると共に、例外処理時間／労力と未完成製品の救出の間の妥協レベルが異なるさまざまな方針を提供する。ユーザは、好みの例外処理手法を予め提供できる。また、ユーザは、一般的な目的関数と、その目的関数に関連したシステムモデルとを利用（例えば、作業コストの値段を最小化する目的関数と、計算コスト、モジュールの磨耗と損壊のコスト、機械の健全性維持コスト等、関連のあるすべてのコストに関する情報を含んだシステムモデルとを利用）して、ユーザの嗜好を間接的に提示することもできる。計画立案部１０は、また、特定の目的関数を用いずに、コストモデル（例えば、ユーザが所定の製品に多くを支払う必要がある場合、媒体の救出は、例外処理における時間／労力よりも重要になると考えられ、ユーザが厳しい期限で作業している場合は、処理時間を確保することがより重要になるということ）から学習したり、あるいは、好ましい例外処理手法の選択におけるユーザの過去の行動から学習したりできる。このフレームワークは、柔軟であり、異なる検索アルゴリズムと計画立案アルゴリズムを採用して新しい計画を創案できる。したがって、計画立案速度が重要である場合は、新しい計画をすばやく見つけるアルゴリズムを採用し、機械の健全性やコストがより重要である場合には、時間に関して最適ではないが、高価なモジュールの使用を最低限に抑えるアルゴリズムを用いることができる。
【００１２】
このシステムは、機械、装置、プロセス、印刷プラットフォーム等であってよい。１つ以上の構成要素１２は、モジュール式ハードウェアであっても、モジュール式ハードウェアを含むものであっても、あるいはモジュール式ハードウェアであると共に、モジュール式ハードウェアを含むものであってもよい。各構成要素１２は、１つ以上のジョブの処理に利用できる１つ以上の機能に関連付けることができ、また、その１つ以上の機能は、それぞれ、１つ以上の制約条件に関連付けることができる。一例において、特定の構成要素１２の機能とその機能の制約条件は、その構成要素に対応したモデル内に記述される。このようなモデルは、対応する構成要素１２と共に格納されても、他の場所（ローカルまたはリモートの場所）に格納されても、あるいはその両方であってもよい。また、このモデルは、計画立案部１０に提供するか、計画立案部１０にアクセス可能に設定するか、あるいは、計画立案部１０に提供すると共にアクセス可能に設定して、機能とその機能の制約条件とを計画立案部１０に通知するように構成できる。これは、有線と無線の少なくともいずれかの方式で実現できる。また、このモデルは、構成要素１２の機能と制約条件の少なくともいずれかが変化した時に動的に更新でき、計画立案部１０には、更新された機能や制約条件についてのアクセスと通知の少なくともいずれかを提供できる。これには、計画立案部１０から要求があった場合に、システムの構成要素が、所定の時間に、該当する制約条件のもとで機能を実行できるかどうかが含まれてよい。
【００１３】
限定的なものではないが、一例を示す。この例において、前記システムが多機能印刷プラットフォームであると仮定した場合、構成要素１２には、用紙供給装置、マーキングエンジン、定着器等が含まれる。定着器は、印刷媒体上に画像を定着できるものであればよく、定着機能は、温度とトナーの少なくともいずれかに制約されてよい。これら各構成要素（例えば、用紙供給装置、マーキングエンジン、定着器等）は、その機能と制約条件とを記述したモデルに関連付けられ、かつ計画立案部１０に対して前記記述へのアクセスを提供できる。例えば、定着器に関連付けられたモデルには、定着機能と、温度及びトナーの制約条件と、が記述されてよい。他の非限定的な例としては、特に、調整モジュール、加熱モジュール、混合モジュール、分析モジュール、移載ロボット等の構成要素を有する分析システムや、加工モジュール、組立モジュール、試験モジュール、移載ロボット、梱包モジュール等の構成要素を有する機械加工システムや、ボトル充填モジュール、ラベル貼りモジュール等の構成要素を有する梱包システムが挙げられるが、他にもロジスティックシステム、ルーティングシステム、プロセス等がある。
【００１４】
処理すべき１つ以上のジョブを受け取ると、計画立案部１０は、前記１つ以上のジョブを処理する１つ以上の計画を生成する。この計画は、１つ以上の構成要素１２を用いて、前記１つ以上のジョブを逐次処理と同時処理の少なくともいずれかで処理するための指示と制御信号の一方または両方を含むことができる。計画立案部１０は、各構成要素１２の機能及び制約条件（例えば、構成要素モデルから決定されるようなもの）と、システムの状態と、に基づいて前述の計画を生成する。このような情報を利用し、各ジョブの目標を満たすように計画が生成される。生成された計画は、前記１つ以上の構成要素１２のうちの１つ以上を用いて計画を実行する実行エンジン１４に送られる。
【００１５】
１つ以上の構成要素１２と関連プロセスの少なくともいずれかに障害（例えば、異常実行、動作停止、受容可能な許容範囲外での実行等）が発生した場合、対応する構成要素１２と他の構成要素（例えば、制御装置）の少なくともいずれかは例外を報告できる。これに加えて、あるいは、これに代えて、計画立案部１０は、各構成要素１２のエラーを監視することで、例外を把握してもよい。
【００１６】
例外の発生に応答して、計画立案部１０は、１つ以上のジョブを処理する新しい計画を１つ以上生成する。このような再計画は、部分的に処理されている「損傷した」計画の中のリアルタイムの制約事項と関連事項とに従って、処理中のジョブ（例えば、現在実行されているジョブ）と始動待機中のジョブの一方または両方についての計画を決定することを含んでよい。計画立案部１０は、回復を容易にする各種のアルゴリズムを用いて前述の処理を行える。例えば、計画立案部１０は、例外の発生時に、実行エンジンによってまだ開始されていないすべての計画をキャンセルしてよい。このとき、計画立案部１０は、ユーザの１つ以上の嗜好に従って、計画の既に始動されている部分についての新しい計画を生成できる。オリジナルの計画に対して、時間の長さを求めるフォワードシミュレーションを行うことができ、この時間の長さは、再構築する必要がある計画の数と、計画立案部の予測計算速度と、に左右され、ひいては、例外処理に選択された所望の方針に対応するアルゴリズムに左右される。
【００１７】
ここで、計画立案部１０は、適切なアルゴリズム（例えば、連鎖式最良優先探索アルゴリズム）を用いて、新しい目標に対応した新しい位置から始まる新規の計画を生成する。生成された新規の計画は、実行エンジン１４に送られて、以前の計画と入れ換えられる。実行エンジン１４は、１つ以上の構成要素１２の１つ以上を用いてこれらの計画を同様に実行する。構成要素１２の他の１つと関連処理の少なくともいずれかに障害が発生した場合は、前述の例外処理とエラー回復を実行し、別の新規計画一式を作成して実行エンジン１４に送ることができる。
【００１８】
代替の実施形態において、システムが線形的（linear）なものである場合、起こり得る例外は数が少なく、例外の発生時に起こり得る出力の数が少ないため、各例外に予め定義された一連の規則を生成し、それを改良することもできる。これらの規則を用いて、ここで説明した例外処理技術を容易化することもできる。他の手法は、ここで説明した一般的な再計画フレームワークを利用して例外処理プロセスを誘導するものであるが、これにはドメイン制御の知識からの補助も利用される。
【００１９】
図２では、前述した１つ以上の構成要素１２を、Ｎ個の構成要素１２１，１２２，・・・，１２Nとして示す。ここで、Ｎは１以上の整数である。各構成要素１２１，１２２，・・・，１２Nは、その機能と制約条件の記述を提供する一意のモデルに関連付けられ、このモデルと、機能及び制約条件の少なくともいずれかは、計画立案部１０に提供されるか、計画立案部１０にアクセス可能に構成されるか、あるいは、提供されると共にアクセス可能に構成できる。代替の実施形態において、単一のモデルを用いて、各構成要素１２の機能と制約条件とを記述したり、個々のモデルの集合体を構成したり、あるいは単一のモデルと集合体の両方を用いることもできる。同様に、単一のモデルと集合モデルの少なくともいずれかは、計画立案部１０に提供されるか、計画立案部１０にアクセス可能に構成されるか、あるいは、提供されると共にアクセス可能に構成できる。
【００２０】
各構成要素１２１，１２２，・・・，１２Nは、通信ハイウェイ１６と（片方向または双方向で）情報交換できる。この通信ハイウェイ１６を用いて、１つ以上の計画の実行は、一構成要素または前記構成要素１２のうちの１つによってなされてよい。例えば、１つの計画は、通信ハイウェイ１６を介したループ処理を行うことで、構成要素の中の単一の構成要素によって実行できる。他の例において、計画は、構成要素１２のうちの一構成要素（例えば、構成要素１２１）内でジョブを繰り返して実行し、その後で次の構成要素１２（例えば、構成要素１２２）に移ることを含むことができる。あるいは別の選択肢として、計画は、複数の構成要素１２（例えば、構成要素１２１と１２N）の間でジョブを繰り返して実行した後で、そのジョブを他の構成要素（例えば、構成要素１２２）に送ることを含んでよい。これらの例は説明のためにのみ提示したものであり、限定するものでないことは理解されるであろう。また、通信ハイウェイ１６は、１つ以上のサブハイウェイを含んでも、あるいは、同様の構成要素と異なる構成要素の少なくともいずれかに関連付けられた他の通信ハイウェイ（図示せず）と組み合わされても、あるいはその両方であってもよいことは理解できるであろう。
【００２１】
受け取ったジョブは、計画生成部１８によって処理される。計画生成部１８は、受け取ったジョブを解釈し、そのジョブを処理する計画を生成する。各ジョブには、１つ以上の入力、所望の出力、目標、属性、パラメータ、変数、制約条件等の記述が含まれてよい。計画生成部１８は、前述した要素のうちのいくつか、またはそのすべてを計画の基準として利用できる。計画は、連続処理と同時処理の少なくともいずれかで１つ以上のジョブを処理するように生成できる。このような例において、計画は、１つ以上のジョブの各部分について、同様の構成要素１２と異なる構成要素１２の少なくともいずれかによって処理されることと、通信ハイウェイ１６内のパスを共有することの一方または両方を指定してよい。計画の確認（例えば、提案／受領／確認プロトコルや他の適切な計画確認技術を用いた確認）を行った後、確認された計画は実行エンジン１４に送られる。
【００２２】
実行エンジン１４は、計画を容易に実行できるようにする。例えば、実行エンジン１４は、１つ以上の構成要素１２に制御信号を送信できる。このような信号を用いて、ジョブを処理する指示の提供、暖機運転ルーチンの起動、出力のサイクリング、診断機能の起動、ハードウェアのリセット、構成要素の状態に関する問い合わせの挿入等を行える。図示するように、実行エンジン１４は、各構成要素１２１，１２２，・・・，１２Nと個別に通信できる。各構成要素１２は、実行エンジン１４と通信できる。このように、実行エンジン１４が、構成要素１２のうちの１つに対して情報の提示や問い合わせを行う場合、提示または問い合わせを受けた前記構成要素１２のうちの１つは、実行エンジン１４に返答できる。また、構成要素１２の１つ以上は、例外、メッセージ、確認応答、通知等を、実行エンジン１４に送信できる。実行エンジン１４は、このような情報の受領と返答の少なくともいずれかを行うことと、その情報を無視することの両方または一方を実行してよい。
【００２３】
計画立案部１０で受け取った例外は、例外ハンドラ２０によって処理される。例外を受け取ると、例外ハンドラ２０は、アルゴリズムバンク２８から適切なアルゴリズムを取得する。この適切なアルゴリズムは、例外のタイプとユーザの嗜好と目的関数のうちの少なくともいずれかによって異なる。適切なアルゴリズムの例としては、連鎖式最良優先探索アルゴリズムが挙げられるが、これに限定されるものではない。次に、計画立案部１０は、エラー、アルゴリズム、ユーザの嗜好等に基づいて、オンラインまたはオフラインで１つ以上の新しい計画を生成する。
【００２４】
これに限定されるものではないが、新しい計画の作成に利用できる技術の一例を下記に示す。まだ開始されていない既存の計画はすべて、例外の後、有効でなくなっている可能性や、あるいは、適切な品質が保てなくなっている場合があるため、キャンセルすることができる。必要に応じて、計画の処理中の部分に新しい目標を設定できる。これは、後で詳しく説明するような各種の手法で実現できる。この技術には、仕掛かり品をすべて破棄して再始動すること、エラー（例えば、例外を報告した構成要素）に関連のある製品のみを破棄すること、ジョブの整合性を損なう仕掛かり品を破棄すること、もう一度製造しなおす必要のある仕掛かり品を破棄すること、及び可能な限り多くの仕掛かり品を救い出そうとすることが含まれる。再計画の時間は、再計画して新たに作成する必要がある計画の数に基づいて推定できる。この推定にマージンを加えて、見積もりが実際よりも低くなることを緩和できる。現在実行中の計画には、推定再計画時間に基づいたフォワードシミュレーションを行うことができる。フォワードシミュレーションによってもたらされる将来の障害は予測可能である。フォワードシミュレーション時から始まる新しい目標を有する新規の計画を生成できる。次に、計画立案部１０は、通常の計画立案モードに戻り、オンラインモードで動作を続行できる。
【００２５】
図３に、少なくとも計画の一部の実行に障害が発生した際にジョブを再計画する方法を示す。このような障害は、他の計画に問題を引き起こしたり、ユーザの１つ以上の目標を満たせなくしたり、あるいはその両方であったりする。参照番号３０において、まだ開始されていない計画がすべてキャンセルされる。３２において、計画の実行中の部分についての新しい目標が必要に応じて生成される。このことは、ユーザの嗜好とシステム機能の少なくともいずれかに従って多種多様に実行できる。例えば、１つの手法では、計画の実行中の部分すべてを終了／パージし、その後で新しい計画を用いて、計画の遂行を再開する。この手法では、概して、再計画の時間が短くてすむため、ここに記載した他の技術よりも比較的速く、システムを安定状態に戻すことができる。これにより、元々の例外によってシステムにもたらされる後の損害を更に円滑に緩和できる。
【００２６】
他の手法では、例外から影響を受けた計画のみを終了／パージして、再計画を行う。したがって、関連のないジョブについての計画は、継続して実行されることになる。この計画では、実行を継続する以前の計画についても新しい計画の中で考慮する必要があり、再計画の問題がより複雑になるため、再計画により長い時間がかかるが、影響のない計画の実行を完了させることで、コストをより削減できる。他の手法では、例外からの影響を受けている計画の各部分についてもその実行を続行する。これは、レバレッジシステムの機能と、計画の実行中の部分を完了させる代替手段の利用とを必然的に伴うものであってよい。この手法は、例外を処理するのに、前述した２つの手法よりも長い時間がかかる可能性が高いが、より大きな価値をユーザにもたらすことができる。他の手法も考慮される。使用する特定の手法は、目標、例外前後の機械モデル、例外のタイプ、ユーザの嗜好、コストと利点、推論、確率、分類分級機等によって異なる。
【００２７】
参照番号３４において、再計画時間が推定される。この時間は、生成される新しい計画の数と、この新しい計画それぞれの生成に要する時間と、に基づいたものである。３６において、現在実行中の計画に関して、推定された再計画時間に基づいてフォワードシミュレーションを行う。ここで、将来の障害に対する影響が予測される。３８において、フォワードシミュレーション時から始まる新しい目標に応じた新しい計画が生成される。新たに生成された計画は、４０において実行される。
【００２８】
図４〜７に、前述したシステムと方法の実施例を示す。この例において、システムは緊密に統合された（多用途）印刷プラットフォームであり、このプラットフォームにおいて、各印刷ジョブは、特定の順序で印刷される複数のシートで構成される。このシステムは、所定の計画を却下したり、ユーザの設定に応じていくつかの機能のオン／オフを行ったり、特定の用紙に関して用紙詰まりや他のエラーが発生したことを計画立案部１０に通知したりできる。この例について、印刷プラットフォームに関連して説明するが、後述する前提条件を満たす任意のシステムや他のシステムにも適用できることは理解されるであろう。前記前提条件には、システムが特定の順序に従ってジョブのバッチを処理することと、計画立案部１０は、異なるバッチ内の対象物を分岐させて、各バッチ内のジョブの順序に従って出力場所を選別することで、複数のバッチを同時に処理できることと、システムの構成要素１２は、その機能の変化、例えば、計画立案部１０から要求があった場合に指定の時間に特定の機能を実行できるかどうか、を計画立案部１０に通知することと、が含まれる。代替システムの例として示すと、この例の各用紙シートは、より一般的な製造ジョブを象徴でき、異なる印刷ジョブ（多数の印刷ページからなるジョブ）は、異なる場所で組み立てる必要があるジョブのバッチを象徴できる。
【００２９】
まず、図４を参照すると、計画立案部１０によって順次処理される一連のシートが図示されている。このシートは、４つの組４２，４４，４６，４８に分けて図示されており、各組は計画立案プロセスにおける異なる段階に属している。組数がこれより多いものまたは少ないものも対象となることは理解されるであろう。計画立案部１０に到着すると、各ジョブは、各種の状態または各種のキューの間で遷移する。例えば、新たに到着したジョブと、まだ計画されていないジョブの少なくともいずれかは、５０に図示するように、「未計画」の状態にあると考えられ、現在計画されているジョブは、５２に図示するように、「計画中」の状態にあると考えられ、計画されたが、まだ開始されていないジョブは、５４に図示するように、「計画済、未送信」の状態にあると考えられ、計画されて、プリンタに送信されたジョブは、５６に図示するように、「プリンタに送信済」の状態にあると考えられる。
【００３０】
例外が発生すると、計画立案部１０は、再計画モードに切り替わる。例外は、特定の計画の実行に関連付けられている場合もあるが、異なるジョブに関連付けられた他の計画に障害を引き起こしたり、ユーザの目標を無効化したり、あるいはその両方の原因となる場合もある（例えば、シートが、間違った順序で仕上げトレイに排出される等）。図３に記載した方法を用いて、まだ始動されていない計画をすべてキャンセルする。図５は、始動された最後のシートがシート３である場合に、シート４〜７は、例外によって機械モデルが変化した後、有効でなくなるか、適正な品質でなくなっている可能性があるため、これらのシート４〜７についての計画をキャンセルする必要があることを示している。次に、必要に応じて、処理中のシートに新しい目標を生成する（例えば、パージトレイまたはシュレッダに送る）。
【００３１】
更に、生成される新しい計画の数に応じて、再計画ルーチンが完了するまでの時間として合理的に推定される計画立案時間が計算される。この計算された再計画時間に基づき、現在実行中の計画について、現在の経路に応じたフォワードシミュレーションが行われ、その間に、フォワードシミュレーションで顕現する将来の障害を予測する。次に、各種の技術を利用すると共に、計画立案部１０を利用して、前記フォワードシミュレーションが行われた時間から始まる新しい目標に対応した計画を見つける。再計画を行った後、計画立案部１０は、通常の計画モードに戻って、オンラインモードで動作を続行する。図５に示した例において、１つの方針は、シート２〜３をパージするもので、この場合、シート１〜９についての以前の目標すべてを維持したまま、計画立案モードを再始動できる。例外によって、一部のシステム構成要素１２の状態が更新された場合、計画立案部１０は、モデル更新メッセージによって変更を説明することで、再計画において特定された後続の計画と、通常の計画モードとが、まったく同じ例外を再度繰り返さないようにする。
【００３２】
図６に示す例では、図４及び図５に示したシートのシーケンスが想定されると共に、シート１が５８の位置で詰まり、６０に位置するシート３が開始された最後のシートであるという例外シナリオが想定されている。紙詰まりを起こしたシート１に起因する例外において、図４と図５のシート４〜７は、将来の例外を防止するためにキャンセルされる。６２に位置するシート２と、シート３は既にシステム内にあるため、これらのシート２，３を迂回させる必要がある。ここで、シート２は、紙詰まりを起こしたシート１と同じジョブに属し、シート３は異なるジョブに属していると仮定する。これらのシート２と３に新しいルートを計算する推定計算時間に従って、これらのシートに関して、新しい位置６４と６６までのフォワードシミュレーションをそれぞれ行う。計画立案部１０は、次に、これらのシートにとっての、新しい位置６４と６６からの新規ルートの再計画を開始する。ユーザの嗜好とコストモデルに応じて、計画立案部１０は、前述した手法の１つを選択してよい。
【００３３】
例えば、計画立案部１０は、ユーザの嗜好とコストモデルに応じて、すべてのシート（すなわち、シート２とシート３）をパージしてよい。例えば、印刷に使用する媒体が高価でなく、ユーザがこれらのシートを救出することへの配慮を求めていない場合、計画立案部１０は、これらのシートをパージトレイ６８や、シュレッダ等の他の装置（図示せず）に迂回させることができる。この手法において、前記パージトレイに送る前に用紙シートに画像が配置されているかどうかは問題ではない（すなわち、一般的な製造分野では、パージする前に部品を検量する必要はない）。その結果、再計画を完了するまでの時間は短くてすむ。したがって、システムは、より迅速に安定状態に戻ることができるため、元々の例外が原因で引き続きシステムにもたらされる損傷を軽減できる。
【００３４】
他の例において、計画立案部１０は、ユーザの嗜好にもよるが、不良となったシートのみをパージしてもよい。したがって、この手法は、印刷に使用する媒体が比較的高価であり、再計画プロセスを速やかに完了する一方で可能な限り多くの媒体を救うことをユーザが求めている場合に利用できる。例えば、シート２を当初の仕上げトレイに送ることは、対応するジョブ（このジョブでは、シート１が破損している）の整合性を損なうことになる。この場合、シート２は、シート１との衝突を避けながら、パージトレイ６４に向かうように再ルート設定される。シート３については、破損したシートと同一のジョブには属していないため、同一目標を維持したまま印刷し、その後、シート１との衝突を回避しつつ、仕上げトレイに向かうように再ルート設定される（また、このジョブに属するほかのシートが存在し、そのシートも再ルート設定する必要がある場合は、そのシートに対応するジョブの整合性も維持する）。この手法では、前の手法より長い時間がかかるが、いくつかの媒体を救い出せる。
【００３５】
他の例において、計画立案部１０は、ユーザの嗜好に応じて、破損したシートを再制作しながら、他のシートを折り返させたり、停留させたりできる。これは、更に多くの媒体を救うために流用できる折り返し路を含む複数のパスを有するシステムで実行できる。この様子は、図７に例示する図に示されている。図７の例では、前述の手法のように不良となったシート２の再ルート設定を行う代わりに、プリンタ内の位置７０において、シート２を折り返させ、破損したシート１の再印刷が完了するまで待機させるというものである。その後、シート２は、折り返し路から出て、適切な仕上げトレイへ進むように再ルート設定できる。このような折り返しを行わない方法として、破損したシートの再印刷が完了するのを待つ間、いずれかの場所でシートが「停留」できるシステムである場合は、代替の選択肢として「停留」させることを利用して、印刷媒体を最大限救い出すようにすることもできる。この手法では、例外の処理に前の手法よりも長い時間がかかるが、シートを救い出せる可能性が最も大きくなる。
【００３６】
既に説明したように、利用する特定の手法は、未完成のシートを救出することの方が、例外を処理する時間の短縮及び例外が拡大する可能性の削減よりも重要であるかどうかによって異なるものとなる。計画立案部１０と他の構成要素の一方または両方は、特定の手法に固定される必要はない。むしろ、所望の好ましい手法に従うことができ、その手法を実現できない場合や、コストが大きくなりすぎる場合には、他の手法に切り替えることができる。例えば、媒体を救い出すために、計画立案部１０は、第３の手法を選択できるが、その際に、システム内に折り返し路や停留場所を見つけられない場合は、第２の手法と第１の手法の少なくともいずれかに切り替えることができる。
【図面の簡単な説明】
【００３７】
【図１】ジョブを処理する計画を生成し、かつ、少なくともユーザの嗜好に基づいた例外処理を提供する計画立案部を有するシステムを示す図である。
【図２】計画生成部と、例外ハンドラと、新規計画の生成を容易化するのに使用されるアルゴリズムをユーザの嗜好と共に格納するアルゴリズムバンクと、を有する計画立案部を示す図である。
【図３】少なくとも一部の計画の実行に障害が発生した際に、ジョブを再計画する方法を示す図である。
【図４】前記計画立案部によって逐次的に処理されるシートのシーケンスを示す図である。
【図５】例外によって有効でなくなるか、適正な品質でなくなっている可能性があるために、未着手のシートをキャンセルする技術の一例を示す図である。
【図６】実行中の計画に関連のあるすべてのシート、または、障害を発生した実行中の計画に関連のあるすべてのシートをパージする技術の一例を示す図である。
【図７】障害を発生した実行中の計画に関連のあるシートの救済を試みるシステムについての技術の一例を示す図である。
【符号の説明】
【００３８】
１０  計画立案部、１２  システム構成要素、１４  実行エンジン、１６  通信ハイウェイ、１８  計画生成部、２０  例外ハンドラ、２８  アルゴリズムバンク、４２，４４，４６，４８  シート、５０  未計画、５２  計画中、５４  計画済、未送信、５６  プリンタに送信済。
【図１】
0005406448.tif 000002
【図２】
0005406448.tif 000003
【図３】
0005406448.tif 000004
【図４】
0005406448.tif 000005
【図５】
0005406448.tif 000006
【図６】
0005406448.tif 000007
【図７】
0005406448.tif 000008