近似アルゴリズム 第10章 終了時刻最小化スケジューリング

Slides:



Advertisements
Similar presentations
『わかりやすいパターン認 識』 第 5 章 特徴の評価とベイズ誤り確率 5.4 ベイズ誤り確率と最近傍決定則 発表日: 5 月 23 日(金) 発表者:時田 陽一.
Advertisements

模擬国内予選2013 Problem F テトラ姫のパズル 原案:須藤 解答:大友、須藤 解説:須藤.
1. 補間多項式 n 次の多項式 とは、単項式 の 線形結合の事である。 Definitions: ( 区間, 連続関数, abscissas (データ点、格子点、差分点), 多項 式 ) Theorem. (補間多項式の存在と一意性) 各 i = 0, …, n について、 をみたす、次数が高々 n.
J: Magical Switches JAG 模擬地区予選 2013 原案:保坂 解答:保坂・楠本 解説:保坂.
オンライン学習 Prediction Learning and Games Ch2
点対応の外れ値除去の最適化によるカメラの動的校正手法の精度向上
ネットワーク理論講義補助資料 Text. 組合せ最適化とアルゴリズム 4.5 節 主・双対法 pp
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
黒澤 馨 (茨城大学) 情報セキュリティ特論(4) 黒澤 馨 (茨城大学) 2017/3/4 confidential.
ラベル付き区間グラフを列挙するBDDとその応用
第11回 整列 ~ シェルソート,クイックソート ~
データ構造とアルゴリズム論 第6章 探索のアルゴリズム
    有限幾何学        第8回.
Pattern Recognition and Machine Learning 1.5 決定理論
Extremal Combinatorics 14.1 ~ 14.2
Extremal Combinatrics Chapter 4
Approximation of k-Set Cover by Semi-Local Optimization
C言語 配列 2016年 吉田研究室.
遺伝アルゴリズムによる NQueen解法 ~遺伝補修飾を用いた解探索の性能評価~
アルゴリズムイントロダクション18章 D3照山順一.
論理式の表現を数学的に取り扱いやすくするために代数学の助けを借りる.
情報工学概論 (アルゴリズムとデータ構造)
データ構造と アルゴリズム 第二回 知能情報学部 新田直也.
 Combinations(2)        古川 勇輔.
9.NP完全問題とNP困難問題.
岩井 儀雄 コンピュータ基礎演習  ー探索、整列ー 岩井 儀雄
10.通信路符号化手法2 (誤り検出と誤り訂正符号)
計算量理論輪講 岩間研究室 照山順一.
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
k 個のミスマッチを許した点集合マッチング・アルゴリズム
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
決定木とランダムフォレスト 和田 俊和.
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
第9章 混合モデルとEM 修士2年 北川直樹.
7.4 Two General Settings D3 杉原堅也.
第5章 特徴の評価とベイズ誤り確率 5.5 ベイズ誤り確率の推定法 [1] 誤識別率の偏りと分散 [2] ベイズ誤り確率の上限および下限
第3回 アルゴリズムと計算量 2019/2/24.
アルゴリズムとデータ構造 第3章 ヒープ 6月10日分
25. Randomized Algorithms
Selfish Routing and the Price of Anarchy 4.3
計算量理論輪講 chap5-3 M1 高井唯史.
情報生命科学特別講義III (13) 固定パラメータアルゴリズムと 部分k木
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
プログラミング 4 探索と計算量.
情報とコンピュータ 静岡大学工学部 安藤和敏
九州大学大学院 情報学専攻特別講義 (6) 固定パラメータアルゴリズムと 部分k木
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
第4章 識別部の設計 4-5 識別部の最適化 発表日:2003年5月16日 発表者:時田 陽一
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
B03 量子論理回路の 最適化に関する研究 西野哲朗,垂井淳,太田和夫,國廣昇 電気通信大学 情報通信工学科.
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
Selfish Routing 4章前半 岡本 和也.
直並列グラフの連続多重彩色 西関研究室 吉田進太郎.
Max Cut and the Smallest Eigenvalue 論文紹介
情報工学概論 (アルゴリズムとデータ構造)
11.動的計画法と擬多項式時間アルゴリズム.
第2章 統計データの記述 データについての理解 度数分布表の作成.
4.プッシュダウンオートマトンと 文脈自由文法の等価性
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
Q q 情報セキュリティ 第8回:2004年5月28日(金) の補足 q q.
参考:大きい要素の処理.
13.近似アルゴリズム.
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
Q q 情報セキュリティ 第7回:2005年5月27日(金) q q.
生物情報ソフトウェア特論 (10)固定パラメータアルゴリズムと 部分k木
コンピュータの高速化により, 即座に計算できるようになってきたが, 手法的にはコンピュータ出現以前に考え出された 方法が数多く使われている。
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
京都大学 情報学研究科 通信情報システム専攻 高田智史 joint work with 伊藤大雄 中村義作
Presentation transcript:

