WIIS

教材一覧
教材一覧
教材検索
CONVEX FUNCTION

連続微分可能な多変数の凸関数・凹関数

目次

Share on twitter
Twitterで共有
Share on email
メールで共有

凸関数・凹関数の特徴づけ

関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が凸関数であることは、定義域\(X\)が凸集合であるとともに、\begin{equation*}\forall x_{1},x_{2}\in X,\ \forall \lambda \in \left[ 0,1\right] :\lambda
f\left( x_{1}\right) +\left( 1-\lambda \right) f\left( x_{2}\right) \geq
f\left( \lambda x_{1}+\left( 1-\lambda \right) x_{2}\right)
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が凸であることを示す作業は煩雑になりがちです。関数が凸であることを比較的容易に示す方法について解説します。

凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)は凸集合であるものとします。\(f\)の定義域である凸集合上の2つの点\(a,b\in X\)を任意に選ぶと、それらの点を端点とする線分は、\begin{equation*}\left\{ \lambda a+\left( 1-\lambda \right) \in X\ |\ t\in \left[ 0,1\right] \right\}
\end{equation*}となります。この線分もまた凸集合であるため、それぞれの\(\lambda \in \left[ 0,1\right] \)に対して、\begin{equation*}f_{a,b}\left( t\right) =f\left( \lambda a+\left( 1-\lambda \right) b\right)
\end{equation*}を値として定める1変数関数\(f_{a,b}:\mathbb{R} \supset \left[ 0,1\right] \rightarrow \mathbb{R} \)を定義できます。

図:凸関数
図:凸関数

\(n=2\)である場合、凸関数\(f\)のグラフは上図のようなお椀型の曲面であるため、関数\(f_{a,b}\)のグラフである\(f\)のグラフ上の曲線は下に凸な曲線になることが保証されるため、\(f_{a,b}\)は凸関数になります。\(f\)の定義域\(X\)上の任意の2つの点\(a,b\)について同様の議論が成立します。\(n\geq 3\)の場合にも同様であるため、\(f\)が凸関数であることを以下のように特徴づけられます。

命題(凸関数の特徴づけ)
非空の凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が与えられたとき、点\(x,y\in X\)を任意に選んだ上で、それぞれの\(\lambda \in \left[ 0,1\right] \)に対して、\begin{equation*}f_{x,y}\left( \lambda \right) =f\left( \lambda x+\left( 1-\lambda \right)
y\right)
\end{equation*}を定める関数\(f_{x,y}:\mathbb{R} \supset \left[ 0,1\right] \rightarrow \mathbb{R} \)を定義する。任意の\(x,y\in X\)について\(f_{x,y}\)が凸関数であることは、\(f\)が凸関数であるための必要十分条件である。
証明

プレミアム会員専用コンテンツです
ログイン】【会員登録

関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が凹関数であることは、定義域\(X\)が凸集合であるとともに、\begin{equation*}\forall x_{1},x_{2}\in X,\ \forall \lambda \in \left[ 0,1\right] :\lambda
f\left( x_{1}\right) +\left( 1-\lambda \right) f\left( x_{2}\right) \leq
f\left( \lambda x_{1}+\left( 1-\lambda \right) x_{2}\right)
\end{equation*}が成り立つことを意味します。凸関数に関する先の議論において不等号の向きを逆にすればそのまま凹関数に関する議論になります。したがって、凹関数を以下のような形で特徴づけられます。

命題(凹関数の特徴づけ)
非空の凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が与えられたとき、点\(x,y\in X\)を任意に選んだ上で、それぞれの\(\lambda \in \left[ 0,1\right] \)に対して、\begin{equation*}f_{x,y}\left( \lambda \right) =f\left( \lambda x+\left( 1-\lambda \right)
y\right)
\end{equation*}を定める関数\(f_{x,y}:\mathbb{R} \supset \left[ 0,1\right] \rightarrow \mathbb{R} \)を定義する。任意の\(x,y\in X\)について\(f_{x,y}\)が凹関数であることは、\(f\)が凹関数であるための必要十分条件である。

 

