• 検索結果がありません。

講義資料

N/A
N/A
Protected

Academic year: 2021

シェア "講義資料"

Copied!
26
0
0

読み込み中.... (全文を見る)

全文

(1)

数理計画法

(数理最適化)第

13回

非線形計画

ニュートン法,凸関数

担当: 塩浦昭義

(情報科学研究科 准教授)

[email protected]

(2)

行列の正定値性、半正定値性

定義:正方行列 A は半正定値 ⇔ 任意のベクトル y に対して yT A y ≧0 ※ A が1×1行列のとき、 Aは半正定値 ⇔ a11 ≧0, Aは正定値 ⇔ a11 >0 定義:正方行列 A は正定値 ⇔ 任意の非零ベクトル y に対して yT A y >0 正定値(半正定値)‥‥行列が「正(非負)」

(3)

-1 0 1 2 3 4 -3 -2 -1 0 1 2 3 4

2次の最適性条件(必要条件)

定理(2次の必要条件): x*: 制約なし問題の極小解 ⇒ Hf(x*) は半正定値 例: x* = 1 は極小解 0≦x≦2 の範囲で f(x) = 0 ⇒ ∇f(x*) = f’(x*) = 0 Hf(x*) = f’’(x*) = 0 半正定値 ヘッセ行列を用いた最適性条件

(4)

2次の最適性条件(十分条件)

定理(2次の十分条件): x* は停留点, Hf(x*) は正定値 ⇒ x*: 制約なし問題の(孤立)極小解 定義:x* は孤立極小解 ⇔ x* は極小、近傍内に同じ関数値をもつ点が存在しない -4 -3 -2 -1 0 1 2 3 4 -2 -1 0 1 2 3 4 極小解だが 孤立極小解では ない 孤立極小解

(5)

-2 -1 0 1 2 3-2 -1 0 1 2 3

2次の最適性条件(十分条件)の例

3 2 4 2 2 1 2 1

3

1

4

1

2

)

(

x

x

x

x

x

f

x

定理: x* は停留点,Hf(x*) は正定値 ⇒ x*: (孤立)極小解 例2            1 2 2 3 2 2 1 2 2 2 ) ( x x x x x f x 停留点は(0,0), (-1, -1), (2, 2)           2 2 2 2 3 2 2 2 ) ( H x x f x 孤立 極小解 孤立 極小解 (-1, -1), (2, 2) は孤立極小解

(6)

2次の最適性条件の例

例3: • • がゼロベクトルとなるのは (0,0) のみ停留点 • は正定値行列 (0, 0) は孤立極小解 任意の非ゼロベクトル に対して

(7)

2次の最適性条件の例

例4: • • がゼロベクトルとなるのは (0,0) のみ(実は最適解) • は半正定値だが,正定値ではない (0, 0) が極小解かどうかは,ヘッセ行列を使って 判定できない(実際には極小解) 任意のベクトル に対して のときは でも値は0

(8)

極大解に関する性質

定理: x*: 制約なし問題の極大解 ⇒ – Hf(x*) は半正定値  x* は関数 f の(孤立)極大解 ⇔ x* は関数 – f の(孤立)極小解  x* における関数 – f のヘッセ行列は – Hf(x) 極大解であるための条件 定理: x* は停留点, – Hf(x*) は正定値 ⇒ x*: 制約なし問題の(孤立)極大解

(9)

制約なし問題の解法

2:ニュートン法

ニュートン法のアイディア: 狭義2次凸関数の最適解は簡単に求められる! 0

2

1

)