近似アルゴリズム 第10章 終了時刻最小化スケジューリング 徳山研究室 B4 鈴木晶子

終了時刻最小化スケジューリング 入力 ジョブを 個の同一なマシーンに割り当てる 最小の終了時刻を実現するスケジュールを求める 処理時間        の  個のジョブ 整数 ジョブを  個の同一なマシーンに割り当てる 終了時刻 最小の終了時刻を実現するスケジュールを求める

発表の流れ 2近似アルゴリズム 終了時刻最小化スケジューリング問題に対するPTAS 定理10.8 ビンパッキング問題へのリダクション 制限されたビンパッキング問題 コアアルゴリズム 定理10.8 終了時刻最小化スケジューリング問題に対するアルゴ リズムは、終了時刻が高々              の正しいスケジュールを求める。

2近似アルゴリズム (アルゴリズム10.2) ジョブを勝手に順番付ける。 この順番でジョブをマシンにスケジュールする。    このとき、それまでに割り当てたジョブの負荷が    最も少ないマシンに次のジョブを割り当てる。

定理10.3 アルゴリズム10.2は、終了時刻最小化スケジューリング問題に対して、近似保証2を達成する。 [証明]   最適終了時刻OPTに対する2つの下界   を用いる。 平均終了時刻 最大処理時間

定理10.3の証明 アルゴリズムで作られたスケジュールで、 :最後にジョブが終了するマシーン : の最後のジョブのインデックス    :最後にジョブが終了するマシーン    :  の最後のジョブのインデックス      :ジョブ の処理が開始された時間 とする。

定理10.3の証明 の時刻まではどのマシーンも稼動中なので、 また、 したがって、このスケジュールの終了時刻は

例題10.4 アルゴリズム10.2のタイトな例 処理時間1の  個のジョブと、   処理時間  の1個のジョブ 個 個 終了時刻は 最適解

最小終了時刻の上界と下界 最小終了時刻の下界 最小終了時刻の上界 定理10.3より、 最小終了時刻は、区間[LB, 2・LB]内に存在する

ビンパッキング問題へのリダクション 終了時刻 t のスケジューリングが存在するための必要十分条件 ビンパッキング問題へのリダクション n 個のサイズ         の品物を   容量 t の m 個のビンにパッキングできること ビンパッキング問題へのリダクション   個の品物のサイズ        を I と表す サイズ t のビンに、 n 個の品物をパッキングする このとき、使用するビンの最小個数を      とする   最小終了時刻は

ビンパッキング問題へのリダクション 最小終了時刻 を どのようにして求めるか 最小終了時刻の下界と上界はLBと2・LB 最小終了時刻              を どのようにして求めるか 最小終了時刻の下界と上界はLBと2・LB 区間[LB, 2・LB]を2分探索することにより、           を満たす最小の t を求める  bins( I, t ) を求める必要があるが、   ビンパッキング問題はNP-困難  異なる品物のサイズが定数個のとき、 ビンパッキング問題は多項式時間で解ける

制限されたビンパッキング問題 異なる品物のサイズが定数個のときのパッキングを求める 例: k :異なる品物のサイズ(定数) ビンの容量は1とする 例: 0.8 ビン 容量1 0.5 0.4 0.4 0.2

