LCP_4_pivoting_methods_2

99cfc0731733bd5e0382e3cde4bc80af?s=47 seytwo
June 13, 2020

 LCP_4_pivoting_methods_2

99cfc0731733bd5e0382e3cde4bc80af?s=128

seytwo

June 13, 2020
Tweet

Transcript

  1. 2020/6/13 1 線形相補性問題ゼミ④ 線形相補性問題ゼミ 4章 ピボットアルゴリズム 後半 せい@seytwo https://epubs.siam.org/doi/book/10.1137/1.9780898719000?mobileUi=0 一人輪読

  2. 4. Pivoting Methods 1. Invariance Theorems 2. Simple Principal Pivoting

    Methods 3. General Principal Pivoting Methods 4. Lemke’s Methods 5. Parametric LCP Algorithms 6. Variable Dimension Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 2 目次
  3. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 3 目次
  4. 要約 ⚫ 扱う問題 − パラメトリックLCP: − ベクトルが直線上を移動する問題の集合 ⚫ パラメトリックLCPの目的 −

    ベクトルの変化と解の変化の関係を知ること ⚫ おもしろみ − ピボットアルゴリズムを使うと解の変化がよく わかる 2020/6/13 線形相補性問題ゼミ④ 4 4.5 Parametric LCP Algorithm
  5. パラメトリックLCPの定義 ⚫ 定義:パラメトリックLCP(0 + , ) − ベクトルが直線上を移動する問題の集合 − 定数

    ∈ ℝ, 変数 ∈ Λ ⊆ ℝ − の範囲Λは線分や半直線でもOK ⚫ 例 2020/6/13 線形相補性問題ゼミ④ 5 4.5 Parametric LCP Algorithm 0 1 2 1 -1 1 1 -1 1 2 2 1 -1 1 4 2 0 0 0 1 2 1 -1 1 1 -1 0 2 2 1 -1 1 1 0 1 0
  6. 幾何的解釈 ⚫ 相補錐上にベクトルの範囲を記述 2020/6/13 線形相補性問題ゼミ④ 6 4.5 Parametric LCP Algorithm

    0 = 0 + 1 2 −1 −2 1 , 2 1 , 2 1 , 2 0 1 2 1 -1 1 1 -1 1 2 2 1 -1 1 4 2 0 0 0 1 2 1 -1 1 1 -1 0 2 2 1 -1 1 1 0 1 0
  7. 解の存在性とベクトルの範囲 ⚫ 仮定:はQ0行列 − 実行可能なら解を持つ ⚫ 解が存在するの範囲は線分上 ∗ , ∗

    − 直線 −∞, ∞ や半直線 ∗ , ∞ , −∞, ∗ の場合も 2020/6/13 線形相補性問題ゼミ④ 7 4.5 Parametric LCP Algorithm 1 2 −1 −2 ∗ ∗ = ∞
  8. 解の基底とベクトルの範囲 ⚫ が少し動いても解の基底は変わらない − 解の基底が変わらないの範囲がある ⚫ PLCPを解く = 解の基底が変わらないの範囲を列挙する 2020/6/13

    線形相補性問題ゼミ④ 8 4.5 Parametric LCP Algorithm 1 2 −1 −2 1 , 2 1 , 2
  9. PLCPとピボットアルゴリズム ⚫ を十分に大きくとる ⚫ 解の基底が変わる境界までを小さくする ⚫ 境界の変数をピボットする 2020/6/13 線形相補性問題ゼミ④ 9

    4.5 Parametric LCP Algorithm 1 2 −1 −2 1 , 2 1 , 2
  10. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 10 目次
  11. 概要 ⚫ やること − 部分問題を順番に解くことで元の問題を解く ⚫ おもしろみ − 実行可能性がきれいに整っていくので効率的 (に思える)

    − (理論的保証はない) 2020/6/13 線形相補性問題ゼミ④ 11 4.6 Variable Dimension Schemes
  12. 主部分問題の定義 ⚫ 定義:主部分問題 − LCP( , ) − インデックス集合 ⊆

    1, … , で抽出したLCP ⚫ 例 − = 1,2 2020/6/13 線形相補性問題ゼミ④ 12 4.6 Variable Dimension Schemes 1 2 3 4 1 -10 2 3 3 2 2 -12 2 2 2 3 3 -9 2 3 3 1 4 -8 1 1 1 2
  13. 主部分問題の定義 ⚫ 定義:主部分問題 − LCP( , ) − インデックス集合 ⊆

    1, … , で抽出したLCP ⚫ 例 − = 1,2 2020/6/13 線形相補性問題ゼミ④ 13 4.6 Variable Dimension Schemes 1 2 3 4 1 -10 2 3 3 2 2 -12 2 2 2 3 3 -9 2 3 3 1 4 -8 1 1 1 2
  14. 適用条件 ⚫ 仮定:行列は完全Q0かつ列適切 − 完全Q0 • すべての主部分行列がQ0行列 • :実行可能なら解を持つ −

    列適切 • w-唯一性を満たす • :∃ ∈ ℝ, ∀ ∈ SOL , , = + • 主部分問題の解の選択方法は元問題の解に影響しない 2020/6/13 線形相補性問題ゼミ④ 14 4.6 Variable Dimension Schemes
  15. Van der Heydenのアルゴリズム ⚫ 概要 − = 1 の主部分問題を解く −

    = 1, … , ∪ + 1 の主部分問題を解く • = 1, … , の実行可能性を保ったままピボット ◦ minimum ratio test ◦ 基底がゼロになる最小の値だけ入変数を増加させる − の要素数は単調増加 • 効率が良さそう(理論的保証なし) 2020/6/13 線形相補性問題ゼミ④ 15 4.6 Variable Dimension Schemes
  16. Van der Heydenのアルゴリズム ⚫ main(, ) 1. let = 1

    , … , and = 1 , … , 2. while not ≥ 0 3. let = min : < 0 4. let = 1, … , 5. solve LCP( , ) by sub 2020/6/13 線形相補性問題ゼミ④ 16 4.6 Variable Dimension Schemes
  17. Van der Heydenのアルゴリズム ⚫ sub(, , ) 1. let be

    a distinguished (blocking) variable 2. do 3. let the complement of the last blocking variable be a driving variable 4. get the blocking variable by minimum ratio test 5. pivot driving, blocking 6. while blocking ≠ distingised 2020/6/13 線形相補性問題ゼミ④ 17 4.6 Variable Dimension Schemes ↓ ゼロにしたい基底変数 正にする非基底変数 ↓ ↓ ゼロにする基底変数
  18. 実行例 1 2 3 4 1 -10 2 3 3

    2 -10 2 -12 2 2 2 3 -12 3 -9 2 3 3 1 -9 4 -8 1 1 1 2 -8 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 18 4.6 Variable Dimension Schemes
  19. 実行例 入 1 2 3 4 目出 1 -10 2

    3 3 2 -10 2 -12 2 2 2 3 -12 3 -9 2 3 3 1 -9 4 -8 1 1 1 2 -8 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 19 4.6 Variable Dimension Schemes
  20. 実行例 入 1 2 3 4 目出 1 5 1/2

    -3/2 -3/2 -1 5 2 -2 1 -1 -1 1 -2 3 1 1 0 - -1 1 4 -3 1/2 -1/2 -1/2 1 -3 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 20 4.6 Variable Dimension Schemes
  21. 実行例 入 1 2 3 4 出 1 5 1/2

    -3/2 -3/2 -1 5 目 2 -2 1 -1 -1 1 -2 3 1 1 0 - -1 1 4 -3 1/2 -1/2 -1/2 1 -3 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 21 4.6 Variable Dimension Schemes
  22. 実行例 入 1 1 3 4 出 2 10/3 1/3

    -2/3 -1 -2/3 10/3 目 2 -16/3 2/3 2/3 0 5/3 -16/3 3 1 1 0 0 -1 1 4 -14/3 1/3 1/3 0 4/3 -14/3 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 22 4.6 Variable Dimension Schemes
  23. 実行例 入 1 1 3 4 2 10/3 1/3 -2/3

    -1 -2/3 10/3 目出 2 -16/3 2/3 2/3 0 5/3 -16/3 3 1 1 0 0 -1 1 4 -14/3 1/3 1/3 0 4/3 -14/3 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 23 4.6 Variable Dimension Schemes
  24. 実行例 入 2 1 3 4 2 6 1/2 -1

    -1 -3/2 6 目出 1 8 3/2 -1 0 -5/2 8 3 9 3/2 -1 0 -7/2 9 4 -2 1/2 0 0 1/2 -2 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 24 4.6 Variable Dimension Schemes
  25. 実行例 入 2 1 3 4 2 6 1/2 -1

    -1 -3/2 6 1 8 3/2 -1 0 -5/2 8 出 3 9 3/2 -1 0 -7/2 9 目 4 -2 1/2 0 0 1/2 -2 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 25 4.6 Variable Dimension Schemes
  26. 実行例 入 2 1 3 3 2 15/7 -1/7 -4/7

    -1 3/7 15/7 1 11/7 3/7 -2/7 0 5/7 11/7 出 4 18/7 3/7 -2/7 0 -2/7 18/7 目 4 -5/7 5/7 -1/7 0 -1/7 -5/7 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 26 4.6 Variable Dimension Schemes
  27. 実行例 入 2 1 3 3 出 2 15/7 -1/7

    -4/7 -1 3/7 15/7 1 11/7 3/7 -2/7 0 5/7 11/7 4 18/7 3/7 -2/7 0 -2/7 18/7 目 4 -5/7 5/7 -1/7 0 -1/7 -5/7 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 27 4.6 Variable Dimension Schemes
  28. 実行例 入 2 1 2 3 出 3 15/7 -1/7

    -4/7 -1 3/7 15/7 1 11/7 3/7 -2/7 0 5/7 11/7 4 18/7 3/7 -2/7 0 -2/7 18/7 目 4 -5/7 5/7 -1/7 0 -1/7 -5/7 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 28 4.6 Variable Dimension Schemes
  29. 実行例 入 2 1 2 3 3 15/7 -1/7 -4/7

    -1 3/7 15/7 1 11/7 3/7 -2/7 0 5/7 11/7 4 18/7 3/7 -2/7 0 -2/7 18/7 目出 4 -5/7 5/7 -1/7 0 -1/7 -5/7 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 29 4.6 Variable Dimension Schemes
  30. 実行例 入 4 1 2 3 3 2 -1/5 -3/5

    -1 2/5 2 1 2 3/5 -1/5 0 4/5 2 4 3 3/5 -1/5 0 -1/5 3 目出 2 1 7/5 1/3 0 1/5 1 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 30 4.6 Variable Dimension Schemes
  31. 実行例 4 1 2 3 3 2 -1/5 -3/5 -1

    2/5 2 1 2 3/5 -1/5 0 4/5 2 4 3 3/5 -1/5 0 -1/5 3 2 1 7/5 1/3 0 1/5 1 0 0 0 0 2020/6/13 線形相補性問題ゼミ④ 31 4.6 Variable Dimension Schemes
  32. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 32 目次
  33. 概要 ⚫ 示すこと − Z行列のLCPはnステップで解けること ⚫ アイデア − 基底に入った変数 は非基底に戻らない

    2020/6/13 線形相補性問題ゼミ④ 33 4.7 Methods for Z-Matrices
  34. Z行列の定義 ⚫ 定義:Z行列 − Z行列⇔非対角成分が非正 2020/6/13 線形相補性問題ゼミ④ 34 4.7 Methods

    for Z-Matrices = − − − − − − 1 2 2 1 = 1 ⊤ 2 ⊤
  35. Chandrasekaranのアルゴリズム 1. let = ∅ 2. while not ഥ ≥

    0 3. select ∈ ത such that < 0 4. if ≤ 0 then infeasible 5. pivot , 6. add into 7. return = , ഥ = 0 2020/6/13 線形相補性問題ゼミ④ 35 4.7 Methods for Z-Matrices
  36. Z行列の性質① ⚫ 性質① − 行列がZ行列 − (∃, < 0, ≤

    0) ⇒ LCP(, )は実行不能 2020/6/13 線形相補性問題ゼミ④ 36 4.7 Methods for Z-Matrices 1 2 3 1 + + - - 2 - - - - 3 + - - + 1 = 0 1 = 0 1 2 = 0 2 = 0 2 2 1 ≥ 0は ≥ 0と交わりがないため 必ず実行不能
  37. Z行列の性質② ⚫ 性質② − 行列がZ行列 − でピボット後の行列′ − −1 ≥

    0 ⇒ ′ = ′ ഥ ′ ഥ ′ ഥ ഥ ′ = + + − 2020/6/13 線形相補性問題ゼミ④ 37 4.7 Methods for Z-Matrices 1 2 3 4 1 + + + + 2 + + + + 3 - - - 4 - - -
  38. 計算量 ⚫ 定理: − 行列がZ行列 − ⇒Chandrasekaranはnステップで終了 ⚫ 証明 −

    はピボット可能⇒ −1 ≥ 0 − 基底に入った変数 は非基底に戻らない • を大きくすると, は大きくなる 2020/6/13 線形相補性問題ゼミ④ 38 4.7 Methods for Z-Matrices 1 2 3 4 1 + + + + + 2 + + + + + 3 - - - + - 4 - - - = 3 = 1,2
  39. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 39 目次
  40. 概要 ⚫ やること − nステップで解ける行列クラスを拡張 ⚫ アイデア − 「基底に入った変数 は非基底に戻らない」と

    いう性質を持つ,より広い行列クラスを定義 2020/6/13 線形相補性問題ゼミ④ 40 4.8 A Special n-Step Scheme
  41. nステップベクトルの定義 ⚫ 定義:nステップベクトル − 行列のnステップベクトル > 0 ∈ ℝ −

    ⇔∀ ⊆ 1, … , , −1 > 0 ⚫ 幾何的解釈 − の列ベクトルの錐結合で を表現可能 2020/6/13 線形相補性問題ゼミ④ 41 4.8 A Special n-Step Scheme 1 2 1 2
  42. nステップスキーム ⚫ アルゴリズム − を十分に大きくとる • 自明解 = 0が得られる −

    解の基底が変わる境界までを小さくする − 境界の変数をピボットする 2020/6/13 線形相補性問題ゼミ④ 42 4.8 A Special n-Step Scheme 1 2 −2 −1 ′ = +
  43. 計算量 ⚫ 定理: − 行列は非退化&nステップベクトルを持つ − ⇒nステップスキームはnステップで終了 ⚫ 証明 −

    基底に入った変数 は非基底に戻らない • を小さくすると, は大きくなる 2020/6/13 線形相補性問題ゼミ④ 44 4.8 A Special n-Step Scheme 1 2 3 4 1 + - 2 + - 3 4 = 1,2 − −1 < 0
  44. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 45 目次
  45. 概要 ⚫ 退化していると循環が起きうる ⚫ 循環を防ぐためのピボットルール − 辞書的ルール − 最小添え字ルール 2020/6/13

    線形相補性問題ゼミ④ 46 4.9 Degeneracy Resolution
  46. 4. Pivoting Methods 5. Parametric LCP Algorithms 6. Variable Dimension

    Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 47 目次
  47. 概要 ⚫ 行列計算の実装上の工夫 − 逆行列は使わず,線形方程式系を解きましょう − アルゴリズムによっては不要なブロック行列が あるので,そこの計算は省きましょう ⚫ 指数ステップが必要となる最悪ケース

    − Murtyの最悪ケース − パラメトリックLemkeの最悪ケース − Birge-Ganaの最悪ケース 2020/6/13 線形相補性問題ゼミ④ 48 4.10 Computational Consideration
  48. 最悪ケースの定義 ⚫ 定義:Murtyの最悪ケース − LCP(− , ) − 上三角行列 ∈

    ℝ× • = 0 > , 1 = , 2 < • ∈ P行列 − ベクトル = − = − ∈ ℝ 1 2 3 = −1 −1 −1 + 1 2 2 0 1 2 0 0 1 1 2 3 2020/6/13 線形相補性問題ゼミ④ 50 4.10 Computational Consideration, Murtyの最悪ケース
  49. 性質 ⚫ 性質① − Murtyの最悪ケースの解は − 1 , … ,

    −1 , = 0, … , 0, 1 ⚫ 性質② − 入れ子構造になっている 1 2 3 = −1 −1 −1 + 1 2 2 0 1 2 0 0 1 1 2 3 ⚫ 性質③ − LCP(− 2 , 2 )はSPPMで3ステップ 2020/6/13 線形相補性問題ゼミ④ 51 4.10 Computational Consideration, Murtyの最悪ケース
  50. 計算量 ⚫ 定理 − Murtyの最悪ケースはSPPMで2 − 1ステップ ⚫ 証明(帰納法) −

    ピボットルールは最小添え字 • 1 , … , −1 が正になるまで , はピボットされない • 主部分問題が順に解かれる − 2−1 − 1 + 1 + 2−1 − 1 = 2 − 1 2020/6/13 線形相補性問題ゼミ④ 52 4.10 Computational Consideration, Murtyの最悪ケース 1 ⋯ −1 1 1 1 2 2 -2 ⋮ 1 0 1 2 -2 −1 1 0 0 1 -2 -1 0 0 0 1 1 ⋯ −1 1 -1 1 2 2 -2 ⋮ -1 0 1 2 -2 −1 -1 0 0 1 -2 1 0 0 0 1 1 ⋯ −1 1 -1 1 2 2 2 ⋮ -1 0 1 2 2 −1 -1 0 0 1 2 -1 0 0 0 1 1 ⋯ −1 1 1 1 2 2 -2 ⋮ 1 0 1 2 -2 −1 1 0 0 1 -2 1 0 0 0 1 2−1 − 1 1 2−1 − 1
  51. 4. Pivoting Methods 1. Invariance Theorems 2. Simple Principal Pivoting

    Methods 3. General Principal Pivoting Methods 4. Lemke’s Methods 5. Parametric LCP Algorithms 6. Variable Dimension Schemes 7. Methods for Z-Matrices 8. A Special n-Step Scheme 9. Degeneracy Resolution 10.Computational Consideration 2020/6/13 線形相補性問題ゼミ④ 53 目次
  52. 教科書全体 1. Introduction 2. Background 3. Existence and Multiplicity 4.

    Pivoting Methods 5. Iterative Methods 6. Geometry and Degree Theory 7. Sensitivity and Stability Analysis 2020/6/13 線形相補性問題ゼミ④ 54 目次
  53. 6. Geometry and Degree Theory 1. Global Degree and Degenerate

    Cones 2. Facets 3. The Geometric Side of Lemke’s Method 4. LCP Existence Theorems 5. Local Analysis 6. Matrix Classes Revisited 7. Superfluous Matrices 8. Bounds and Degree 9. Q0-Matrices and Psudomanifolds 2020/6/13 線形相補性問題ゼミ④ 55 目次