連続微分可能な多変数の凸関数・凹関数

関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が以下の3つの性質を満たすものとします。1つ目の性質は、\(f\)の定義域\(X\)が非空の凸集合であるとともに\(\mathbb{R} ^{n}\)上の開集合であるということです。2つ目の性質は、\(f\)が\(C^{1}\)級であるということです。つまり、\(f\)は定義域上の任意の点\(x\in X\)において任意の変数\(x_{k}\) \(\left(k=1,\cdots ,n\right) \)に関して偏微分可能であるとともに、偏導関数\(f_{x_{k}}:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が連続であることを意味します。3つ目の性質は、\(f\)が凸関数であるということです。

\(n=2\)である場合、凸関数\(f\)のグラフはお椀型の曲面(もしくは平面部分を持つ)であるため、グラフ上の点を任意に選んだとき、そこでの接平面全体が\(f\)のグラフの下方に位置するはずです。つまり、\(f\)の定義域上の点\(x_{1}\in X\)を任意に選んだとき、この点における\(f\)のグラフの接平面の方程式は、\begin{equation*}y=\nabla f\left( x_{1}\right) \cdot \left( x-x_{1}\right) +f\left(
x_{1}\right)
\end{equation*}で与えられますが、\(f\)が凸関数である場合には、この接平面全体が\(f\)のグラフの下方にあること、すなわち、任意の\(x_{2}\in X\)について、\begin{equation*}f\left( x_{2}\right) \geq \nabla f\left( x_{1}\right) \cdot \left(
x_{2}-x_{1}\right) +f\left( x_{1}\right)
\end{equation*}が成り立つはずです。これは正しい主張です。しかも、逆の議論もまた成立します。

命題(連続微分可能な多変数の凸関数)
非空の凸集合かつ開集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が\(C^{1}\)級であるものとする。このとき、\begin{equation*}\forall x_{1},x_{2}\in X:f\left( x_{2}\right) \geq \nabla f\left(
x_{1}\right) \cdot \left( x_{2}-x_{1}\right) +f\left( x_{1}\right)
\end{equation*}が成り立つことは、\(f\)が凸関数であるための必要十分条件である。
証明

プレミアム会員専用コンテンツです
ログイン】【会員登録

凸関数に関する先の議論において不等号の向きを逆にすればそのまま凹関数に関する議論になります。したがって、凹関数を以下のような形で特徴づけられます。

命題(連続微分可能な多変数の凹関数)
非空の凸集合かつ開集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が\(C^{1}\)級であるものとする。このとき、\begin{equation*}\forall x_{1},x_{2}\in X:f\left( x_{2}\right) \leq \nabla f\left(
x_{1}\right) \cdot \left( x_{2}-x_{1}\right) +f\left( x_{1}\right)
\end{equation*}が成り立つことは、\(f\)が凹関数であるための必要十分条件である。
例(連続微分可能な多変数の凸関数・凹関数)
関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =x^{2}+y^{2}
\end{equation*}を定めるものとします。\(f\)の定義域\(\mathbb{R} ^{2}\)は非空の凸な開集合です。また、\(f\)は多変数の多項式関数であるため\(C^{1}\)級であり、勾配ベクトル場は、\begin{equation*}\nabla f\left( x,y\right) =\left( \frac{\partial f\left( x,y\right) }{\partial x},\frac{\partial f\left( x,y\right) }{\partial y}\right) =\left(
2x,2y\right)
\end{equation*}となります。点\(\left(x_{1},y_{1}\right) ,\left( x_{2},y_{2}\right) \in \mathbb{R} ^{2}\)を任意に選んだとき、\begin{eqnarray*}&&\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) -f\left(
x_{2},y_{2}\right) \\
&=&\left( 2x_{1},2y_{1}\right) \cdot \left( x_{2}-x_{1},y_{2}-y_{1}\right)
+\left( x_{1}^{2}+y_{1}^{2}\right) -\left( x_{2}^{2}+y_{2}^{2}\right) \\
&=&2x_{1}\left( x_{2}-x_{1}\right) +2y_{1}\left( y_{2}-y_{1}\right) +\left(
x_{1}^{2}+y_{1}^{2}\right) -\left( x_{2}^{2}+y_{2}^{2}\right) \\
&=&2x_{1}x_{2}-x_{1}^{2}+2y_{1}y_{2}-y_{1}^{2}-x_{2}^{2}-y_{2}^{2} \\
&=&-\left( x_{1}-x_{2}\right) ^{2}-\left( y_{1}-y_{2}\right) ^{2} \\
&\leq &0
\end{eqnarray*}すなわち、\begin{equation*}
\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) \leq f\left(
x_{2},y_{2}\right)
\end{equation*}となるため、先の命題より\(f\)は凸関数です。
例(連続微分可能な多変数の凸関数・凹関数)
関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =x+y
\end{equation*}を定めるものとします。\(f\)の定義域\(\mathbb{R} ^{2}\)は非空の凸な開集合です。また、\(f\)は多変数の多項式関数であるため\(C^{1}\)級であり、勾配ベクトル場は、\begin{equation*}\nabla f\left( x,y\right) =\left( \frac{\partial f\left( x,y\right) }{\partial x},\frac{\partial f\left( x,y\right) }{\partial y}\right) =\left(
1,1\right)
\end{equation*}となります。点\(\left(x_{1},y_{1}\right) ,\left( x_{2},y_{2}\right) \in \mathbb{R} ^{2}\)を任意に選んだとき、\begin{eqnarray*}&&\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) -f\left(
x_{2},y_{2}\right) \\
&=&\left( 1,1\right) \cdot \left( x_{2}-x_{1},y_{2}-y_{1}\right) +\left(
x_{1}+y_{1}\right) -\left( x_{2}+y_{2}\right) \\
&=&0
\end{eqnarray*}すなわち、\begin{equation*}
\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) =0
\end{equation*}となるため、先の命題より\(f\)は凸関数かつ凹関数です。

 