動的計画法に基づくアルゴリズム 準備 品物のサイズを順番に並べる。 各サイズの品物の個数をならべた k 組の数          をビンパッキング問題のインスタンスとする。 インスタンス         の品物をパッキングするのに必要な最小ビン数を           とする。 0.8 0.5 0.4 0.4 0.2

動的計画アルゴリズム 与えられたインスタンス に対して、 を計算する。 容量1のビン1個の中に入る品物の個数 与えられたインスタンス         に対して、    を計算する。 容量1のビン1個の中に入る品物の個数            の組を全て求め、その集合を  とする。 0.8 0.5 0.4 0.4 0.2

動的計画アルゴリズム 各                               に対して、各           の値の表を作成する。 初期値 0 0 1 0 0 1 1 1 0 2 1 2 1

動的計画アルゴリズム 各 に対して、各 の値の表を作成する。 表の残りの要素の値を、 から計算する。 0 0 1 0 0 1 1 1 0 2 各                               に対して、各           の値の表を作成する。 表の残りの要素の値を、 から計算する。 0 0 1 0 0 1 1 1 0 2 1 2 1

表の残りの要素の値を、 から計算する。 0 0 1 0 0 1 1 1 0 2 1 2 1 2 3 2

動的計画アルゴリズムの計算時間 パッキングする品物の数の合計を とする。 与えられたインスタンス に対して を満たす集合 を計算する パッキングする品物の数の合計を  とする。 与えられたインスタンス        に対して                   を満たす集合  を計算する 各                             に対し て           の値の表を作成する 全ての場合について当てはめてみればよいので、   の要素は高々     個 各要素の計算時間は      時間 の表全体は      時間で計算できる

ビンパッキング問題へのリダクション 品物のサイズが定数個ならば、 最適なパッキングを求めることが可能 品物のサイズが定数個になるように補正すれば、 サイズが定数個でなくても 最適パッキングを求めることが可能 最小終了時刻の計算に誤差をある程度認めれば、 最小終了時刻スケジューリング問題は ビンパッキング問題にリダクションできる

コアアルゴリズム 最小終了時刻を計算するPTASの中核となるアルゴリズム 入力 インスタンス I ビンの容量 t 誤差パラメータε インスタンス I に対する、容量 t(1+ε) のビンへのパッキングと、パッキングに必要なビンの数         を求める 終了時刻 t(1+ε) のスケジュールと、それを実現するために必要なマシンの数を求める

コアアルゴリズム サイズ tε未満の品物を除く サイズが定数個になるように、品物のサイズを補正する 動的計画アルゴリズムを用いて、    パッキングする

コアアルゴリズム εを誤差パラメータとする t は区間[LB, 2・LB]内にあるとする サイズtε未満の品物を除く サイズが定数個になるように、品物のサイズを補正する 補正した品物を容量 t のビンにパッキングする ビンの容量を t(1+ε) とし、残りの小さい品物を パッキングする  εを誤差パラメータとする   t は区間[LB, 2・LB]内にあるとする 最初、サイズ tε未満の品物は無視する

コアアルゴリズム 各 に対して、区間 に 属するサイズ を、 で置き換える。 サイズtε未満の品物を除く サイズが定数個になるように、品物のサイズを補正する 補正した品物を容量 t のビンにパッキングする ビンの容量を t(1+ε) とし、残りの小さい品物を パッキングする 各    に対して、区間              に 属するサイズ  を、         で置き換える。 もとのサイズ   補正後のサイズ  

コアアルゴリズム 各品物は、高々 の割合でサイズを縮小されている 異なる品物のサイズの個数 k は より サイズtε未満の品物を除く サイズが定数個になるように、品物のサイズを補正する 補正した品物を容量 t のビンにパッキングする ビンの容量を t(1+ε) とし、残りの小さい品物を パッキングする もとのサイズ   補正後のサイズ    各品物は、高々   の割合でサイズを縮小されている  異なる品物のサイズの個数 k は                      より

コアアルゴリズム 異なるサイズが k 個の品物について、サイズ t のビン に対する最適パッキングを決定する。 動的計画アルゴリズムを用いる サイズが定数個になるように、品物のサイズを補正する 補正した品物を容量 t のビンにパッキングする ビンの容量を t(1+ε) とし、残りの小さい品物を パッキングする 異なるサイズが k 個の品物について、サイズ t のビン に対する最適パッキングを決定する。 動的計画アルゴリズムを用いる  各品物は、高々   の割合でサイズを縮小されている  ビンの容量を     とすれば、サイズをもとに戻しても 正しいパッキングになる

