(58)【調査した分野】(Int.Cl.,DB名)
デバイスに対する前記タイムアウトは、別のジョブが到着しない場合に、ジョブが完了した後で、エネルギー消費の少ない第2のモードに移動する前に、前記デバイスが第1のモードに留まる時間である、請求項1に記載の制御システム。
前記見込みのエネルギー消費は、デバイス選択に対する確率分布と、前記複数のデバイスによって受信されたジョブ間の時間とに基づく、請求項1に記載の制御システム。
【発明を実施するための形態】
【0034】
例示的な実施形態は、同じジョブを行うことが出来る複数のデバイスを含むマルチデバイスシステム、例えば、ネットワーク印刷システムにおいて電力消費を減少させるための方法を提供する。一例示的な実施形態においては、デバイスのうちの1つによって実行されるジョブ、例えば、印刷ジョブが、選択されたデバイスから別のデバイスに選択的に転送され、そうした時には、システムの電力消費を減少させ、その減少は、転送費用を上回る。電力消費をさらに最小化するために、デバイスに対するタイムアウトが、システムに対する見込みの費用を最小化するように最適化される。
【0035】
本明細書において使用されるように、「最適化」、「最小化」などの用語と、同様な表現とは、当業者がこれらの用語を理解するように広く理解される。例えば、これらの用語は、大域的最適絶対値、大域的絶対最小値などに限定されると解釈されるべきではない。例えば、関数の最小化は、絶対最小値に到達する前に停止基準で終わる反復最小化アルゴリズムを利用してもよい。最適値または最小値が局所的最適値または局所的最小値であることも企図される。
【0036】
「タイムアウト」は、ジョブがデバイスによって受信(または完了)された後の期間であり、その期間の間には、(タイムアウトをリセットする)さらなるジョブが一時的な期間に受信されないと想定すると、デバイスは、低エネルギー消費状態(例えば、印刷デバイスが印刷をする準備が完了しておらず、印刷が始まる前にはアイドルモードまで温められなければならないスタンバイモード)に移行する前に、高エネルギー消費状態(例えば、印刷する準備が整った印刷デバイスの場合におけるアイドルモード)のままである。
【0037】
以下の考察において、マルチデバイスシステムは、印刷システムと、プリンタとしてのデバイスとに関して記載されるが、システムは、他のデバイス、特に電気機械デバイスを含んでもよいことが理解されるべきである。
【0038】
図1を参照すると、マルチデバイス印刷システム10は、1つ以上の印刷ジョブ16を実行するための複数の印刷デバイス(プリンタ)12、14を含む。「印刷ジョブ」は、印刷ジョブがどのように実行されるかに関する命令を含むジョブチケットを伴った1つ以上の関連の電子文書ページ画像の組である。やはり、印刷デバイス12、14は、互いに対して比較的に近くにあり、同じエリアのユーザの組によって自由にアクセスすることが出来る。いくつかの実施形態において、印刷デバイス12、14の数は、10台を超えない。印刷デバイス12、14のそれぞれが、印刷ジョブ16を実行するための印刷エンジン18、20を含む。印刷デバイス12、14は、同じものであっても異なるものであってもよく、スタンドアロンの印刷システム、または印刷することに加えて、コピーすること、ファックスすること、スキャンすること、およびそれらの組み合わせなどの他の能力を有する多機能デバイスを含んでもよい。通常のタイプの印刷エンジンは、ゼログラフィ印刷エンジン、インクジェット印刷エンジン、レーザ印刷エンジン、および熱印刷エンジンを含む。
【0039】
一般的に、印刷ジョブ16を実行する時には、印刷エンジン18、20は、ハードコピー印刷物22を生み出すために、インクまたはトナーなどのマーキング材料を使用して、紙などの印刷媒体に画像を適用する。ゼログラフィ印刷エンジンの場合、印刷エンジンは、ベルトまたはドラムの形態の感光体を均一な電位まで帯電させ、潜像を作成するように選択的に感光体を放つ。それから、印刷エンジンは、選択された色のトナー粒子を現像剤筐体から感光体に適用し、潜像を印刷媒体に転送することによって潜像を現像する。次に、転送された画像は、熱および/圧力を使用してフューザで印刷媒体に融合されることにより、ハードコピー印刷をもたらす。
【0040】
印刷デバイス12、14の通信ユニット24、26、例えば、モデムは、典型的には、ローカル・エリア・ネットワークなどの通信ネットワーク28を介して印刷ジョブ16を受信し、様々な時に印刷ジョブ16を受信する。例えば、いくつかの印刷ジョブは、1分〜2分の間隔で到着してもよいが、他の印刷ジョブは、何分も離れて、または何時間も離れてもよい。印刷ジョブ16を受診する際、印刷デバイス12、14のコントローラ30、32は、印刷エンジン18、20のローカル印刷キューに印刷ジョブ16を追加し、例えば、先入れ先出し(FIFO)スケジューリングアルゴリズムを使用して、実行する印刷ジョブ16のスケジュールを決める。いくつかの実施形態において、印刷ジョブ16のうちの1つを受信する印刷デバイスはさらに、省電力モードから呼び起こされ、および/または印刷ジョブの実行の準備が行われる。コントローラ30、32はそれぞれ、関連のメモリ上でコンピュータ実行可能な命令を実行するプロセッサを含む。コンピュータ実行可能な命令は、スケジューリングアルゴリズムなどの上記の機能を適切に体現する。さらに、コントローラ30、32は、1つ以上のシステムバス34、36を介して、通信ユニット24、26および印刷エンジン18、20などの、印刷デバイス12、14の構成要素とデータを交換する。
【0041】
電力消費を減少させるために、印刷デバイス12、14のそれぞれが、異なる電力消費レベルに対応する複数の異なる動作モードを含む。考察を容易にするために、各印刷デバイスは、アイドルモードと省電力モードとを含むことが仮定される。しかしながら、追加の動作モードが同様に受け入れ可能であることが理解されるべきである。アイドルモードにおいて、印刷デバイスは、印刷するために使用される準備が完了し、典型的には最大電力を必要とする。省電力モードにおいて、印刷デバイスは、印刷デバイスの一定の機能を支援するために充分な電力を取るが、印刷デバイスが再び完全に動作可能になる前にウォームアップ期間を必要とする。
【0042】
印刷デバイス12、14のコントローラ30、32は、電力制御システム38によって印刷デバイス12、14に割り振られたタイムアウトに従ってアイドルモードから省電力モードに印刷デバイス12、14を切り替える。典型的には、印刷デバイス12、14の通信ユニット24、26は、通信ネットワーク28を介して電力管理システム38からタイムアウトを受信する。さらに、以下で考察されるように、タイムアウトは、デバイス単位というよりも全体的に、マルチデバイス印刷システム10に対する見込みの費用を最小化するように最適化される。印刷デバイスがアイドルモードにあり、印刷ジョブが実行されて以来の時間の長さが、割り振られたタイムアウトを超えた時には、印刷デバイスのコントローラは、省電力モードに印刷デバイスを切り替える。
【0043】
1つ以上の印刷ジョブ生成器40が印刷ジョブ16を生成する。印刷ジョブ生成器40は、手動入力に基づいて、および/または自動的に印刷ジョブを生成してもよい。前者に関しては、印刷ジョブ生成器は、印刷ジョブの生成を制御するユーザと関連付けられる。ユーザが印刷ジョブを生成するのを容易にするために、これらの印刷ジョブ生成器はそれぞれ、典型的には、キーボード、カーソル、制御デバイス、タッチスクリーンなどの1つ以上のユーザ入力デバイス42、および/またはディスプレイなどの1つ以上のユーザ出力デバイス44を含むか、またはそれらと関連付けられる。後者に関しては、印刷ジョブ生成器は、メモリ46に格納されると共にプロセッサ48によって実行されるソフトウェア構成要素を含み、プロセッサ48は、一組の基準に応答して印刷ジョブを生成するように事前にプログラミングされる。例えば、ソフトウェアエージェントは、受信トレイで受信された全電子メールを印刷するように事前にプログラミングされてもよい。
【0044】
印刷ジョブ生成器40によって生成された印刷ジョブ16のそれぞれは、印刷ジョブを実行するための印刷デバイス12、14のうちの一方の選択を含む。さらに、1つ以上の規則の組で事前にプログラミングされたソフトウェアエージェントが、典型的には選択を行う。例えば、そのような規則は、全てのカラー印刷ジョブが第1の印刷デバイスを使用し、他の全ての印刷ジョブが、第2の印刷デバイスまたは同じデバイスの異なる印刷エンジンを使用することを規定してもよい。しかしながら、印刷ジョブが手動で生成された時には、選択は、例えば、ユーザ入力デバイス42を使用した手動入力に基づいて行われてもよい。上記のように、ユーザは、典型的には、電力消費を考慮することなく、ユーザにとって個人的に最も良い印刷デバイスを選択する。
【0045】
印刷デバイスが選択された時には、他の印刷デバイス上で印刷ジョブを実行するための転送費用もまた規定される。例えば、2つの印刷デバイスシステムの第1の印刷デバイスが選択された場合には、第2の印刷デバイス上で印刷ジョブを実行するための転送費用もまた規定される。選択された印刷デバイスに対する「転送費用」はゼロであると想定する。他のデバイスに対する転送費用は、典型的には、ユーザに対する生産性の損失と、他の印刷デバイスを使用した結果としての印刷品質とのうちの1つ以上に対応する。典型的には、メモリ46に格納されると共にプロセッサ48によって実行されるソフトウェア構成要素は、転送費用を完成させるための1つ以上の規則の組で事前にプログラミングされる。しかしながら、印刷ジョブが手動で生成された時には、転送費用は、例えば、ユーザ入力デバイス42を使用して手動で規定されてもよい。
【0046】
印刷ジョブ生成器40は、メモリ46に格納されたコンピュータ実行可能な命令を実行するプロセッサ48を含む。コンピュータ実行可能な命令は、ソフトウェアエージェントの機能などの上記の機能を適切に体現する。いくつかの実施形態において、印刷ジョブ生成器40は、ラップトップコンピュータ、ワークステーションコンピュータ、デスクトップコンピュータ、スマートフォン、携帯端末などの1つ以上のコンピュータ、または例示的な方法を実装することが出来る任意のコンピュータデバイスを含む。印刷ジョブ生成器40はさらに、通信ネットワーク28に接続された他のデバイスと通信するための通信ユニット50を含む。プロセッサ48、メモリ46、ユーザ入力デバイス42、ユーザ出力デバイス44、および通信ユニット50などの、印刷ジョブ生成器40の構成要素は、1つ以上のシステムバス52を介して通信する。
【0047】
電力制御システム38は、印刷ジョブによって課された制約の下で大域的に最適な印刷デバイスに印刷ジョブ16のそれぞれを割り振ることによってマルチデバイス印刷システム10の電力消費を減少させることを目的とする。印刷ジョブにとって大域的に最適な印刷デバイスは、マルチデバイス印刷システム10に対して最も安価で、印刷ジョブの制約下で印刷ジョブを実行することが出来る印刷デバイスである。考慮する費用は、電力消費費用(現在および/または将来)と転送費用とを含む。転送費用が規定されていない時には、転送費用はゼロであると想定される。さらに、無限大の転送費用が規定された時には、転送は無効にされることが出来る。印刷ジョブに対する割り振りは、典型的には、電力制御システム38において印刷ジョブを受信することに応答して決定される。
【0048】
印刷ジョブに対する大局的に最適な印刷デバイスを決定するために、多数の手法が利用され得る。いくつかの実施形態において、全体的なシステムの費用は、印刷デバイスが省電力モードである場合に、選択された印刷デバイスを起動することと関連付けられる費用と、選択されたデバイス以外のデバイスに印刷ジョブを転送する転送費用と、印刷ジョブが転送されることが出来たデバイスのそれぞれに関する、転送デバイスで印刷する費用とを含む、選択されたデバイスで印刷する費用のうちの少なくとも1つに関する関数としてモデリングされる。次に、費用関数が最適化される(例えば、適切な最適化方法を使用して最小化される)。いくつかの実施形態において、各印刷デバイスに関するシステムの費用が決定され、それから、最低費用の印刷デバイスが印刷ジョブの割り振りのために選択されることが出来る。他の実施形態において、割り振りの決定は、以下で考察されるように、同様に費用関数の最小化を利用するマルコフ決定過程(MDP)を使用してモデリングされる。最適な印刷デバイスを決定した後で、印刷ジョブが印刷デバイスに割り振られる。
【0049】
例示的な電力制御システム38はさらに、各印刷デバイスに対するタイムアウトを最適化することによって、マルチデバイス印刷システム10の電力消費を減少させる。印刷デバイスに対する最適なタイムアウトは、アイドルモードで印刷デバイスを維持することにより見込みの電力消費を最小化するタイムアウトとしてコンピュータ計算されることが出来、次に、次の印刷ジョブが印刷デバイスに割り振られるまで、印刷デバイスを省電力モードにして、再びアイドルモードに戻る可能性がある。注目すべきことに、印刷デバイスに対する最適なタイムアウトは、デバイスが転送を介して印刷ジョブを受信し得るので、要求の確率的挙動だけに基づいているのではない。典型的には、タイムアウトは印刷ジョブの割り振りの後に決定される。
【0050】
各印刷デバイスに対する最適なタイムアウトを決定するために、多数の手法が利用され得る。いくつかの実施形態において、マルチデバイス印刷システム10の見込みの電力費用は、2つ以上のタイムアウトに関する少なくとも1つの組み合わせの関数としてモデリングされ、各タイムアウトは、印刷デバイス12、14のそれぞれのデバイス(または、少なくとも、アイドルモードの印刷デバイス)に対応する。タイムアウト費用の関数は、少なくとも、印刷デバイスの要求と、印刷デバイスに対する見込みの転送とをを与えて、アイドルモードと省電力モードとの間で印刷デバイスを遷移させる費用を含む。見込みの要求は、印刷デバイスの印刷ジョブに関する到着間隔に対する既知の確率分布から決定されてもよい。見込みの転送は、デバイスの選択に対する既知の確率分布、最適には、ユーザに対する予測転送費用から決定されてもよい。次に、タイムアウトの費用関数が、適切な最適化方法を使用して最小化される。他の実施形態において、タイムアウトの決定は、以下で考察されるように、同様に費用関数の最適化を利用するMDPを使用してモデリングされる。
【0051】
確率分布は多数の異なる方法で生成することが出来る。1つの方法においては、必須データ(例えば、到着間隔データ、デバイスの選択、および/または転送費用)が、印刷デバイス12、14から直接的に取得される。あるいは、必須データは、印刷デバイス12、14上での検索のために格納されると共に利用可能なデータを追跡するジョブから引き出されてもよい。または、データは、印刷活動をモニタリングするソフトウェアが存在する印刷ジョブ生成器をホストする印刷サーバまたはクライアントワークステーションから取得されてもよい。いくつかの実施形態において、これらの確率分布は、時刻などの異なる要求状態で変化してもよい。例えば、要求は正午と深夜とでは非常に異なっている可能性が高い。要求状態の変化は、上で記載されたように決定された確率分布から決定されてもよい。
【0052】
電力制御システム38は、ハードウェアで、またはソフトウェアとハードウェアとの組み合わせで実施されてもよい。例示的な実施形態において、電力制御システム38は、メモリ54と、メモリ54と通信するプロセッサ56とを含む。メモリ54は、マルチデバイス印刷システム10の電力消費を最適化することを含む、以下でさらに詳細に記載される例示的な方法を行うための命令を格納し、その命令はプロセッサ56によって実行される。電力制御システム38はさらに、通信ネットワーク28に接続されたデバイスと通信するための通信ユニット58を含む。1つ以上のシステムバス60が、プロセッサ56、メモリ54、および通信ユニット58などの、電力制御システム38の構成要素を連結する。通信制御システム38は、例えば、通信ネットワーク28を介して印刷デバイス12、14に連結されたサーバ上にあってもよい。しかしながら、いくつかの実施形態において、電力制御システム38は、印刷デバイス12、14のうちの一方と統合され、および/または印刷デバイス12、14にわたって分散される。
【0053】
「ソフトウェア」という用語は、本明細書において使用されるように、ソフトウェアの目的であるタスクを行うようにコンピュータまたは他のデジタルシステムを構成するための、コンピュータまたは他のデジタルシステムによって実行可能な命令の任意の集合または組を含むことが意図される。「ソフトウェア」という用語は、本明細書において使用されるように、RAM、ハードディスク、光ディスクなどの格納媒体に格納されたそのような命令を含むことが意図され、ROMなどに格納されたソフトウェアである所謂「ファームウェア」を含むことも意図される。そのようなソフトウェアは、様々な方法で組織されてもよく、ライブラリとして組織されたソフトウェア構成要素、遠隔のサーバなどに格納されたインターネットベースのプログラム、ソースコード、解釈コード、オブジェクトコード、直接実行可能なコードなどを含んでもよい。ソフトウェアは、システム・レベル・コード、または一定の機能を行うためにサーバまたは他の場所にある他のソフトウェアに対する呼び出しを起動してもよいことが企図される。
【0054】
「コントローラ」という用語は、本明細書において使用されるように、プロセッサとメモリとを含むことが意図される。「ユーザ入力デバイス」という用語は、本明細書において使用されるように、マウス、キーボード、タッチ・スクリーン・ディスプレイ、1つ以上のボタン、1つ以上のスイッチ、1つ以上のトグルスイッチなどのうちの1つ以上を含むことが意図される。「ユーザ出力デバイス」という用語は、本明細書において使用されるように、LCDディスプレイ、LEDディスプレイ、プラズマディスプレイ、投影ディスプレイ、タッチ・スクリーン・ディスプレイなどのうちの1つ以上を含むことが意図される。「通信ネットワーク」という用語は、本明細書において使用されるように、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、ワイヤレスネットワーク、有線ネットワーク、セル方式ネットワーク、USBおよびI2Cなどのデータバスなどのうちの1つ以上を含むことが意図される。「通信ユニット」という用語は、本明細書において使用されるように、モデム、イーサネット(登録商標)アダプタ、WiFiアダプタ、3Gモデム、ケーブルモデム、DSLモデム、およびネットワークとの通信を容易にするその他任意のアダプタまたはモデムのうちの1つ以上を含むことが意図される。
【0055】
「プロセッサ」という用語は、本明細書において使用されるように、マイクロプロセッサ、マイクロコントローラ、グラフィック・プロセシング・ユニット(GPU)、特定用途向け集積回路(ASIC)、フィールド・プログラマブルゲート・アレイ(FPGA)などのうちの1つ以上を含むことが意図される。さらに、印刷ジョブ生成器40のプロセッサ48および電力制御システム38のプロセッサ56などの上記のプロセッサはそれぞれ、例えば、シングル・コア・プロセッサ、デュアル・コア・プロセッサ(または、さらに一般的には、多重コアプロセッサ)、デジタルプロセッサおよび協働する数値演算コプロセッサ、デジタルコントローラなどによって様々に体現されることが出来る。電力制御システム38のプロセッサ56に関して、
図2に示された流れ図を実装することが出来る有限状態機械を実装することが出来る任意のデバイスが使用されることが出来る。
【0056】
「メモリ」という用語は、本明細書において使用されるように、非一時的コンピュータ読取り可能な媒体、磁気ディスクもしくは他の磁気格納媒体、光ディスクもしくは光格納媒体、フラッシュメモリ、ホログラフィックメモリ、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、もしくは他の電子メモリデバイスもしくはチップもしくは動作可能に相互接続されたチップの組、格納された命令がインターネット/イントラネットもしくはローカル・エリア・ネットワークを介して検索され得るインターネットサーバ/イントラネットサーバなどのうちの1つ以上を含むことが意図される。一実施形態において、印刷ジョブ生成器40のメモリ46および電力制御システム38のメモリ54などの上記のメモリのそれぞれが、ランダム・アクセス・メモリと読み取り専用メモリとの組み合わせを備える。例示的なメモリは、例示的な方法を行うための命令と、例示的な方法において使用され生成されるデータとを格納し、また、それぞれのコンピュータを動作させるための命令を動作させる。
【0057】
図2を参照して、マルチデバイス印刷システム10における電力消費を減少させるために上記の手法を実装するために使用されることが出来るマルチデバイスシステムにおいて電力消費を減少させる方法が説明される。方法は100で開始する。102において、システムのモデルが生成される。実行されるジョブが104において受信される。さらに、ジョブを実行するための印刷デバイス12、14のうちの一方の選択と、印刷デバイス12、14のうちの他の1つ以上のデバイスにジョブ10を転送するための転送費用とが106において受信される。プロセッサを使用して、ジョブを実行するデバイスが、第1の費用関数の最適化(例えば、最小化)を介して108で決定される。第1の費用関数は、選択と転送費用とに基づく。ジョブは、110において、決定されたデバイスに割り振られ、プロセッサを使用して、マルチデバイスシステム10における各デバイスに対するタイムアウトが、112において、第2の費用関数の最適化(例えば、最小化)を介して決定される。第2の費用関数は、システム10に関する見込みの電力消費に基づく。デバイスは、114において、決定されたタイムアウトを提供される。方法は、受信された新たなジョブ毎に、104に戻ることが出来ると理解されるべきであるが、方法は、16において終了する。
【0058】
図2に説明された方法は、コンピュータ上で実行されてもよいコンピュータプログラム製品に実装されてもよい。コンピュータプログラム製品は、制御プログラムが記録(格納)される非一時的コンピュータ読取り可能な記録媒体、例えば、ディスク、ハードドライブなどを備えてもよい。非一時的コンピュータ読取可能な媒体の通常の形態は、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、もしくはその他任意の磁気格納媒体、CD−ROM、DVD、もしくはその他任意の光媒体、RAM、PROM、EPROM、FLASH‐EPROM、もしくは他のメモリチップまたはメモリカートリッジ、もしくは、その他任意のコンピュータが読み取ったり使用したりすることが出来る有形媒体を含む。
【0059】
あるいは、方法は、伝送可能な搬送波などの一時的媒体に実装されてもよく、伝送可能な搬送波においては、制御プログラムは、無線波通信や赤外線データ通信の間に生成される伝送媒体などの音波または光波などの伝送媒体などを使用してデータ信号として体現される。
【0060】
あるいは、方法は、1つ以上の汎用コンピュータ、専用コンピュータ、プログラミングされたマイクロプロセッサもしくはマイクロコントローラ、および周辺集積回路素子、ASCIもしくは他の集積回路、デジタル信号プロセッサ、離散素子回路などのハードワイヤード電子回路もしくは論理回路、PLD、PLA、FPGA、グラフィカルカードCPU(GPU)、もしくはPALなどのプログラマブル論理デバイスなどに実装されてもよい。概して、
図2に示された流れ図を実装することが出来る有限状態機械を実装することが出来る任意のデバイスが、本方法を実装するために使用されることが出来る。
【0061】
例示的なマルチデバイス印刷システム10と方法とのさらなる詳細がここで記載される。
【0062】
システムのモデル
例示的な印刷システム10は、一組のデバイスとしてモデリングされ、それぞれのデバイスが、割り振られた費用、例えば、スリープモードや準備完了モードなどの様々な状態における電力消費費用や、デバイス間でジョブを転送するための(事前に決定された、および/またはユーザが割り振り可能な)転送費用を有する。システムモデル62は、メモリ54に格納されてもよく、またはシステムに格納されてもよい。モデル64は、実行される新たなジョブに関するパラメータを入力された時には、デバイスの現在の状態と、それらの見込みの将来の状態とに基づいて(実行されるジョブに対する見込みの将来の要求に基づいて)、システム10における全デバイスにわたって(すなわち、ジョブを行うことが出来る複数のデバイスに対して)、価値関数(エネルギー費用関数)に対する最適解を識別する。その解は、ジョブがシステム内の別のデバイスに転送されるべきか(そうである場合には、どのデバイスに転送されるべきか)、またはジョブが、ジョブチケットによってジョブが割り振られるデバイス上で実行されるべきかを示す。例示的なモデル64はまた、ジョブの割り振り決定に従って、デバイスに対するタイムアウトをコンピュータ計算する。
【0063】
電力消費を減少させる1つの手法は、制約された費用構造を有するマルコフ決定過程(MDP)としてマルチデバイス印刷システム10をモデリングすることである。MDPは、典型的には、最小費用を有する決定を識別することによって意思決定を容易にするために利用される。上記のように、電力消費は、印刷デバイスに対する印刷ジョブの割り振りとタイムアウトとを決定することによって最小化される。可能な決定のそれぞれが、マルチデバイス印刷システム10を異なるシステム状態にし、異なるシステム状態への遷移のそれぞれは費用を含む。
【0064】
マルチデバイス印刷システム10の状態は、要求状態と制御状態とによって与えられる。要求状態は、マルチデバイス印刷システム10に関して影響を与える少なくとも1つの可変の要求または負荷、例えば、時刻に対応する。その要求または負荷は、既知であると想定され、2つの確率変数の確率的挙動、次のジョブまでの時間(すなわち、到着間隔)、およびそのジョブに対するユーザのデバイス選択を決定する。これらの2つの確率変数に対する確率分布は、上で考察されたように決定される。制御状態は、システムにおける各印刷デバイスの動作モード、例えば、アイドルモードと省電力モードとのうちの一方に対応する。上記のように、各動作モードは、異なる電力消費レベルを有する。
【0065】
各印刷ジョブに対して、2つの決定(または決断)が行われる。第1の決定は、受信された印刷ジョブをどの印刷デバイスに割り振るべきかであり、その決定は、印刷ジョブが電力制御システム38によって受信された時に、電力制御システム38によって特定のデバイスに割り振る前に行われる。そのような決定は、印刷ジョブチケットにおいて特定されたものとして選択された印刷デバイスを考慮する。第2の決定は、どのタイムアウトが印刷デバイス12、14に割り振られるべきであるかである。この決断は、印刷ジョブを割り振った後に、電力制御システム38によって行われる。第1の決定とは対照的に、選択された印刷デバイスは、いつ決断を行うかを考慮に入れていない。
【0066】
決断によって負わされる費用は、2種類のものであり得る。第1の種類の費用は、ジョブが割り振られた時に負わされ、(必要とされる場合には)割り振られた印刷デバイスをアイドルモードに遷移させる費用に加えて、見込みの転送費用が存在する場合には、それを含む。上で考察されたように、見込みの転送費用は、典型的には、印刷ジョブが作成された時に設定され、印刷ジョブチケットに含まれることが出来る。第2の種類の費用は、タイムアウトが設定された時に負わされ、アイドルモードにおける各デバイスでのタイムアウトによって誘発される累積費用を含む。デバイスの個々の費用は、タイムアウトまたは次のジョブまでアイドルモードにおいてデバイスを維持する諸経費に加えて、タイムアウトに実際に到達した場合にはデバイスを省電力モードにする費用を含む。スリープモードにおいてデバイスを維持する費用、または実際にジョブを行うための費用は、それらがいかなる決断によって負わされたかを考慮される必要はない。
【0067】
一実施形態において、MDPは価値反復手順で解かれる。しかしながら、MDPを解くための他の手順もまた企図される。価値反復手順は、システムの各状態と関連付けるために見込みの費用(すなわち、その状態からの一連の全イベントに関する見込みの費用)をコンピュータ計算するダイナミックプログラミング技術である。見込みの費用は、典型的には、無限であるので、一実施形態においては、数列の区間は有界にされ、および/または指数関数的に、または別の方法で、時の経過に伴った、順序における異なるステップの寄与を減少させる割引係数が導入される。有界区間の使用が利用されることが出来るが、以下の解は割引係数を利用する。
【0068】
価値反復手順を使用してMDPを解くことに関する1つの問題点は、割り振りの直後に、ある状態の値をどのようにコンピュータ計算するか(すなわち、どのようにタイムアウトを決定するか)である。印刷デバイスの数と同じだけ多くの変数が存在し、各変数は1つのデバイスのタイムアウトを表す。さらに、印刷デバイスの数が少ない(例えば、10個以下)と想定される時さえ、解は、依然として非常に複雑であり、標準的な最適化方法に解を修正可能である凸状などの有利な性質を有していない。一実施形態において、問題が、一次元最適化の有界数列に問題を換算することによって解かれることが出来る。
【0069】
価値反復方法
価値反復手順と割引係数とを使用してMDPを解くために、マルチデバイス印刷システム10はK個の印刷デバイスを含むと仮定されることが出来、各印刷デバイスkは、2つの動作モード(0または1)を有し、0は、スリープモードなどの省電力モードを表し、1は、省電力モードよりも大きな電力が消費されるモード、例えば、アイドルモードを表す。二値の動作モードの組が考察を容易にするために選択されたが、それぞれのモードがそれぞれの電力消費を有する、例えば、3つのモード、4つのモード、または5つのモードなどのさらなるモードも企図される。
【0070】
各印刷デバイスkが、アイドルモードにおける電力費用率
【数4】
と、スリープ(省電力)モードにおける電力費用率
【数5】
と、印刷デバイスが省電力モードにある時の省力率a
kとを有するものと仮定する。費用率
【数6】
およびa
kはそれぞれ、単位時間当たりの通貨単位、例えば、ドル/時間として表されることが出来るか、または他の同様な単位で表されることが出来、そしてメモリ54に格納されることが出来る。省電力モードにおける電力消費は、アイドルモードの電力消費よりも少ないので、省力率a
kは、
【数7】
と等しい。さらに、各印刷デバイスkに、アイドルモードから省電力モードへの遷移に対する費用
【数8】
と、省電力モードからアイドルモードへの遷移に対する費用
【数9】
とを与える。これらの費用は、費用率
【数10】
およびa
kに関して通貨単位で表されることが出来、そしてメモリ54に格納されることが出来る。
【0071】
ベクトル(R
k)
1:kが生成されることが出来、各成分R
khは、デバイスkによって印刷されることが選択されたジョブをデバイスhに転送する費用である。理解されるように、このベクトルは、転送費用に対応する。ジョブの現在の費用を決定する時に、特定の転送費用が利用されることが出来、例えば、ジョブチケットにおけるジョブ16のサブミッタによって特定されることが出来る。見込みの費用を決定する時に、転送費用は、確率的に、または(全デバイスにわたる)システムの平均に基づいて決定されてもよい。ベクトルの成分R
khは、デバイスkがデバイスhと同じである場合には(転送費用が不要なので)ゼロの値を有すると想定され、そうでなければ、非負であると想定される。
【0072】
タイムアウトτの後にスリープモードに切り替えることが予定されると共に、期間xの間に、期間xの開始時に単一のジョブを割り当てられる、最初はアイドル(準備完了)モードの印刷デバイスkによって生成された全費用は、抑え難い費用や諸経費g
kを含む。抑え難い費用は、ジョブ実行費用に加えて、デバイスが全期間の間で最も費用効果が高いモード(すなわち、省電力モード)にある場合にデバイスによって負わされる費用
【数11】
を含む。諸経費g
kは、期間xのうちの一部または全部の間にアイドルモードでデバイスを維持する費用であり、その費用は、タイムアウトτによって制御される。従って、最初はアイドルモードであり、期間xの開始時に単一のジョブを割り振られるデバイスkに対する諸経費g
kは、下記のようにモデリングされることが出来る。
【数12】
【0073】
II[条件]は、括弧内の条件が真である時に1に戻り、そうでなければ0である。抑え難い費用は固定され、行われた決断によって影響を受けないので、諸経費g
kだけが考慮される。
【0074】
マルチデバイス印刷システム10は、順番に、印刷ジョブ16などのジョブリクエストを受信する。順番がn番目の印刷ジョブに関して、L
n∈{1:K}が、印刷ジョブに対して選択されたデバイスの指数であると仮定し、
【数13】
が、先の印刷ジョブがデバイスインフラストラクチャに提出されてから経過した時間(すなわち、大域的な到着間隔)であると仮定する(ここで、
【数14】
は、正数を示す)。n番目の印刷ジョブに選択されたデバイスL
nは、転送により印刷ジョブを実行したデバイスではないかもしれない。確率変数(XL)
nは、考えられる要求状態の任意の空間Zに存在する、観察された要求状態Z
nによって制御されるセミマルコフ動力学などの確率分布に従うことが想定される。
【0075】
2つの定常確率分布P、Qは、その過程を定義し、それらは既知であることがさらに想定される。
【数15】
【0076】
これらの方程式は、セミマルコフ仮定を表し、関連する2つの確率分布を明らかにする。それらは、最初の要求状態Z
0が与えられると、下記のように確率過程の生成モデルを記載する。
1 n:=1を設定する。
2 永遠に繰り返す:
3 X
n、L
nを分布
【数16】
から引き出す。
4 Z
nを
【数17】
から引き出す。
5 n+=1を設定する。
【0077】
「定常」は、これらの分布P、Qが、電力制御システム38によって行われた決断によって影響を受けないことを意味する。それらは、外部要求だけに対処し、これは、電力制御システム38の作用とは独立すると想定される。全体的に、確率変数(Z,X,L)
nは、P、Qによって決定された完全なマルコフ動力学に従う。
【0078】
セミマルコフ仮定を常に本質的に満たす要求状態に対する1つの(悪い)選択は、Z
nが要求の全履歴Z
n=(X,L)
1:nであると仮定することである。従って、Qは、決定性(すなわち、ディラック分布)であり、X
n=x、L
n=l、およびZ
n−1=zが与えられると、Qは、zの終了時に(x,l)を追加することによって取得された履歴z’にZ
nの全集団を集中させる。しかしながら、その場合、要求空間Zは扱いにくい。従って、扱いやすい要求空間Zと、セミマルコフ仮定を満たすモデルとの選択は用途に従う。例示的な実施形態において、決定性であっても決定性でなくてもよいP、Qに関して想定は行われないが、それらが既知であることが想定される。
【0079】
マルチデバイス印刷システム10をモデリングするために、ジョブ実行時間は僅かであることと、デバイスk上での実行のために選択されたジョブは、そのジョブがデバイスkまたは何らかの他のデバイスのいずれかに受信されるとすぐに割り振られることとが想定される。任意の時間におけるマルチデバイス印刷システム10の状態は、対<σ
1:K,z>によって与えられ、σ
1:Kはシステム10の制御状態であり、zはシステム10の要求状態を示す。制御状態σ
1:Kは、k番目の成分がデバイスkのモード(0または1)を保持する二値のベクトルである。
【0080】
デバイスのうちの1つで実行されるジョブを受信することに応答して、2つの決断が行われる。hが選択されたデバイスの指数であると仮定する。第1の決断は、ジョブを受診するとすぐに行われ、第1の決断は、どのデバイスにジョブを割り振るべきかである。第2の決断は、システム10が状態σである時に割り振りの直後に行われる。この決断は、非負のタイムアウトの集団(τ
k)
k∈σであり、各τ
kは、デバイスkに対するタイムアウト(すなわち、デバイスkがジョブを割り振られていない場合に、デバイスkが省電力モードに切り替えられる時間)を示す。
【0081】
割引係数γを用いて無限区間における最適化を考慮する。V
h<σ,z>とV<σ,z>とが、割り振りの前後にそれぞれ状態<σ,z>からの残りの見込みの最適費用であると仮定する。これらの費用に対する最適性方程式(すなわち、ベルマン方程式)は以下の通りである。
【数18】
【0082】
e
kは、サイズKのベクトルを示し、k番目の成分は1に等しく、他の成分は0に等しい。
【0083】
方程式(4)は、以下のように説明されることが出来る。デバイスhに対するジョブが状態<σ,z>において受信され、そのジョブが、デバイスhではなく、デバイスkに送信される場合には、残りの見込みの費用は、
1.R
hk:見込みの転送費用(h=kの場合にはゼロ)
【数19】
2:必要な場合にデバイスkを起動する費用(σ
k=1の場合にはゼロ、すなわち、デバイスは既にアイドルモードにある)
3.V<σ+(1‐σ
k)e
k,z>:同じ要求状態zと、デバイスkが現在アイドルモードにある新たな制御状態とからの残りの見込みの費用(σk=1である場合にはσに等しい、すなわち、デバイスは既にアイドルモードにある)
【0084】
方程式(5)は、以下のように説明される。(n−1)番目のジョブが割り振られた後の状態<σ,z>において(従って、Z
n−1=z)、タイムアウト(τ
k)
k∈σがアイドルデバイス(すなわち、σに属するデバイス)に適用される場合には、残りの見込みの費用は、以下の費用の確率変数X
n、L
n、Z
nに対する期待値(すなわち、方程式(2)および(3)によって定義された確率分布を有する確率変数の考えられる全ての値x,l,z’に対する積分)である。
1.Σ(τ
k)
k∈σg
k(x,τ
k):方程式(1)によって定義されるように、現在アイドルモードの各デバイスに対するタイムアウトによって導かれる全諸経費。この項はz’に従わないので、この項は、その変数に対する積分から取得されることが出来る。
2.γV
l(σ’,z’):新たなジョブがデバイスl上で受信されたが、まだ割り振られていない時の、新たな状態<σ’,z’>からの残りの割引費用。状態σ’はそのジョブが受信された時に依然としてアイドル状態であるデバイスからなり(すなわち、τ
k>xであるk∈σ)、その状態は、
【数20】
として記載されることが出来る。
【0085】
最適性方程式の換算
方程式(5)の最適化の問題は、制御変数τを変更することによって変換される。状態σにおいて、タイムアウトを割り振られる必要があるr=Σ
kσ
kのデバイスが存在する。方程式(5)は、全てのi∈{1:r}に対して、
【数21】
および
【数22】
であるように、τで、要素に関して分類された数列τ’
1:rと、単射v:{1:r}→{1:K}とを与えることによって便利に特定されることが出来る。次に、最適化が、制御変数v,τ’(利便性のために、τ’はτと改名される)を使用して再公式化される。
【数23】
【0086】
τはここで、r個の非減少成分を有するベクトルであり、σは目的から消滅したことが、方程式(6)において観察されることが出来る。vは、σのr非負成分の指数の順序であることだけが、制約に存在する。所与のτに関して、τをτ
0=0およびτ
γ+1=∞で拡張させる。全ての非負xに関しては、τは非減少であるので、τ
i−1≦x<τ
iであるように単一のi∈{1:r+1}が存在する。さらに、その場合、全てのj∈{1:r}に関して、全てのj∈{1:r}は、II[x<τ
i]=II[i≦j]を保持する。上記の方程式(6)を再公式化することが、下記を生じる。
【数24】
【0087】
この最小化問題は、サイズrの範囲における離散成分vと次元rにおける連続成分τとを有する。しかしながら、目的関数は、項r+1の合計であり、項r+1のそれぞれが、変数τ
i−1,τ
iおよび
【数25】
の限られた部分集合を含む。これは、目的関数が一連の一次元最適化に変換されることが出来ることを示唆する。中間値関数
【数26】
が導入されることが出来、その中間値関数は、その一連の流れの間の異なるステップにおける価値関数であり、下記の通りに後退帰納的に定義された単一の追加パラメータt(非負数)を有する。
【数27】
【0088】
任意のσ(ゼロ、または非ゼロ)に関して、下記が妥当性を有する。
【数28】
【0089】
問題を解くための価値反復アルゴリズムは、以下の通りに実装されることが出来る。
手順 価値反復
1 Vを初期化する。
2 繰り返す。
3 方程式(4)を使用して各h∈{1:k}に対するV
hをVから更新する。
4 方程式(8)および(9)を使用して
【数29】
から
【数30】
を更新する。
5 方程式(10)を使用して
【数31】
からVを更新する。
6 安定するまで。
【0090】
価値関数の伝播は、下記の通りに要約されることが出来る。
【数32】
【0091】
解の表示
上記に関する1つの課題は、
【数33】
の帰納的定義は、τ≧tおよび
【数34】
に対してt,σ’における全ての値に従って、所与の要求状態zにおいて、t,σにおける値をコンピュータ計算することである。有限で多数の
【数35】
が存在するが、無限で多数のτ≧tが存在する。この問題に対する解は、点別コンピュータ計算ではなく、関数空間における演算子に関する方程式の公式化を使用する。
【数36】
およびvを下記のとおりに定義する。
【数37】
ここで、gσ(x,t)=Σ
k∈σg
k(x,t)である。
【0092】
変換方程式(8)、(9)、および(10)は、下記をもたらす。
【数38】
【0093】
この変換の目的は、ここで、点別の方程式が以下の関数方程式に簡単な方法で変換されることが出来ることである。
【数39】
【0094】
ここで、
【数40】
という表記は、関数
【数41】
を示すために使用され、pは、何らかのパラメータ、またはそのタプルである。関数における演算子↓は、下記の通りに定義される
【数42】
【0095】
価値関数の伝播はここで、一般的に、
【数43】
として、下記の方程式を用いて要約されることが出来る(括弧内の数字は、使用される方程式を示す)。
【数44】
【0096】
zが与えられ、
【数45】
が、全σに対する初期関数
【数46】
からなる(有限の)組であると仮定する。コンピュータ計算可能な関数空間Fが識別され、その関数空間Fは、下記の特性を含む。
【数47】
【0097】
そのような空間が与えられると、v<t,σ,z>∈Fが、方程式(16)および(17)を使用してFにおいて帰納的に構築されることが出来、Vは、最終的にはvからコンピュータ計算されることが出来る。(A)を満たす明白な空間Fが存在しない場合には、Fは先験的に選択されることが出来る。その場合、
【数48】
の要素と、演算子min(f,g)および↓(f‐g)+gとが、(A)を満たす近似値によって置換される。近似値が考えられるそのような先験的な空間の典型的な例は、区分的な一定の関数の空間である。
【0098】
解関数空間の選択
関数空間を選択するために、F
cがf+r1の形態の関数の組であると仮定し、ここで、
【数49】
およびrは、任意のスカラである。さらに、F
*が区分的F
cである関数の空間(すなわち、
【数50】
の形態の関数の空間であり、(fk)
k∈Kは、F
cにおける関数の有限の集団であり、(Ak)
k∈Kは、実際の正数
【数51】
の組の間隔分割である)とする。下記の仮定が、
【数52】
が妥当性を有する場合には、F
*は、想定(A)を満たし、上記の処置に受け入れ可能であることが示されることが出来る。
【数53】
において、Tは+∞に等しくてもよいことを留意されたい。ここで、想定(A
*)は、やや軽いことが観察される。実際に、2つの関数、f、g∈F
cを考慮し、h=f‐gと仮定する。=
Iを、2つの関数が所与の間隔Iで同じである時に2つの関数間で保持する(等しい)関係を意味することを仮定する。
【0099】
II[h(t)≧0]が、tにおいて区分的定数である場合には、仮定
【数54】
は妥当性を有する(すなわち、hが、各各間隔において、均一的に負であるか、または均一的に非負であるかいずれかであるように、
【数55】
の間隔分割が存在する)。実際に、hが間隔Iにおいて負である場合には、min(f,g)=
If∈F
cであり、hが間隔Iにおいて非負である場合には、min(f,g)=
Ig∈F
cである。従って、min(f,g)は、区分的F
cであり、F
*に存在する。さらに、分割の間隔の境界はコンピュータ計算されることが出来、境界は、hの不連続点、またはh(t)=0である点のいずれかである。min(f,g)をコンピュータ計算する説明のために
図3を参照されたい。
【0100】
hが、有限の多数の不連続点だけを有し、II[∃τ>th
T(t)<h
T(t)]が、tにおいて区分的定数である場合には、想定
【数56】
もまた妥当性を有し、h
T=1
[0,T]hである。実際に、一定である間隔Iを考慮する。これらの間隔のうちの1つは、h
T=
I0であるI=[T,+∞]であるので、↓h
T+g=
Ig∈F
cである。ここで、I⊂[0,T]が与えられる。普遍性を失うことなく、hは、I上で連続的であると想定する(そうでなければ、不連続点でIを分割する)。全てのt∈Iおよびτ>tに関して、h
T(τ)≧h(t)が真である場合には、↓h
T(τ)=h(t)=f(t)−g(t)であるので、↓h
T+g=
If∈F
cである。一方、全てのt∈Iに関して、h
T(τ)<h(t)であるようにτ>tが存在する場合には、↓h
TがIに関して一定であることを示すことは容易である。
【0101】
従って、↓(1
[0,t](f−g))+gが区分的F
cであるのでF
*に存在する。間隔の境界はコンピュータ計算するのがわずかに困難である。コンピュータ計算は、本質的に、hの不連続点、hの局所的な最小値、および局所的な最小値の値が到達する点の識別を必要とする。↓(1
[0,t](f−g))+gをコンピュータ計算する説明のために
図4を参照されたい。
【0102】
実装
想定(A
*)が妥当性を有する場合には、v(t,σ,z)を取得するために必要とされるF
*における全コンピュータ計算がσ’、σ’’⊂σ(初期関数の相違)を有する形態
【数57】
の関数の空間
【数58】
において行われることが出来る。そして、このコンピュータ計算は、完全に、2つの手順SIGN(h,r)およびGLMB(h,r)に基づくことが出来、
【数59】
および
【数60】
である。GLMBという用語は、「最大下位単調境界」を意味する。
【0103】
両方の手順は、実際の正数
【数61】
の有限間隔分割を戻す。分割における各間隔Iに関して、SIGN(h,r)は、1
I(h‐r1)≧0である場合には、インジケータ+1を戻すか、または1
I(h‐r1)≦0である場合には、インジケータ−1を戻す。さらに、分割における各間隔Iに関して、GLMB(h,r)が、実際に一定である場合には、GLMB(h,r)は、↓(1
I(h−r1))=
Icであるように一定のスカラcを戻すか、または↓(1
I(h−r1))=
Ih−r1である場合には、特別なインジケータ⊥を戻す。両方の手順は、大まかな意味では「同質である」と考えられることを留意されたい。任意の定数αに関して、SIGN(αh,αr)およびGLMB(αh,αr)は、SIGN(h,r)およびGLMB(h,r)それぞれから導き出されることが出来る。厳密には、これは、α<0である時には手順GLMBに関してはあまり明白ではないかもしれないが、簡潔にするためにここでは省かれた、その手順のわずかにより対称的な定義は、手順を完全に同質にする。
【0104】
(簡潔にするために)
【数62】
におけるすべての関数が連続的であると想定すると、次に、両方の手順が、
【数63】
であるBEHAVIOR(h)手順と、
【数64】
および
【数65】
であるEVAL(h,t)手順とを使用して実装されることが出来る。
【0105】
BEHAVIOR(h)は、
【数66】
の有限間隔分割を戻し、分割の各間隔Iに関して、hが非減少である場合には、インジケータ+1を戻し、hが非増加である場合には、インジケータ−1を戻す。EVAL(h,t)は、値h(t)を戻すか、またはt=+∞の場合には、hの漸近線を戻す。例えば、SIGN(h,r)は、以下のアルゴリズムを用いて以下で示されるように実装されることが出来る。
手順 SIGN(h,r):
1 Pを空の間隔分割とする。
2 T:=+∞とする。
3 sをEVAL(h,T)−rの標識(+1または−1)とする。
4 減少する順序におけるBEHAVIOUR(h)における各間隔[u,v]に関して、
5 s’をEVAL(h,T)−rの標識(+1または−1)とする。
6 s≠s’である場合には、
7 二分することによって[u,v]上のh−r1の根tをコンピュータ計算する。
8 インジケータsを用いてPに間隔[t,T]を追加する。
9 s:=s’およびT:=tとする。
10 インジケータsを用いてPに間隔[0,T]を追加する。
11 Pを戻す。
【0106】
6行目において、条件が満たされた場合には、h−r1は、[u,v]の間に、標識を変更し、そして、手順BEHAVIORの定義によって、根はこの間隔の間単調であるので、根は固有である。7行目において根は二分することによってコンピュータ計算され、これは、利用可能な下位のプレディクタEVALに依存するだけである。しかしながら、7行目における根のコンピュータ計算は、任意の数値法または分析法によって行われることが出来ることが理解されるべきである。例えば、根は、ニュートン−ラプソン法などの高位のプレディクタを使用してコンピュータ計算されることが出来る。手順BEHAVIOR(h)は、手順が戻る分割の各間隔Iと追加の情報を関連付けることが出来る場合には、そのような方法もまた最適化されることが出来る。例えば、凸性行為がニュートン−ラプソン法を最適化するために使用されてもよいが、当然、分割自体は、単調性として改善される必要が有ってもよく、凸性が同じ間隔で同時に起こらない可能性がある。手順SIGNのステップは、
図3に続いて生じやすい。手順GLMBの同様な段階的な定義は、
図4を観察することによって考え出されることが出来る。
【0107】
モデルの初期化
要求を導き出す分布に関するいくつかのさらなる想定を用いて、
【数67】
における関数は、仮定の分析を簡略化する通常の形態を有する。
【数68】
【0108】
zが与えられると、xおよびlは独立し、そして、zlが与えられると、z’は、xから独立する。想定
【数69】
の下で、
【数70】
は、下記の形態のものであることが示されることが出来る。
【数71】
ここで、a
σ=Σ
k∈σa
k、
【数72】
であり、そして
【数73】
は下記の通りに定義される。
【数74】
【0109】
前者が連続的である場合にはいつでも、ψ’は、実際にψの導関数であることを留意されたい。方程式(34)は、解空間
【数75】
は、
【数76】
によって広げられた関数空間に含まれることを意味する。手順SIGNおよびGLMBが同質であるので、ψ+cψ’の形態またはψ’単独の形態の関数に関して手順をどのようにコンピュータ計算するかを知ることで十分である。
【0110】
意思決定を簡略化する特別な特性を有するいくつかの例が、以下に記載される。
【0111】
1.単一のデバイス
システム10が単一の印刷デバイスだけを含むと仮定する。理解されるように、この例は、方法の適用可能性を示し、例示的なマルチデバイスシステムを表すことを意図していない。そのようなシステムにおいて、ジョブの割り振りに対する代替案は存在しない。さらに、2つの制御状態0または1だけが存在するが、省電力モードは割り振りの直後(すなわち、単一のデバイスがアイドルモードにある時)に予定されることだけを必要とするので、状態1だけが関心のある状態である。次に、最適化問題は、以下の方程式に簡略化される。価値関数の伝播がV→Vとして要約されることが出来る。
【数77】
【0112】
所与の要求状態zにおいて、上記の最小化問題は、分布Qに依存せず、考えられる次の状態に対する積分から外れることが観察されることが出来る。言い換えると、最適化は、各要求状態において独立して行われることが出来、一区間の区間においてのみ行われることが出来る。価値関数の実際のコンピュータ計算は、関心のあるものではなく、所与の要求状態zにおける最適なタイムアウトの予定は、上記の最小化目的によって直接的に取得され、その最小化目的は、(zを省略して)下記のように書き換えられることが出来る
【数78】
【0113】
従って、下記が妥当性を有する。
【数79】
【0114】
方程式(33)は、分布Pが密度f(すなわち、dP(x)=f(x)dx)を有すると共にFがPの累積密度であると想定すると、単に目的の導関数を取り消すことによって取得される。
【0115】
2.無記憶プロセス
この例においては、Pは、単一の要求状態下での指数関数であるので、Qは自明であり、要求状態は式においては省略されることが出来る。Pは下記の通りに表されることが出来る。
【数80】
ここで、Σ
lπ
l=1である。
【0116】
これは、ジョブリクエストが、速度λのポアソン分布プロセスに従って到着し、各リクエストは、デバイスに対するパラメータπの多項式に従って独立して送られることを想定する。あるいは、そして同様に、任意の1つのデバイスIに対するリクエストは、速度λπ
lのポアソン分布プロセスに従って到着し、デバイスは独立している。想定
【数81】
は、結果
【数82】
を保持する。
【0117】
方程式(17)から理解されることが出来るように、定数−a
σ/λは、その定数が、σ=0であるときにはゼロであり、そうでなければ無関係であるので、
【数83】
に落とされることが出来ることを留意されたい。従って、空間
【数84】
は、exp(−λ)だけによって広げられる一次元関数空間に含まれる。
【0118】
任意のスカラaに関して、
【数85】
であることが示されることが出来る。
【0119】
これは、下記の簡略化された方程式をもたらす。
【数86】
【0120】
無記憶プロセスの場合における価値関数の伝播は、方程式(40)および(41)を用いてV→V
1:k→Vとして要約されることが出来る。
【0121】
V,V
1:Kがこれらの方程式を満たす場合には、最適な制御が下記の通りに取得される。
・デバイスh上でジョブリクエストを受信する際の状態<σ>において、方程式(40)の最小値がkにおいて到達されるようにデバイスkにジョブリクエストを割り振る。
・割り振り後の状態<σ>において、方程式(41)の最小値がσ’において到達されるようにシステムの制御状態の値(σ’⊂σ)を見出し、現在その状態に対応するモードにある(k∈σ’)全てのデバイスに対してはτ
k=∞において、そして、その状態に対応するモードではない(k∈σ/σ’)他の全てのデバイスに対してはτ
k=0においてスリープモードに切り替えることを予定する。
【0122】
3.部分的に明らかにされたプロセス
分布PおよびQは、要求プロセスのドライバである。数列
【数87】
が与えられ、下記の通りに、分布P’およびQ’によって導出された要求プロセスの変化形を考慮する。変化系の状態空間は、
【数88】
であり、そして、全i∈{1:N}に対しては、
(1)
【数89】
は、(x
i,l
i)上に全集団を集める。さらに、z∈Zに対して、
【数90】
である。
(2)
【数91】
は、
xlに依存せず、状態i+1上に全集団を集め、ここで、表記を簡略化するために、z
n+1∈Zで識別された状態N+1が導入される。さらに、z∈Zに対して、
【数92】
である。
【0123】
言い換えると、P’,Q’は、N個の第1の項目が規定されるプロセスを駆動し、残りのものがP、Qによって駆動される。要求状態z∈Zにおける最適な価値関数は、元々のプロセスP、Qとその変化形P’、Q’との下では同一である。従って、規定された要求状態i∈{1:N}だけが関心のあるものである。これらの状態において、想定
【数93】
は妥当性を有し、下記をもたらす。
【数94】
【0124】
任意の非減少関数fに関して、
【数95】
であることが示されることが出来る。
【0125】
これは、下記の簡略化された方程式をもたらす。
【数96】
【0126】
次に、部分的に明らかにされた場合に対する価値関数の伝播が、方程式(45)および(46)を用いてV→V
1:k→Vとして要約されることが出来る。
【0127】
V、V
1:kがこれらの方程式を満たす場合には、最適な制御が下記の通りに取得されることが出来る。
・デバイスhに対するジョブリクエストを受信する際の状態<σ,i>において、方程式(46)における最小値がkにおいて到達されるようにデバイスkにジョブリクエストを割り振る。
・割り振り後の状態<σ,i>において、方程式(47)における最小値がσ’において到達されるようにσ’⊂σを見出し、全てのデバイスk∈σ’に対してτ
k=∞において、そして、全てのデバイスk∈σ\σ’に対してτ
k=0においてスリープモードに切り替えることを予定する。
【0128】
4.ワイブル要求
この例において、Pは、単一の要求状態の下で、ワイブル分布となるように考慮されるので、Qは自明であり、要求状態は、式において省略されることが出来る。Pは、下記の通りに表されることが出来る。
【数97】
ここで、Σ
lπ
l=1である。
【0129】
さらに、想定
【数98】
は、下記をそのままにして保持する。
【数99】
【0130】
γは、不完全なガンマ関数を示し、Ψは関数
【数100】
を示す(従って、kだけに依存する)。再スケーリングするまで、
【数101】
における関数は、指数関数的な形状を有するΨ’、または
図5に示される異なる形状を想定することが出来ると共に、k≠1である時に下記の特徴を有するΨ+cΨ’のいずれかの形態のものである。
(1)それらの関数は、常に継続的であり、0において値cを有し、
【数102】
によって与えられた無限大において制限を有する。
(2)それらの関数は、c≦0の場合には単調に増加し、そうでなければ、それらの関数は、k>1である場合には最大であり、k<1である場合には最小である
【数103】
において、単一の局所的な最適条件を有する。
(3)それらの関数は、c≦0でありk<1である場合には凹性であり、そうでなければ、それらの関数は、単純な多項式
【数104】
の単一の変曲点の解を有する。
【0131】
ここで、方程式は単純化されないが、原始関数BEHAVIORおよびEVALはコンピュータ計算することが容易である。従って、手順SIGNおよびGLMB、従って、方程式(19)〜(23)を満たす各制御状態σに対する関数v<・,σ>およびスカラV
k<σ>は、コンピュータ計算することは容易である。全ての関数は、2つの係数、すなわち関数が及ぶ空間におけるΨおよびΨ’に関するものによって単純に(区分的に)表される。次に、最適な制御が以下の通りに取得されることが出来る。デバイスh上でジョブリクエストを受信する際の状態<σ>において、方程式(4)の最小値がkにおいて到達されるようにデバイスkにジョブリクエストを割り振る。割り振り後の状態<σ>において、σの要素の数列を見出し、方程式(14)における最小値が到達されるタイムアウト値τを整合させ、初期化としてt=0で方程式(13)を使用し、次のステップにおけるtの値として数列において各ステップにおけるτの値を報告する。
【0132】
5.他の要求分布
多くの他の要求分布は、上記のワイブル分布の例と同じ方法で取り扱われることが出来る。上記の分布の例は、以下を含む。単一の要求状態が存在する(従って、Qは自明であり、要求状態は式においては省略されることが出来る)。そして、
【数105】
は妥当性を有し、それは、本質的に、要求がは独立して大域的なジョブフローを生成して、デバイス間の一定の多項式に従ってやはり独立して各ジョブを送ることを意味する。関数ψ’は、本質的には、Pと関連付けられる補完的な累積分布関数であり、多くの場合に分析形態を有する。関数ψはψ’の積分によって取得される。分析形態は、ワイブルの場合のように、ψに対して利用可能である場合には、関心のある関数に対する、形態ψ+cψ’の原始関数BEHAVIORおよびEVALのコンピュータ計算が、分析的にか、または(一次元における)いくつかの単純な数値法を使用してかのいずれかで解かれることが出来る。ψが分析形態を有さない場合には、ψは積分の概算によって点別に依然としてコンピュータ計算され、数値法に当てはめられることが出来る。
【0133】
例示的な実施形態の範囲を限定することを意図することなく、以下の例示的な実験例は方法の利用可能性を説明する。
【実施例】
【0134】
1.模擬要求実験
模擬要求を使用して実験を行なった。この実験は、以下のステップ(i)ψおよびψ’が分析形態を有する分布Pだけでなく、送るための何らかの任意の多項式分布πを選択することと、(ii)長さTであるN個の要求数列を生成することにより、何らかの所与の要求状態において開始することと、(iii)要求P、πの下で様々な方策の価値関数をコンピュータ計算することと、(iv)N個の数列のそれぞれに対して、その数列が明らかにされた時に、各方策の変化形をコンピュータ計算することと、(v)T個のステップのそれぞれにおいて、2種類の方策(明らかにされていないもの、および明らかにされたもの)によって生成された費用をコンピュータ計算することと、(vi)N個の数列全体にわたる費用を平均することとを含んだ。結果として得られるT個の(累積)費用が描かれることが出来、各方策に対して、Tまでの未来関数が既知である時のその方策と、既知ではない時のその方策との間のリグレット関数を示す。あらゆる場合において、明らかにされた方策が元々の関数よりも悪くはない関数を行うことが予期される。
【0135】
上記のようにコンピュータ計算された最適な方策である転送方策と、各デバイスが別個に、(上記の単一のデバイスの場合に関して)他のデバイスから独立してデバイス自体の最適化を実装する利己的方策との2つの方策を利用した。利己的方策は、大域的要求から容易にはコンピュータ計算されない。実際に、大域的要求プロセスは、デバイス固有の要求プロセスを誘発し、そのデバイス固有の要求プロセスは、大域的な要求プロセスとは非常に異なるものであってもよく、容易にコンピュータ計算可能ではないものであってもよい。概して、デバイスlに対する要求プロセスは、大域的要求の順序nの自己畳込みの幾何学的な重みπ
l(1−π
l)
nを有する無限混合として取得される。しかしながら、速度λを有する指数関数的な大域的要求の場合において、コンピュータ計算は簡略化され、デバイスlに対する個々のデバイスの要求もまた、速度π
lλを有する指数関数である。その場合、2つの方策である転送方策と利己的方策とを比較することが可能である。
【0136】
結果が
図6〜9に示される。
図6および
図7の図は、低転送費用と高転送費用とをそれぞれ有する2つの方策に対する累積費用を示す。
図6を参照すると、実線は転送方策に対応し、破線は利己的方策に対応し、短い破線と長い破線とは、利己的方策と転送方策との両方に対する部分的に明らかにされた変化形に対応する(すなわち、累積費用は同じである)。
図7を参照すると、破線は利己的方策と転送方策との両方に対応する(すなわち、累積費用は同じである)。短い破線と長い破線とは利己的方策と転送方策との両方に対する部分的に明らかにされた変化形に対応する(すなわち、累積費用は同じである)。論理的には、元々の方策のそれぞれに対してそのような1つの変化形があるが、それらは、ほぼ同一であり、図上では区別することが出来ない。さらに詳細には、2つの変化形は、元々の方策が顕著であるときには、数列の終わりにおいてわずかに異なるが、この相違は、実際の要求の認識が引き継ぐ、数列における早い段階で迅速に消去される。
図8および
図9の図は、低転送費用と高転送費用とのそれぞれに関して、順序の終了時における、割り振り費用(許可された場合には、起動費用に加えた転送費用)とタイムアウト費用(スリープモードに切り替える費用に加えた、準備完了モードにおけるエネルギー消費)との間の費用の乖離を詳細に述べる。これらの割り振り費用は、細切れにされた長方形として示される。(垂直な線によって識別される)満たされた棒は、元々の方策のためのものであり、白い棒は、その方策の部分的に明白にされた変化形のためのものである。
【0137】
2.実際の要求実験
実際の要求データを使用して別の実験を行なった。この実験は、下記のステップ、(i)大域的要求モデルをデータに適合させることと、(ii)この要求モデル下で転送方策の価値関数をコンピュータ計算することと、(iii)デバイスのそれぞれに対して、そのモデルに対応するデータに個々の要求モデルを適合させることと、(iv)デバイスが単独であることを想定して、その要求モデル下で利己的方策の価値関数をコンピュータ計算することと、(v)利用可能なデータに関して転送方策の費用と利己的方策の費用とをコンピュータ計算することとを含んだ。模擬データとの主な相違は、ここで、大域的要求モデルと、各デバイスに対する個々のモデルとが、同じ集団(例えば、ワイブル)から選択されることが出来ることである。なぜならば、それらのモデルは両方とも、いずれにしても正確ではない可能性が非常に高いからである。
【0138】
低転送費用と高転送費用とのそれぞれに関して、結果が
図10および11に示される。データは、1ヶ月にわたって、最も使用される3つのデバイスだけが保有される実際のインフラストラクチャから取得された約3600のジョブからなる。それぞれの日の最初のジョブは、その到着時間、典型的には前日の夜からの到着時間および典型的には異常値が数えられないように除去される。有用な手段が、転送方策の費用に対する利己的方策の費用の比である「利得」によって与えられる。利得は、2つの係数の関数として
図12に描かれる。(対数尺度における)転送係数が、転送費用行列Rに倍数的に適用される。その係数が小さくなる時には、転送費用が減少し転送によってより高い利得を可能にする。(やはり対数尺度である)電力係数は、消費費用速度ベクトルaに倍数的に適用される。係数が小さくなる時には、消費が減少し、全デバイスに対するより長いタイムアウトを可能にし、利得を増加させる。
【0139】
本開示は、マルチデバイス印刷システム10に関して記載されてきたが、本開示は他の用途計画に用途を見出すことが理解される。例えば、本開示は、在庫管理システムに適用されることが出来、在庫管理システムにおいては、印刷デバイス12は、ある費用で取替え可能な、在庫における品物と置換され、電力消費は維持費に対応し、品物がないことに対する不利益は無限大である(これは、ジョブをすぐに実行することに関する制約に対応する)。さらに、単一の項目が複数の要求に役立つことが出来るので、項目に関する2つ以上の構成単位に対する必要性は存在せず、おそらくは費用で構成単位を捨てる選択肢が存在する。
【0140】
さらに、本開示は電力消費に関して記載されたが、本開示はエネルギー消費に対してさらに広範囲に適用可能であることが理解される。本明細書において使用されるように、「エネルギー」という用語は消費される電力の量である。対照的に、電力は、エネルギー消費の速度である。印刷システムに関して、エネルギー費用は、印刷ジョブを完了するために使用される電力の量、紙、インク/トナー、および取替が必要な他の資源を作るエネルギー費用などを含む。例えば、より軽い紙に印刷することは、エネルギーを節約する。なぜならば、厚い紙は、製造するためにより多くのエネルギーを必要とするからである。従って、本開示は、消費可能な構成要素(例えば、インク、紙など)などの、プリンタの構成要素を製造するエネルギーを含み、最も少ないエネルギー量を使用するように、印刷ジョブを転送し、タイムアウトを最適化することが出来る。