[論文レビュー] Reallocation Problems in Scheduling
本稿では、マルチプロセッサ環境におけるユニット長のジョブと時間窓を対象とした動的スケジューリングアルゴリズムを提示し、ジョブの挿入・削除時にリアロケーションコストを最小化する。階層的予約システムに加え、ウィンドウトリミングとデアモタライズド再構築を用いることで、1回の操作あたり$O(\min\{\log^{*}n, \log^{*}\Delta\})$のリアロケーションを達成する。ここで$n$はアクティブなジョブ数、$\Delta$は最大ウィンドウサイズを表す。
In traditional on-line problems, such as scheduling, requests arrive over time, demanding available resources. As each request arrives, some resources may have to be irrevocably committed to servicing that request. In many situations, however, it may be possible or even necessary to reallocate previously allocated resources in order to satisfy a new request. This reallocation has a cost. This paper shows how to service the requests while minimizing the reallocation cost. We focus on the classic problem of scheduling jobs on a multiprocessor system. Each unit-size job has a time window in which it can be executed. Jobs are dynamically added and removed from the system. We provide an algorithm that maintains a valid schedule, as long as a sufficiently feasible schedule exists. The algorithm reschedules only a total number of O(min{log^* n, log^* Delta}) jobs for each job that is inserted or deleted from the system, where n is the number of active jobs and Delta is the size of the largest window.
研究の動機と目的
- 動的でオンラインな環境における時間窓付きジョブスケジューリングにおいて、リアロケーションコストを最小化する課題に対処すること。
- 以前に割り当てられたジョブのリスケジューリングを可能にしつつ、その変更コストを低く抑えるスケジューリングシステムを設計すること。
- ジョブの挿入・削除が行われても常に実行可能なスケジュールを維持するため、スケジュール内の余剰時間を活用すること。
- 階層的スケジューリングとウィンドウトリミングを用いて、効率的なアモタライズドおよびデアモタライズド性能保証を達成すること。
- ジョブ中心のリアロケーションコストモデルを導入することで、既存のロバストでインクリメンタルなスケジューリングに関する結果を統合・一般化すること。
提案手法
- 各レベルが指数的に増加する時間間隔を管理する、複数レベルにわたる階層的予約を備えたピッキング・オーダー・スケジューラを採用する。
- 不変条件4.9を介して、すべてのジョブウィンドウに十分な空きスロットが確保されることを保証する「満たされた予約」の概念を用いる。
- ジョブ時間ウィンドウのサイズを$2\gamma n^*$に制限するためのウィンドウトリミングを適用し、$\gamma$-アンダーアロケーションを維持する。
- 古いスケジュールと新しいスケジュールの間でジョブを段階的に移行させる交替的な時間スロットを用いることで、再構築プロセスをデアモタライズ化し、1操作あたり$O(1)$のアモタライズドコストを確保する。
- $n^*$をダブルイングおよびハーフィング戦略で維持することで、階層内のレベル数を制限し、$n$および$\Delta$に関して対数的深さを保証する。
- 数列$\log^*$を用いてレベル数を制限し、$\log^*$の成長が極めて遅い性質を活かして、1操作あたりのリアロケーションコストをほぼ定数に近づける。
実験結果
リサーチクエスチョン
- RQ1ジョブの挿入・削除が行われても、特にスケジューリングの連鎖的再配置効果が生じる状況下でも、リアロケーションコストを最小化する動的スケジューリングアルゴリズムを設計可能か?
- RQ2時間窓付きの動的ジョブスケジューリングシステムにおいて、実行可能なスケジュールを維持するためのリアロケーションコストの理論的下界は何か?
- RQ3高い最悪ケースコストを負担せずに、リアロケーションベースのスケジューリングにおいて、効率的なアモタライズドおよびデアモタライズド性能を達成する方法は何か?
- RQ4スケジュール内の余剰時間は、どれほど活用可能か?また、その活用によってリスケジューリングの連鎖反応を抑制し、1回の操作あたり移動させるジョブ数を削減できるか?
- RQ5ジョブ中心のリアロケーションコストモデルは、オンラインおよびロバストスケジューリング分野における既存の結果を統合し、それらを改善可能か?
主な発見
- 提案されたアルゴリズムは、各挿入・削除操作が高々$O(\min\{\log^{*}n, \log^{*}\Delta\})$のリアロケーションを引き起こすことを保証する。ここで$n$はアクティブなジョブ数、$\Delta$は最大ジョブウィンドウサイズを表す。
- 階層的予約システムを用いることで、動的更新後でもすべてのジョブウィンドウに少なくとも1つの空きスロットが確保され、実行可能性が保証される。
- $2\gamma n^*$に制限されたウィンドウトリミングにより、$\gamma$-アンダーアロケーションが維持され、階層内のレベル数が$O(\log^{*}(4\gamma n))$に抑えられる。
- 交互に使用する時間スロットを用いて、古いスケジュールと新しいスケジュールの間でジョブを段階的に移行させることで、デアモタライズド化が達成され、1操作あたり$O(1)$のアモタライズドコストが保証される。
- 入力インスタンスが十分にアンダーアロケートされていると仮定すれば、アルゴリズムは最適なリアロケーションコストの境界を達成する。その境界は、逆アッカーマン関数の反復対数関数に依存する。
- ジョブをまずアラインメントおよびトリミングすることで、非整列ジョブに対してもフレームワークを一般化可能であり、アンダーアロケーション性質が定数倍の要因まで保たれる。これにより、マルチマシンシステムへの拡張が可能になる。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。