連続微分可能な多変数の狭義凸関数・狭義凹関数

関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が狭義凸関数であることは、定義域\(X\)が凸集合であるとともに、\begin{equation*}\forall x_{1}\in X,\ \forall x_{2}\in X\backslash \left\{ x_{1}\right\} ,\
\forall \lambda \in \left( 0,1\right) :\lambda f\left( x_{1}\right) +\left(
1-\lambda \right) f\left( x_{2}\right) >f\left( \lambda x_{1}+\left(
1-\lambda \right) x_{2}\right)
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が狭義凸であることを示す作業は煩雑になりがちです。凸関数に関する先の議論と同様の議論により、狭義凸関数を以下のような形で特徴づけられることが明らかになります。

命題(狭義凸関数の特徴づけ)
非空の凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が与えられたとき、異なる点\(x,y\in X\)を任意に選んだ上で、それぞれの\(\lambda \in \left( 0,1\right) \)に対して、\begin{equation*}f_{x,y}\left( \lambda \right) =f\left( \lambda x+\left( 1-\lambda \right)
y\right)
\end{equation*}を定める関数\(f_{x,y}:\mathbb{R} \supset \left( 0,1\right) \rightarrow \mathbb{R} \)を定義する。任意の\(x,y\in X\)について\(f_{x,y}\)が狭義凸関数であることは、\(f\)が狭義凸関数であるための必要十分条件である。

以上の命題と凸関数に関する先と同様の議論から以下を得ます。

命題(連続微分可能な多変数の狭義凸関数)
非空の凸集合かつ開集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が\(C^{1}\)級であるものとする。このとき、\begin{equation*}\forall x_{1}\in X,\forall x_{2}\in X\backslash \left\{ x_{1}\right\}
:f\left( x_{2}\right) >\nabla f\left( x_{1}\right) \cdot \left(
x-x_{1}\right) +f\left( x_{1}\right)
\end{equation*}が成り立つことは、\(f\)が狭義凸関数であるための必要十分条件である。

