Partitioning Trees with Supply, Demand and Edge-Capacity (需要点、供給点、辺容量を持つ 木を分割するアルゴリズム) 西関研究室 M1309 川端真生 1 研究背景 • 電力配送問題 [伊藤 et al. ‘05] – 各供給点はどの需要点にどれだけの電力を送れ ばよいのか – 各送電線には流せる電力量に上限(辺容量)が ある [本研究] 2 分割問題 需要点 発電所 送電線 3 分割問題 需要点 8 供給点 15 25 7 辺容量 必要な電力 3 12 2 6 11 10 7 供給可能な 量 Yes, No 判定問題 2 3 20 8 7 7 7 1 15 15 辺容量 5 7 20 8 8 4 12 18 15 6 11 8 辺を除去し, いくつかの連結成分に分割 供給点 需要点 4 分割問題 13 15 8 8 7 15 供給点 需要点 7 3 3 12 2 6 5 20 Yes, No 判定問題 8 6 5 2 10 11 3 77 1 7 2 3 7 1 15 7 15 辺容量 25 18 7 8 20 8 8 4 4 12 18 14 15 6 8 11 8 18 各成分にちょうど1つの供給点 フロー その供給量は需要量の合計以上 流れるフローは辺容量を超えない(フロー≦辺容量)5 分割問題 結果 • (辺容量のない)一般のグラフ対してNP完全 [伊藤 et al. ‘05] • (辺容量のある)木に対して 線形時間アルゴリズムを与えた 6 分割問題アルゴリズム 需要点 • 入力: – 木(需要点,供給点,辺容量) 17 • 出力: 6 – 分割がある – 分割がない 28 25 • 時間計算量: 辺容量 5 10 5 15 7 8 4 供給点 – 線形時間 n:点数 7 分割問題アルゴリズム 9 14 26 4 19 7 4 1 5 3 26 32 32 12 14 7 5 45 14 7 9 4 3 1 2 8 5 8 分割問題アルゴリズム 7+1+3 7 5 4 1 3 9 12 14 14 需要量≦辺容量 19 7 4 1 11 5 3 12 26 14 4 26 32 32 12 14 7 5 45 14 7 9 4 3 1 2 8 5 9 分割問題アルゴリズム 11 11 12 9 12 14 14 12 min{14,12} 4 19 32 26 32 11 12 14 7 5 26 45 14 7 9 4 3 1 2 8 5 10 分割問題アルゴリズム 11 1 12 9 14 12-11 12 26 4 19 26 32 32 11 12 12 7 5 45 14 7 9 4 3 1 2 8 5 11 分割問題アルゴリズム 9 14 26 4 19 1 26 32 32 7 5 45 14 7 9 4 3 1 2 8 5 12 分割問題アルゴリズム 9 14 26 4 19 1 26 32 27 45 14 7 9 4 3 1 2 8 5 13 分割問題アルゴリズム 9 14 26 4 19 1 32 27 26 45 14 10 9 8 5 14 分割問題アルゴリズム 9 14 26 4 19 1 32 27 26 45 14 10 14 15 分割問題アルゴリズム 9 14 26 23 26 45 14 10 14 16 分割問題アルゴリズム 9 14 23 26 2 17 分割問題アルゴリズム 5 18 分割問題アルゴリズム 9 14 26 4 19 7 4 1 5 3 26 32 32 12 14 7 5 45 14 7 9 4 3 1 2 8 5 分割あり 19 分割問題アルゴリズム 9 14 26 4 7 19 12 18 10 1 4 8 3 7 25 27 14 7 4 6 3 8 3 1 4 20 分割問題アルゴリズム 9 14 4 19 8 26 7 12 18 10 6 21 分割問題アルゴリズム 9 14 8 26 7 22 分割問題アルゴリズム 16 分割はない 時間 n:点数 23 最大分割問題 7 6 8 9 8 6 15 14 1 6 20 9 17 10 2 9 5 5 6 23 7 13 3 8 3 4 15 8 7 2 8 7 4 辺容量 供給点 需要点 分割はない 電力が供給される需要量を最大にする 24 最大分割問題 8 7 14 6 8 9 8 8 7 1 15 6 15 3 5 14 14 10 8 5 3 6 6 20 9 8 17 8 2 9 23 7 2 13 3 8 4 2 充足量:45 15 12 8 7 4 8 7 4 辺容量 供給点 需要点 電力が供給される需要量を最大にする 25 最大分割問題 7 6 8 9 8 6 15 14 1 6 20 9 17 10 2 9 5 5 6 23 7 13 3 8 3 4 15 8 7 2 8 7 4 辺容量 供給点 需要点 電力が供給される需要量を最大にする 26 最大分割問題 8 7 17 6 8 9 8 7 8 16 6 15 3 5 14 6 10 8 5 3 6 5 1 20 6 9 8 13 11 7 2 17 2 3 2 9 4 2 8 23 充足量:49 15 13 8 7 8 7 4 辺容量 供給点 需要点 電力が供給される需要量を最大にする 27 最大分割問題 結果 • (辺容量のない)木に対してすらNP困難 [伊藤 et al. ‘05] • (辺容量のある)木に対してアルゴリズムを与えた – 擬多項式時間 – FPTAS • 任意の誤差εについて,nとεの多項式時間である 極めてよい近似アルゴリズム n:点数 28 最大分割問題アルゴリズム 需要点 • 入力: – 木(需要点,供給点,辺容量) 17 • 出力: 6 – 最大分割 • 供給される需要点の需要量 が最大になる分割 • 時間計算量 – 擬多項式時間( 辺容量 5 10 5 28 25 15 7 8 4 供給点 ) n:点数 =min{22,30}=22 5+6+7+4=22 25+5=30 29 擬多項式時間アルゴリズム • 動的計画法 – 小さな部分解からより大きな部分解を計算する 5 8 4 3 2 10 20 10 6 7 3 10 4 2 6 5 1 14 15 7 10 5 4 4 2 30 • 5 2 6 7 3 5 10 20 2 4 2 5 7 10 6 5 31 • 2 2 7 6 3 5 10 20 5 10 4 2 5 6 5 32 5 8 4 2 10 20 3 10 6 7 3 10 4 2 6 5 1 14 15 7 10 5 4 4 2 33 5 8 4 2 10 20 3 10 6 7 3 10 4 2 6 5 1 14 15 7 10 5 4 4 2 34 23 22 5 5 8 3 2 0 1 0 4 2 1 0 7 1 0 3 4 充足量=max{23,22}=23 2 6 8 4 1 6 5 1 5 1 4 7 1 0 6 5 2 0 1 0 7 4 2 1 0 1 0 3 4 4 2 3 2 1 6 5 1 1 4 5 7 1 0 5 4 4 2 35 time ・一つの表に対して ・ 高々 合計 : で計算できる 回の表の更新を行う 36 FPTAS(Fully Polynomial-Time Approximation Scheme) • 完全多項式近似スキーム 0<ε<1なる任意の精度εに対して 最大化問題 最適解: f 近似解: f A • f A (1 ) f 計算時間がnと1/εの多項式になる 37 FPTAS • 擬多項式時間アルゴリズムを変更する Fの値まで1ずつ計算する t md : 最大の需要量 8 2 6 1t 7 3 10 10 4 6 20 2 5 5 4 10 1 14 15 3 7 5 10 4 4 2 38 FPTAS 最適解 t 2nt 近似解 39 FPTAS Optimum Approximation md : 最大の需要量 41 FPTAS • 時間計算量 – 擬多項式時間 FPTAS md : 最大の需要量 42 結論 • 辺容量のある木に対する – 分割問題 • 線形時間アルゴリズム – 最大分割問題 • 擬多項式時間アルゴリズム • FPTAS を与えた. 43 課題 • より大きなグラフのクラスについて 考える. 直並列グラフ • 計算時間量の削減. FPTAS 44 Publication • M. Kawabata and T. Nishizeki, “Prtitioning trees with supply, demand and edge-capacity,” IEICE Trans. on Fundamentals of Electronics, Communications and Computer Science, to appear. 45
© Copyright 2024 ExpyDoc