コアアルゴリズム ビンのサイズを として、最初に除いた小さい品物をグリーディーにビンの隙間へ入れていく。 サイズtε未満の品物を除く サイズが定数個になるように、品物のサイズを補正する 補正した品物を容量 t のビンにパッキングする ビンの容量を t(1+ε) とし、残りの小さい品物を パッキングする ビンのサイズを     として、最初に除いた小さい品物をグリーディーにビンの隙間へ入れていく。 必要ならば新しいビンを開けて用いる。

補題10.5 コアアルゴリズムで使用されるビンの個数を とおく。このとき、 [証明] アルゴリズムで小さい品物を入れるとき コアアルゴリズムで使用されるビンの個数を         とおく。このとき、 [証明] アルゴリズムで小さい品物を入れるとき 新しいビンが使用されない場合 新しいビンが使用された場合 に分けて証明する。 インスタンス I をサイズ t のビンにパッキング する時に使用する、ビンの最小個数

補題10.5の証明 新しいビンが使用されない場合 小さく補正された品物は、サイズ t のビンに最適にパッキングされている もとのインスタンスには、アルゴリズムでパッキングされた品物よりも大きな品物が含まれている もとのインスタンスをサイズ t のビンにパッキングするには、少なくとも      個のビンが必要

サイズtのビンへのIの品物の最適パッキングは、 補題10.5の証明 新しいビンが使用される場合 最後のビンを除いて、どのビンにも t を越えて品物が入れられている これらの品物をサイズ t のビンに入れようとすると、少なくとも       個のビンが必要となる …… したがって、 サイズtのビンへのIの品物の最適パッキングは、 ビンを少なくとも      個用いる

系10.6 補題10.5より、 これらより、 を決定することができると… コアアルゴリズムの出力より、容量 t(1+ε) のビンへの これらより、  を決定することができると… コアアルゴリズムの出力より、容量 t(1+ε) のビンへの パッキングを求めることができる 終了時刻 t(1+ε) のスケジュールを求めることができる 終了時刻 (1+ε)OPT 以内のスケジュールを求めることが できる

2分探索 を求める 区間[LB, 2・LB]を2分探索することにより求める 一度2分探索が行われるごとに、探索区間の範囲は半分になる               を求める 区間[LB, 2・LB]を2分探索することにより求める 一度2分探索が行われるごとに、探索区間の範囲は半分になる ε・LB以下→探索終了 LB 2・LB 探索を多項式時間内で終了するために、探索区間 の範囲が    以下になったら探索を終了する 探索の回数は     回

補題10.7 2分探索において、終了時点での区間の右側の点をTとする。 このとき、 が成り立つ。 [証明] このとき、           が成り立つ。 [証明]              は区間[LB, 2・LB]に含まれるので、                     (系10.6)        (OPTの下界) これらより、 LB 2・LB 終了時点での探索区間

終了時刻最小化スケジューリング問題に対するアルゴリズム 区間[LB, 2・LB]を2分探索 探索区間の中点 t について、コアアルゴリズムを用いて      を求める           なら t の右側を探索           なら t の左側を探索 探索区間の範囲が    になったら探索を終了 終了時点での区間の右側の点を T とする  t = T に対するコアアルゴリズムの出力から、スケジュールを得る LB 2・LB

定理10.8 このアルゴリズムは、終了時刻が高々 の正しいスケジュールを求める。 [証明]  このアルゴリズムは、終了時刻が高々  の正しいスケジュールを求める。 [証明] t = T に対するコアアルゴリズムの出力は、終了時刻が高々      のスケジュール              (補題10.7) よって終了時刻は高々

アルゴリズムの計算時間 制限されたビンパッキング問題に対する動的計画アルゴリズムの計算時間: コアアルゴリズムの計算時間: 異なる品物のサイズの数 k : 2分探索の回数:      回 これらを合わせると、計算時間は ただし、

おわり