関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が狭義凹関数であることは、定義域\(X\)が凸集合であるとともに、\begin{equation*}\forall x_{1}\in X,\ \forall x_{2}\in X\backslash \left\{ x_{1}\right\} ,\
\forall \lambda \in \left( 0,1\right) :\lambda f\left( x_{1}\right) +\left(
1-\lambda \right) f\left( x_{2}\right) <f\left( \lambda x_{1}+\left(
1-\lambda \right) x_{2}\right)
\end{equation*}が成り立つことを意味します。狭義凸関数に関する議論において不等号の向きを逆にすればそのまま狭義凹関数に関する議論になります。したがって、狭義凹関数を以下のような形で特徴づけられます。

命題(狭義凹関数の特徴づけ)
非空の凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が与えられたとき、異なる点\(x,y\in X\)を任意に選んだ上で、それぞれの\(\lambda \in \left( 0,1\right) \)に対して、\begin{equation*}f_{x,y}\left( \lambda \right) =f\left( \lambda x+\left( 1-\lambda \right)
y\right)
\end{equation*}を定める関数\(f_{x,y}:\mathbb{R} \supset \left( 0,1\right) \rightarrow \mathbb{R} \)を定義する。任意の\(x,y\in X\)について\(f_{x,y}\)が狭義凹関数であることは、\(f\)が狭義凹関数であるための必要十分条件である。

以上の命題と凹関数に関する先と同様の議論から以下を得ます。

命題(連続微分可能な多変数の狭義凹関数)
非空の凸集合かつ開集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が\(C^{1}\)級であるものとする。このとき、\begin{equation*}\forall x_{1}\in X,\forall x_{2}\in X\backslash \left\{ x_{1}\right\}
:f\left( x_{2}\right) <\nabla f\left( x_{1}\right) \cdot \left(
x-x_{1}\right) +f\left( x_{1}\right)
\end{equation*}が成り立つことは、\(f\)が狭義凹関数であるための必要十分条件である。
例(連続微分可能な多変数の狭義凸関数・狭義凹関数)
関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =-x^{2}-y^{2}
\end{equation*}を定めるものとします。\(f\)の定義域\(\mathbb{R} ^{2}\)は非空の凸な開集合です。また、\(f\)は多変数の多項式関数であるため\(C^{1}\)級であり、勾配ベクトル場は、\begin{equation*}\nabla f\left( x,y\right) =\left( \frac{\partial f\left( x,y\right) }{\partial x},\frac{\partial f\left( x,y\right) }{\partial y}\right) =\left(
-2x,-2y\right)
\end{equation*}となります。異なる点\(\left( x_{1},y_{1}\right) ,\left( x_{2},y_{2}\right) \in \mathbb{R} ^{2}\)を任意に選んだとき、\begin{eqnarray*}&&\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) -f\left(
x_{2},y_{2}\right) \\
&=&\left( -2x_{1},-2y_{1}\right) \cdot \left( x_{2}-x_{1},y_{2}-y_{1}\right)
+\left( -x_{1}^{2}-y_{1}^{2}\right) -\left( -x_{2}^{2}-y_{2}^{2}\right) \\
&=&-2x_{1}\left( x_{2}-x_{1}\right) -2y_{1}\left( y_{2}-y_{1}\right) +\left(
-x_{1}^{2}-y_{1}^{2}\right) -\left( -x_{2}^{2}-y_{2}^{2}\right) \\
&=&-2x_{1}x_{2}+x_{1}^{2}-2y_{1}y_{2}+y_{1}^{2}+x_{2}^{2}+y_{2}^{2} \\
&=&\left( x_{1}-x_{2}\right) ^{2}+\left( y_{1}-y_{2}\right) ^{2} \\
&>&0\quad \because \left( x_{1},y_{1}\right) \not=\left( x_{2},y_{2}\right)
\end{eqnarray*}すなわち、\begin{equation*}
\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) >f\left(
x_{2},y_{2}\right)
\end{equation*}となるため、先の命題より\(f\)は狭義凹関数です。
例(連続微分可能な多変数の凸関数・凹関数)
関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =x+y
\end{equation*}を定めるものとします。\(f\)の定義域\(\mathbb{R} ^{2}\)は非空の凸な開集合です。また、\(f\)は多変数の多項式関数であるため\(C^{1}\)級であり、勾配ベクトル場は、\begin{equation*}\nabla f\left( x,y\right) =\left( \frac{\partial f\left( x,y\right) }{\partial x},\frac{\partial f\left( x,y\right) }{\partial y}\right) =\left(
1,1\right)
\end{equation*}となります。異なる点\(\left( x_{1},y_{1}\right) ,\left( x_{2},y_{2}\right) \in \mathbb{R} ^{2}\)を任意に選んだとき、\begin{eqnarray*}&&\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) -f\left(
x_{2},y_{2}\right) \\
&=&\left( 1,1\right) \cdot \left( x_{2}-x_{1},y_{2}-y_{1}\right) +\left(
x_{1}+y_{1}\right) -\left( x_{2}+y_{2}\right) \\
&=&0
\end{eqnarray*}すなわち、\begin{equation*}
\nabla f\left( x_{1},y_{1}\right) \cdot \left(
x_{2}-x_{1},y_{2}-y_{1}\right) +f\left( x_{1},y_{1}\right) =0
\end{equation*}となるため、先の命題より\(f\)は狭義凸関数と狭義凹関数のどちらでもありません。

 

