を実数の定数とし、 上の関数
を考える。 が 全体で凸関数となるような の最大値を求めよ。
ヘッセ行列による凸性の判定
多変数関数のヘッセ行列 を求め、凸集合上のすべての点で半正定値になるか(主小行列式・固有値で)を調べて凸性を判定できる。定数や領域の端 を含む場合には、凸となる定数の範囲(例: の最大値、 の最小値)を求められる
前提
- 凸集合と凸関数の定義 (大学数学 最適化・線形計画法)
- 偏微分と全微分 (大学数学 微分積分)
- 2 次形式の標準形と符号 (大学数学 線形代数)
この技能までの道筋(74 技能)
読み込み中…
右端(太枠)がこの技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
一覧で見る(前提が先)
- 分数のたし算・ひき算 (算数 計算と数のきまり)
- 小数の四則計算 (算数 計算と数のきまり)
- 正負の数の加法・減法 (中学数学 数と式)
- 分数のかけ算・わり算 (算数 計算と数のきまり)
- 四則の混じった計算の順序 (算数 計算と数のきまり)
- 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
- 分配法則を使った計算のくふう (算数 計算と数のきまり)
- 文字式の計算(同類項・分配法則) (中学数学 数と式)
- 乗法公式による展開 (中学数学 数と式)
- 因数分解 (中学数学 数と式)
- 3 次式までの展開と因数分解 (数学I 数と式)
- 微分係数と導関数の定義 (数学II 微分法と積分法)
- 多項式の微分 (数学II 微分法と積分法)
- 小数と分数のまじった計算 (算数 計算と数のきまり)
- 逆算(□ を求める) (算数 計算と数のきまり)
- 1 次方程式の解き方 (中学数学 方程式)
- 比例・反比例の式とグラフ (中学数学 関数)
- 約数の見つけ方 (算数 整数の性質)
- 素因数分解と約数の個数 (算数 整数の性質)
- 平方根の意味と根号の簡単化 (中学数学 数と式)
- 関数 の式と変域 (中学数学 関数)
- 平方完成と 2 次関数のグラフ (数学I 2次関数)
- 2 次不等式 (数学I 2次関数)
- 剰余の定理・因数定理と高次方程式 (数学II 複素数と方程式)
- 増減表と極値 (数学II 微分法と積分法)
- 等間隔にならんだ数の和 (算数 計算と数のきまり)
- 等差・等比数列の和と Σ (数学B 数列)
- 数列の極限 (数学III 極限)
- 関数の極限 (数学III 極限)
- 積と商の微分 (数学III 微分法)
- 第 2 次導関数とグラフの凹凸 (数学III 微分法)
- 凸集合と凸関数の定義 (大学数学 最適化・線形計画法)
- 合成関数の微分 (数学III 微分法)
- 偏微分と全微分 (大学数学 微分積分)
- 三角形の角の大きさ (算数 平面図形)
- 対頂角と平行線の同位角・錯角 (中学数学 平面図形)
- 三角形の外角と角の組み合わせ (中学数学 平面図形)
- 二等辺三角形の角 (中学数学 平面図形)
- 平行四辺形と特別な四角形の性質 (中学数学 平面図形)
- 三角形・四角形の面積 (算数 平面図形)
- 三平方の定理 (中学数学 相似と三平方の定理)
- 折り返した図形の角と長さ (中学数学 平面図形)
- 三平方の定理と平面図形 (中学数学 相似と三平方の定理)
- ベクトルの演算と成分 (数学C ベクトル)
- 行列の和・積と 2 次の逆行列 (大学数学 線形代数)
- 樹形図で数え上げる (算数 場合の数)
- 積の法則と和の法則 (算数 場合の数)
- 和の法則・積の法則と樹形図 (数学A 場合の数と確率)
- 順列・円順列・重複順列 (数学A 場合の数と確率)
- 行列式 (大学数学 線形代数)
- 掃き出し法と連立 1 次方程式 (大学数学 線形代数)
- 行列の階数と解の存在 (大学数学 線形代数)
- ベクトル空間・一次独立・基底・次元 (大学数学 線形代数)
- 円の周の長さと面積 (算数 平面図形)
- おうぎ形の弧の長さと面積 (算数 平面図形)
- 弧の長さからおうぎ形の中心角と面積を求める (中学数学 平面図形)
- 特別な直角三角形の辺の比 (中学数学 相似と三平方の定理)
- 弧度法と単位円による三角関数 (数学II 三角関数)
- 加法定理と 2 倍角・半角・積和の公式 (数学II 三角関数)
- 線形変換と行列 (大学数学 線形代数)
- 核と像と次元定理 (大学数学 線形代数)
- 固有値と固有ベクトル (大学数学 線形代数)
- 掃き出し法による逆行列 (大学数学 線形代数)
- 基底の変換と表現行列 (大学数学 線形代数)
- 対角化と行列の累乗 (大学数学 線形代数)
- 最大公約数と最小公倍数 (算数 整数の性質)
- 比の性質と簡単な比 (算数 割合と比)
- 相似な三角形と長さの比 (算数 平面図形)
- 三角形の相似条件と対応する辺の長さ (中学数学 相似と三平方の定理)
- 三角比の定義と値 (数学I 図形と計量)
- 内積となす角 (数学C ベクトル)
- 内積空間とグラム・シュミットの直交化 (大学数学 線形代数)
- 対称行列の直交対角化 (大学数学 線形代数)
- 2 次形式の標準形と符号 (大学数学 線形代数)
説明
多変数関数 が凸かどうかを、定義の不等式を直接扱わずに判定する方法です。2 階偏導関数を並べたヘッセ行列 を作り、それが領域のすべての点で半正定値かどうかを調べます。半正定値かどうかは、固有値の符号か主小行列式の符号で確かめます。式に定数 が含まれるときや、領域の端 が動くときには、凸になるための定数の範囲( の最大値、 の最小値など)も求められます。
なぜそうしてよいのか
以下、 は開凸集合とします。開集合とは、各点のまわりに小さな球がまるごと含まれる集合のことです。また は 級、つまり 2 階偏導関数がすべて存在して連続であるとします。このとき偏微分の順序を交換できるので、ヘッセ行列 は対称行列です。
凸性の定義の不等式に出てくるのは、2 点 を結ぶ線分上の値だけです。そこで点 と方向 を固定し、直線に制限した 1 変数関数 を考えます( は となる区間を動きます)。、 とすれば定義の不等式そのものになるので、「 が凸」と「すべての について が凸」は同じことです。連鎖律より で、もう一度微分すると
となります。1 変数では「区間で ⇔ 凸」でした。よって、すべての とすべての で 、つまり が半正定値なら は凸です。逆に、ある点 で となる があるとします。2 階偏導関数は連続なので、 の近くの でも です。 はそこで凸でないので、 も凸ではありません。まとめると、 上で が凸 ⇔ のすべての点で が半正定値、が成り立ちます。
半正定値かどうかは、2 次形式の符号として調べます。対称行列 を直交行列 で対角化し、 とおくと になります。したがって、半正定値 ⇔ 固有値がすべて です。同じ番号の行と列を選んで作る小行列式を主小行列式といいます。 の では、主小行列式は の 3 つで、「半正定値 ⇔ 」が次のように示せます。固有方程式は で、 は対称なので 2 つの固有値 は実数です。解と係数の関係から、、 です。(⇒) 半正定値なら 、 で、 です。(⇐) の場合を考えます。このとき なので です。2 つの固有値は同符号で、和 なのでともに正です。 の場合は、一方の固有値が で、もう一方は です。どちらの場合も固有値はすべて となります。一般の 次対称行列でも「半正定値 ⇔ すべての主小行列式が 」が成り立ちますが、ここではこれを定理として使います。
手順
領域 が開凸集合であること、 が 級であることを確認する。
2 階偏導関数をすべて求め、ヘッセ行列 を作る(対称行列になる)。
半正定値の条件を書く。固有値がすべて 、またはすべての主小行列式が のどちらかを使う。2 変数なら の 3 つ。
その条件が のすべての点 で成り立つかを調べる。 を動かしたときの最小値で考えるとよい。
定数 や端 を含む場合は、「すべての で条件が成立」を (または )の不等式に直し、その範囲から最大値・最小値を読み取る。
例題
実数の定数 に対し とする。 が 全体で凸関数となるような の最大値を求めよ。
例題の解答
手順 1: は開凸集合であり、 は多項式なので 級である。
手順 2:、 である。よって 、、 となり、
手順 3:半正定値の条件は次の 3 つである。、、。
手順 4:はじめの 2 つはつねに成り立つ。3 つ目の は で最小値 をとる。したがって、すべての で条件が成り立つ ⇔ である。
手順 5:、すなわち のとき は凸になる。 なら点 で行列式が負になり、半正定値でないので凸ではない。よって の最大値は である。
答え:
よくある誤り
半正定値の判定を、左上から順に取る小行列式(首座小行列式)だけで済ませてしまう誤り。たとえば の首座小行列式は でともに だが、 で となり、半正定値ではない。正しくは、 のような対角成分も含めて、すべての主小行列式が であることを確かめる。
ある 1 点(たとえば の点)だけでヘッセ行列を調べてしまう誤り。例題で だけを見ると となり、誤って と答えてしまう。正しくは、領域のすべての点で調べる。例題では を動かしたときの最小値 ( のとき)で判定し、 となる。
凸の条件を正定値( で )と取り違える誤り。例題で として を除外してしまう。凸性に必要十分なのは半正定値()なので、 も含まれる。なお、正定値は狭義凸の十分条件にすぎない。 は狭義凸だが、原点でのヘッセ行列は零行列である。
領域を確認せずに判定してしまう誤り。たとえば は なので、 の開凸集合では凸だが、 全体では凸ではない。また、領域が凸集合でなければ、凸関数の定義そのものが使えない。正しくは、まず領域が凸集合であることを確認し、その領域の点だけでヘッセ行列の符号を調べる。
この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。
入口の問題
を実数の定数とし、 上の関数
を考える。 が 全体で凸関数となるような の最大値を求めよ。上の関数
を考える。正の実数 に対して、正方形の領域
を定める。 が 上で凸関数となるような の最小値を求めよ。
この技能を使う問題
を実数の定数とし、 上の関数
を考える。 が 全体で凸関数となるような の最小値を求めよ。上の関数
を考える。実数 に対して が 上で凸関数となるような の最大値を 、実数 に対して が 上で凸関数となるような の最小値を とする。 をこの順に求めよ。関数 を
で定める。 が 上で狭義凸関数であることを証明せよ。ここで が狭義凸関数であるとは、相異なる任意の 2 点 と を満たす任意の実数 に対して
が成り立つことをいう。なお、次の事実は用いてよい: 「 上の 級関数 のヘッセ行列 が、すべての で正定値ならば、 は 上で狭義凸関数である。」
実数 についての次の最適化問題を考える。
ラグランジュ関数を
とし、 を KKT 乗数とする。この問題の最適解 と、それに対応する KKT 乗数 を求め、 の順に答えよ。を実数の定数とし、 上の関数
を考える。 が 上で凸関数となるような の最大値を求めよ。を正の実数の定数とし、 上の関数
を考える。 が 全体で凸関数となるような の最大値を とする。 と、 のときの の 上での最小値を、この順に組 で求めよ。上の関数
を考える。実数 に対して
とおく( は凸集合である)。 が 上で凸関数となる、すなわち任意の と に対して
が成り立つような の最小値を求めよ。を実数の定数とし、 上の関数
を考える。 が 全体で凸関数となるような の値の全体は閉区間 になる。 をこの順に組 で求めよ。
この技能の次に学べること
- 凸計画と KKT 条件の十分性 (大学数学 最適化・線形計画法)