Professional Documents
Culture Documents
2016math Lecture15
2016math Lecture15
トピック 15:凹関数・凸関数
北村友宏 ∗
2016 年 3 月 26 日
1 凹関数・凸関数(参考書上巻 pp.439-459)
1.1 1 変数関数の場合
• 凹関数・厳密な凹関数・凸関数・厳密な凸関数の形状(定義ではない)は以下の通り.
⋆ 凹関数:関数のグラフ上のどの 2 点をとっても,その 2 点を結ぶ直線上の(とってきた 2 点を除
く)全ての点の高さが,その 2 点の間の関数のグラフ上の(とってきた 2 点を除く)全ての点の高
さと同じかそれよりも低い.
⋆ 厳密な凹関数:関数のグラフ上のどの 2 点をとっても,その 2 点を結ぶ直線上の(とってきた 2 点
を除く)全ての点の高さが,その 2 点の間の関数のグラフ上の(とってきた 2 点を除く)全ての点
の高さよりも低い.
⋆ 凸関数:関数のグラフ上のどの 2 点をとっても,その 2 点を結ぶ直線上の(とってきた 2 点を除
く)全ての点の高さが,その 2 点の間の関数のグラフ上の(とってきた 2 点を除く)全ての点の高
さと同じかそれよりも高い.
⋆ 厳密な凸関数:関数のグラフ上のどの 2 点をとっても,その 2 点を結ぶ直線上の(とってきた 2 点
を除く)全ての点の高さが,その 2 点の間の関数のグラフ上の(とってきた 2 点を除く)全ての点
の高さよりも高い.
y 厳密な凹関数 y 厳密な凸関数
y = f (x)
y = f (x)
O x O x
1
y 厳密な凹関数 y 厳密な凸関数
y = f (x)
y = f (x)
O x O x
• 凹関数・厳密な凹関数・凸関数・厳密な凸関数の定義は以下の通り.
⋆ 関数 y = f (x) の定義域における任意の u, v (ただし u ̸= v )と,0 < θ < 1 を満たす任意の θ につ
いて,
θ f (u) + (1 − θ) f (v) ≤ f [θu + (1 − θ)v]
関数 y = f (x) について,以下のことがいえる.
2
1.2 2 変数関数の場合
• 凹関数・厳密な凹関数・凸関数・厳密な凸関数の定義は以下の通り.
⋆ 関数 z = f (x 1 , x 2 ) の定義域における任意の (u1 ,u2 ), (v1 , v2 )(ただし (u1 ,u2 ) ̸= (v1 , v2 ))と,0 < θ < 1
を満たす任意の θ について,
となる f (x 1 , x 2 ) を凹関数という.
⋆ 関数 z = f (x 1 , x 2 ) の定義域における任意の (u1 ,u2 ), (v1 , v2 )(ただし (u1 ,u2 ) ̸= (v1 , v2 ))と,0 < θ < 1
を満たす任意の θ について,
となる f (x 1 , x 2 ) を厳密な凹関数という.
⋆ 関数 z = f (x 1 , x 2 ) の定義域における任意の (u1 ,u2 ), (v1 , v2 )(ただし (u1 ,u2 ) ̸= (v1 , v2 ))と,0 < θ < 1
を満たす任意の θ について,
となる f (x 1 , x 2 ) を凸関数という.
⋆ 関数 z = f (x 1 , x 2 ) の定義域における任意の (u1 ,u2 ), (v1 , v2 )(ただし (u1 ,u2 ) ̸= (v1 , v2 ))と,0 < θ < 1
を満たす任意の θ について,
となる f (x 1 , x 2 ) を厳密な凸関数という.
• 2 変数関数 z = f (x 1 , x 2 ) の 1 階全微分は,
∂z ∂z
dz = dx 1 + dx 2 = f 1 dx 1 + f 2 dx 2
∂x 1 ∂x 2
3
であり,2 階全微分は,
d 2 z = d(dz)
( ) ( )
∂ ∂
= [dz] dx 1 + [dz] dx 2
∂x ∂x 2
( 1 ) ( )
∂ ∂
= [ f 1 dx 1 + f 2 dx 2 ] dx 1 + [ f 1 dx 1 + f 2 dx 2 ] dx 2
∂x 1 ∂x 2
= ( f 11 dx 1 + f 12 dx 2 )dx 1 + ( f 21 dx 1 + f 22 dx 2 )dx 2
= f 11 (dx 1 )2 + f 12 (dx 2 )(dx 1 ) + f 21 (dx 1 )(dx 2 ) + f 22 (dx 2 )2
|{z}
= f 12
= f 11 dx 21 + 2 f 12 dx 1 dx 2 + f 22 dx 22
D = (2 f 12 dx 2 )2 − 4 f 11 f 22 dx 22 < 0 ⇐⇒ 4dx 22 ( f 12
2
− f 11 f 22 ) < 0 ⇐⇒ f 12
2
− f 11 f 22 < 0
|{z}
>0
⇐⇒ −d 2 z = − f 11 (dx 1 )2 − 2 f 12 dx 2 (dx 1 ) − f 22 dx 22
|{z}
>0
を dx 1 の 2 次関数であると考えて,−d 2 z に対して「判別式が負」,すなわち
4
定義域内の任意の x 1 , x 2 と任意の dx 1 , dx 2 について d 2 z が常に負となり, f (x 1 , x 2 ) は厳密な凹関数
となる.
⇒ f 11 > 0 のときも f 11 < 0 のときも, f 12
2 − f f
11 22 < 0 が厳密な凹・厳密な凸関数の判断基準となる.
• 以上をまとめると,
⋆ 定義域内の任意の x 1 と x 2 について, f 11 < 0 かつ f 12
2 − f f
11 22 < 0 のとき,定義域内の任意の
x 1 , x 2 と任意の dx 1 , dx 2 について,d 2 z < 0.よって f (x 1 , x 2 ) は厳密な凹関数となる.
2 − f f
⋆ 定義域内の任意の x 1 と x 2 について, f 11 > 0 かつ f 12 11 22 < 0 のとき,定義域内の任意の
x 1 , x 2 と任意の dx 1 , dx 2 について,d 2 z > 0.よって f (x 1 , x 2 ) は厳密な凸関数となる.
2.2 判別式からヘッセ行列式へ
2 − f f はヘッセ行列式(ヘッシアンともいう)にマイナスをつけたもの(−1 を掛けたもの)
• f 12 11 22 .ヘッ
セ行列式は,
f 11 f 12
|H |= = f f 22 − f f 12 = f 11 f 22 − f 12
2
= −( f 12
2
− f 11 f 22 ).
f 12 f 22 |11
{z } |12
{z }
右下がりの要素の積 右上がりの要素の積
⇒2 変数関数 z = f (x 1 , x 2 ) について,ヘッセ行列式を用いた厳密な凹・厳密な凸関数の判断は以下の
通り.
f 11 f 12
• 定義域内の任意の x 1 と x 2 について, f 11 < 0 かつ > 0 のとき,定義域内の任意の x 1 , x 2
f 12 f 22
と任意の dx 1 , dx 2 について,d 2 z < 0.よって f (x 1 , x 2 ) は厳密な凹関数となる.
f 11 f 12
• 定義域内の任意の x 1 と x 2 について, f 11 > 0 かつ > 0 のとき,定義域内の任意の x 1 , x 2
f 12 f 22
と任意の dx 1 , dx 2 について,d 2 z > 0.よって f (x 1 , x 2 ) は厳密な凸関数となる.
......................................................................................................
例題 2.2.1 z = f (x 1 , x 2 ) = 3x 21 + 2x 1 x 2 + 4x 22 が厳密な凹関数か,厳密な凸関数かをヘッセ行列式を用いて
判断しなさい.
5
解法
1 次偏導関数は,
∂z
f1 = = 3 ·2x 2−1 + |{z}
2 ·1x 1−1 x2 + 0 = 6x 1 + 2 x 01 x 2 = 6x 1 + 2x 2 ,
∂x 1 |{z} 1 1 |{z} |{z} |{z}
定数 定数 定数 定数の微分 =1
∂z
f2 = = 0
|{z} + 2x 1 ·1x 1−1 + |{z}
4 ·2x 2−1 = 2x 1 x 02 +8x 2 = 2x 1 + 8x 2
∂x 2 |{z} 2 2
|{z}
定数の微分 定数 定数 =1
である.よって,2 次偏導関数は,
∂2 z
f 11 = = 6 ·1x 1−1 + 0 = 6 x 01 = 6,
∂x 21 |{z} 1 |{z} |{z}
定数 定数の微分 =1
∂2 z
f 22 = 2 = 0
|{z} + |{z}
8 ·1x 1−1 = 8 x 02 = 8
∂x 2 2
|{z}
定数の微分 定数 =1
となる.また,交差偏導関数は,
( )
∂2 z ∂ ∂z ∂
f 12 = = = [2x 1 + 8x 2 ] = |{z}
2 ·1x 1−1 + 0
|{z} = 2 x 01 = 2
∂x 1 ∂x 2 ∂x 1 ∂x 2 ∂x 1 1
|{z}
定数 定数の微分 =1
である.したがって,ヘッセ行列式は,
f 11 f 12 6 2
|H |= = = 6·8
|{z} − 2·2
|{z} = 48 − 4 = 44
f 12 f 22 2 8
右下がりの要素の積 右上がりの要素の積
f 11 f 12
となる.よって, f 11 = 6 > 0 かつ = 44 > 0 であることから, z = f (x 1 , x 2 ) は厳密な凸関数である.
f 12 f 22
......................................................................................................
6
例題 2.2.2 z = f (x 1 , x 2 ) = −x 21 + 2x 1 x 2 − 3x 22 が厳密な凹関数か,厳密な凸関数かをヘッセ行列式を用いて
判断しなさい.
解法
1 次偏導関数は,
∂z
f1 = = −1 ·2x 2−1 + |{z}
2 ·1x 1−1 x2 − 0 = −2x 1 + 2 x 01 x 2 = −2x 1 + 2x 2 ,
∂x 1 |{z} 1 1 |{z} |{z} |{z}
定数 定数 定数 定数の微分 =1
∂z
f2 = = 0
|{z} + 2x 1 ·1x 1−1 − |{z}
3 ·2x 2−1 = 2x 1 x 02 −6x 2 = 2x 1 − 6x 2
∂x 2 |{z} 2 2
|{z}
定数の微分 定数 定数 =1
である.よって,2 次偏導関数は,
∂2 z
f 11 = = −2 ·1x 1−1 + 0 = −2 x 01 = −2,
∂x 21 |{z} 1 |{z} |{z}
定数 定数の微分 =1
∂2 z
f 22 = 2 = 0
|{z} − |{z}
6 ·1x 1−1 = −6 x 02 = −6
∂x 2 2
|{z}
定数の微分 定数 =1
となる.また,交差偏導関数は,
( )
∂2 z ∂ ∂z ∂
f 12 = = = [2x 1 − 6x 2 ] = |{z}
2 ·1x 1−1 − 0
|{z} = 2 x 01 = 2
∂x 1 x 2 ∂x 1 ∂x 2 ∂x 1 1
|{z}
定数 定数の微分 =1
である.したがって,ヘッセ行列式は,
f 11 f 12 −2 2
|H |= = = (−2) · (−6) − 2·2
|{z} = 12 − 4 = 8
f 12 f 22 2 −6 | {z }
右下がりの要素の積 右上がりの要素の積
f 11 f 12
となる.よって, f 11 = −2 < 0 かつ = 8 > 0 であることから,z = f (x 1 , x 2 ) は厳密な凹関数である.
f 12 f 22
......................................................................................................