演習問題

問題(狭義凸関数・狭義凹関数)
関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =\left( x+y\right) ^{2}
\end{equation*}を定めるものとします。\(f\)は狭義凸関数、狭義凹関数、狭義凸関数と狭義凹関数のどちらでもない、のどれでしょうか。議論してください。
証明

プレミアム会員専用コンテンツです
ログイン】【会員登録

次回は2階連続微分可能な多変数関数が凸関数(狭義凸関数)や凹関数(狭義凹関数)であることを判定する方法について解説します。

Share on twitter
Twitterで共有
Share on email
メールで共有
DISCUSSION

質問とコメント

プレミアム会員専用コンテンツです
ログイン】【会員登録

RELATED KNOWLEDGE

関連知識

凸関数・凹関数
1変数の凸関数・凹関数

定義域が区間であるとともに、そのグラフが直線もしくは谷型の曲線になるような関数を凸関数と呼び、グラフが直線もしくは山型の曲線になるような関数を凹関数と呼びます。

凸関数・凹関数
1変数の狭義凸関数・狭義凹関数

定義域が区間であるとともに、そのグラフが谷型の曲線になるような関数を狭義凸関数と呼び、グラフが山型の曲線になるような関数を狭義凹関数と呼びます。

偏微分
勾配ベクトル(グラディエント)

多変数関数が定義域上の点においてすべての変数に関して偏微分可能である場合、その点におけるそれぞれの変数に関する偏微分係数を成分とするベクトルが存在します。これを勾配ベクトル(グラディエント)と呼びます。

凸関数・凹関数
微分可能な1変数の凸関数・凹関数

微分可能な関数が凸関数であることは、導関数が単調増加関数であることと必要十分です。また、微分可能な関数が凹関数であることは、導関数が単調減少関数であることと必要十分です。

2階の必要条件
1変数凸関数・凹関数の無制約最適化

1変数の凸関数を目的関数とする制約条件のない最小化問題や、1変数の凹関数を目的関数とする制約条件のない最大化問題を解く方法を解説します。

凸関数・凹関数
多変数の凸関数・凹関数

定義域がユークリッド空間上の凸集合であるとともに、そのグラフが平面もしくは下に凸であるような関数を凸関数と呼びます。また、グラフが平面もしくは上に凸であるよう関数を凹関数と呼びます。

凸関数・凹関数
多変数の狭義凸関数・狭義凹関数

定義域がユークリッド空間上の凸集合であるとともに、そのグラフが下に凸であるような関数を狭義凸関数と呼びます。また、グラフが上に凸であるよう関数を狭義凹関数と呼びます。

凸関数・凹関数
多変数凸関数・凹関数の無制約最適化

多変数の凸関数を目的関数とする制約条件のない最小化問題や、多変数の凹関数を目的関数とする制約条件のない最大化問題を解く方法を解説します。