(

V

c

f

x

x

T

x

c

T

x

c

x

x

f

(

)

V

H

f

(

x

)

V

停留点は x* = – V-1c のみ, ヘッセ行列は V (正定値) 2次の十分条件より x* は最適解 定義:2次関数 は狭義2次凸関数  V は正定値行列

(10)

制約なし問題の解法2:ニュートン法

ニュートン法のアイディア: 狭義2次凸関数の最適解は簡単に求められる! ただし,一般の関数は狭義2次凸とは限らない 元の関数 の代わりに,二次のテイラー近似 を使う  ヘッセ行列 Hf(x) が正定値のとき, の最適解は  は の良い近似

は

の最適解のより良い近似解と期待できる

(11)

ニュートン法のアルゴリズム

入力:

関数

とその勾配ベクトル

ヘッセ行列

初期点

0

ステップ0:

とする

ステップ1:

が最適解に十分近ければ終了

ステップ2:

ニュートン方向

を計算

ステップ :

とおく

ステップ :

として、ステップ に戻る

現在の点 を へ移動させることを 繰り返す ( を, におけるニュートン方向と呼ぶ)

(12)

ニュートン法の実行例その1

 一変数関数  初期点  テイラー近似は  これが最小になるのは のとき  とおく

(13)

ニュートン法の実行例その1

 一変数関数  点  テイラー近似は  これが最小になるのは のとき  とおく

(14)

ニュートン法の特徴

[p.107]

長所:

 最急降下法より

反復回数が少ない

 狭義2次凸関数に対しては

一反復で終了

 直線探索が不要

短所:

ヘッセ行列の逆行列の計算が必要

ヘッセ行列の計算ができないと破綻

 ヘッセ行列が

正則でないと破綻

 ヘッセ行列が正定値でない場合には

目的関数値が増加する可能性あり

(15)

ニュートン法の例2

関数

に適用

初期解

最適解は

回の反復で最適解に到達

 最急降下法では100回反復後でも 0.91, 0.82 福島雅夫 「新版 数理計画入門」 (朝倉書店)より

(16)

ニュートン法の問題点

例

1(続き):

一変数関数

f(x) = x

4

- 4x

2

初期点

のとき

⇒ ヘッセ行列は

Hf(x) = 0 (

正則でない)

⇒ ニュートン方向が求められない

-4 -3 -2 -1 0 1 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2

 ヘッセ行列が

正則でないと破綻

f を2次近似

すると直線

になる

(17)

ニュートン法の問題点

初期点

x = 1/2

のとき

⇒ ヘッセ行列は

Hf(x) = -5(

正定値でない)

⇒ ニュートン方向に進むと関数値が増加する

 ヘッセ行列が正定値でない場合には

目的関数値が増加する可能性あり

-4 -3 -2 -1 0 1 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2

f を2次近似する

と上に凸な

2次

関数になる

(18)

凸関数

最小化しやすい関数の形は? 最小解でない極小解がある 最小化が難しい 極小解が一つ 最小化しやすい 極小解 かつ最小解 極小解 かつ最小解 極小解だが 最小解でない

凸関数

非凸関数

(19)

凸関数の定義

定義:関数 f は凸関数 ⇔ 任意の異なるベクトル および任意の に対し 値f(x) 値f(y)

x

y

x と y の内分点

(20)

凸関数の定義(続き)

値f(x) 値f(y)

x

y

非凸関数

の例

凸関数

⇔

(1 – t) f(x) + t f(y)

≧

f((1 – t) x + t y)

(21)

2次の凸関数

2次関数 は凸関数 (証明) 任意の異なる と に対して、 2 2 2 2 2 2 2 2 2 2 2 2 2 より) 凸関数 ⇔

(22)

2次の凸関数(続き)

凸関数 ⇔ より一般に, 0

2

1

)

(

V

c

f

x

x

T

x

c

T

x

2次関数 (V: n ×n 行列, c: n次元ベクトル, c0: 定数) は V が半正定値行列  凸関数













2 1 2 1 2 1

5

2

2

2

2

1

)

,

(

x

x

x

x

x

x

f

T 例:

(23)

凸関数の特徴付け(その1)

定理: f: 凸関数, 微分可能(勾配ベクトルが定義可能)  任意のベクトル x, y に対して次の不等式が成立

x

y

一変数凸関数の場合:x における 接線 より f(y) は上にある

x

y

一変数非凸関数の場合は 成り立たない 証明は略

(24)

凸関数の特徴付け(その2)

定理: : 凸関数, 微分可能(ヘッセ行列が定義可能)  任意のベクトル に対して ヘッセ行列 が半正定値 一変数凸関数の場合: 関数 は凸関数任意の に対して二階微分 証明は略

(25)

凸関数の最適解の必要条件

定理: f: 凸関数, 微分可能(勾配ベクトルが定義可能) x*: f の停留点 (∇f(x*)=0) ⇒ x*は制約なし問題の最適解 証明:f は凸関数なので,任意のx, y に対して次が成り立つ x = x* を代入すると, ∇f(x*)=0なので すなわち,任意のベクトル y の関数値より, x* の関数値は少ない(または等しい) ∴ x*は最適解

(26)

凸関数の最適解の必要条件

定理: f: 凸関数, x*: f の極小解 ⇒ x*は制約なし問題の最適解 証明: x* は極小解 ⇒ あるε>0が存在して、 任意の x に対し ||x – x*|| < εならば f(x) ≧ f(x*) f(y) < f(x*) なる y が存在すると仮定 f は凸関数 ⇒ 0 < t < 1 なる任意の t に対して f((1 - t) y + t x*) ≦ (1 - t) f(y) + t f(x*) < f(x*) t を1に近づけると (1 - t) y + t x* と x* の距離 < ε(矛盾)

参照

関連したドキュメント

例えば,立証責任分配問題については,配分的正義の概念説明,立証責任分配が原・被告 間での手続負担公正配分の問題であること,配分的正義に関する

断面が変化する個所には伸縮継目を設けるとともに、斜面部においては、継目部受け台とすべり止め

ステップ 2 アプリに [installer] としてログインし、 SmartLogger の画面上で [ その他 ] &gt; [ システム保守

、コメント1点、あとは、期末の小 論文で 70 点とします(「全て持ち込 み可」の小論文式で、①最も印象に 残った講義の要約 10 点、②最も印象 に残った Q&amp;R 要約

[r]

②企業情報が「特定CO の発給申請者」欄に表示

・ぴっとんへべへべ音楽会 2 回 ・どこどこどこどんどこ音楽会 1 回 ステップ 5.「ママカフェ」のソフトづくり ステップ 6.「ママカフェ」の具体的内容の検討

その太陽黒点の数が 2008 年〜 2009 年にかけて観察されな