検索
Close this search box.
凸関数・凹関数

エピグラフやハイポグラフを用いた多変数の凸関数・凹関数の判定

メール
Xで共有

エピグラフを用いた多変数の凸関数の判定

凸集合上に定義された多変数関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が凸関数であることは、\begin{equation*}\forall \boldsymbol{x},\boldsymbol{y}\in X,\ \forall \lambda \in \left[ 0,1\right] :\lambda f\left( \boldsymbol{x}\right) +\left( 1-\lambda \right)
f\left( \boldsymbol{y}\right) \geq f\left( \lambda \boldsymbol{x}+\left(
1-\lambda \right) \boldsymbol{y}\right)
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が凸であることを示す作業は煩雑になりがちです。これまで明らかにしたように、関数\(f\)が全微分可能であったり\(C^{2}\)級である場合には勾配ベクトルやヘッセ行列を用いることにより\(f\)が凸であることを判定できます。では、関数\(f\)が微分可能であるとは限らない場合、\(f\)が凸関数であることを容易に判定する方法はあるのでしょうか。

凸集合上に定義された多変数関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)のグラフは、\begin{equation*}G\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in X\times \mathbb{R} \ |\ y=f\left( \boldsymbol{x}\right) \right\}
\end{equation*}と定義される\(\mathbb{R} ^{n+1}\)の部分集合であるため、空間\(\mathbb{R} ^{n+1}\)は\(G\left( f\right) \)を境に、その上部の領域と下部の領域に分割されます。特に、\(G\left( f\right) \)を含めてそれよりも上部の領域であるような\(\mathbb{R} ^{n+1}\)の部分集合を、\begin{equation*}\mathrm{epi}\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in
X\times \mathbb{R} \ |\ y\geq f\left( \boldsymbol{x}\right) \right\}
\end{equation*}で表記し、これを関数\(f\)のエピグラフ(epigraph)と呼びます。定義より以下の関係\begin{equation*}G\left( f\right) \subset \mathrm{epi}\left( f\right)
\end{equation*}が成り立ちます。

関数のエピグラフが凸集合であることは、その関数が凸関数であるための必要十分条件です。

命題(エピグラフを用いた凸関数の判定)
凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)のエピグラフ\(\mathrm{epi}\left(f\right) \)が凸集合であることと、\(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\)のエピグラフは、\begin{eqnarray*}\mathrm{epi}\left( f\right) &=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\geq f\left( x,y\right) \right\} \\
&=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\geq x^{2}+y^{2}\right\}
\end{eqnarray*}ですが、これは下に凸な放物面\begin{equation*}
z=x^{2}+y^{2}
\end{equation*}の上側全体の集合であるため凸集合です(演習問題)。したがって先の命題より\(f\)は凸関数です。

 

ハイポグラフを用いた多変数の凹関数の判定

凸集合上に定義された多変数関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)が凹関数であることは、\begin{equation*}\forall \boldsymbol{x},\boldsymbol{y}\in X,\ \forall \lambda \in \left[ 0,1\right] :\lambda f\left( \boldsymbol{x}\right) +\left( 1-\lambda \right)
f\left( \boldsymbol{y}\right) \leq f\left( \lambda \boldsymbol{x}+\left(
1-\lambda \right) \boldsymbol{y}\right)
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が凹であることを示す作業は煩雑になりがちです。これまで明らかにしたように、関数\(f\)が全微分可能であったり\(C^{2}\)級である場合には勾配ベクトルやヘッセ行列を用いることにより\(f\)が凹であることを判定できます。では、関数\(f\)が微分可能であるとは限らない場合、\(f\)が凹関数であることを容易に判定する方法はあるのでしょうか。

凸集合上に定義された多変数関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)のグラフは、\begin{equation*}G\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in X\times \mathbb{R} \ |\ y=f\left( \boldsymbol{x}\right) \right\}
\end{equation*}と定義される\(\mathbb{R} ^{n+1}\)の部分集合であるため、空間\(\mathbb{R} ^{n+1}\)は\(G\left( f\right) \)を境に、その上部の領域と下部の領域に分割されます。特に、\(G\left( f\right) \)を含めてそれよりも下部の領域であるような\(\mathbb{R} ^{n+1}\)の部分集合を、\begin{equation*}\mathrm{hyp}\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in
X\times \mathbb{R} \ |\ y\leq f\left( \boldsymbol{x}\right) \right\}
\end{equation*}で表記し、これを関数\(f\)のハイポグラフ(hypograph)と呼びます。定義より以下の関係\begin{equation*}G\left( f\right) \subset \mathrm{hyp}\left( f\right)
\end{equation*}が成り立ちます。

関数のハイポグラフが凸集合であることは、その関数が凹関数であるための必要十分条件です。

命題(ハイポグラフを用いた凹関数の判定)
凸集合上に定義された関数\(f:\mathbb{R} ^{n}\supset X\rightarrow \mathbb{R} \)のハイポグラフ\(\mathrm{hyp}\left(f\right) \)が凸集合であることと、\(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\)のハイポグラフは、\begin{eqnarray*}\mathrm{hyp}\left( f\right) &=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\leq f\left( x,y\right) \right\} \\
&=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\leq -x^{2}-y^{2}\right\}
\end{eqnarray*}ですが、これは上に凸な放物面\begin{equation*}
z=-x^{2}-y^{2}
\end{equation*}の下側全体の集合であるため凸集合です(演習問題)。したがって先の命題より\(f\)は凹関数です。

 

エピグラフを用いた多変数の拡大実数値凸関数の判定

拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ +\infty \right\} \)が凸関数であることは、\begin{equation*}\forall \boldsymbol{x},\boldsymbol{y}\in \mathbb{R} ^{n},\ \forall \lambda \in \left[ 0,1\right] :\lambda f\left( \boldsymbol{x}\right) +\left( 1-\lambda \right) f\left( \boldsymbol{y}\right) \geq f\left(
\lambda \boldsymbol{x}+\left( 1-\lambda \right) \boldsymbol{y}\right)
\end{equation*}が成り立つこととして定義されます。拡大実数値をとる凸関数に関しても、それをエピグラフを用いて表現できます。

拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ +\infty \right\} \)に対して、そのエピグラフを、\begin{equation*}\mathrm{epi}\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in \mathbb{R} ^{n+1}\ |\ y\geq f\left( \boldsymbol{x}\right) \right\}
\end{equation*}と定義します。\(f\)は拡大実数を値としてとり得る一方で、エピグラフの定義において\(y\)は実数だけを値としてとり得る状況を想定していることに注意してください。言い換えると、\(\boldsymbol{x}\)がとり得る値の範囲を\(f\)の有効領域\begin{equation*}\mathrm{dom}\left( f\right) =\left\{ \boldsymbol{x}\in \mathbb{R} ^{n}\ |\ f\left( \boldsymbol{x}\right) <+\infty \right\}
\end{equation*}に制限した上でエピグラフを定義するということです。

拡大実数値関数\(f\)に関しても、\(f\)のエピグラフが\(\mathbb{R} ^{n+1}\)上の凸集合であることと\(f\)が凸関数であることは必要十分です。

命題(拡大実数値凸関数とエピグラフ)
拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ +\infty \right\} \)のエピグラフ\(\mathrm{epi}\left( f\right) \)が凸集合であることと、\(f\)が凸関数であることは必要十分である。
証明

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

例(拡大実数値凸関数とエピグラフ)
拡大実数値関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \cup \left\{ +\infty \right\} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =\left\{
\begin{array}{cl}
\frac{1}{x+y} & \left( if\ \left( x,y\right) \in X\right) \\
+\infty & \left( if\ \left( x,y\right) \not\in X\right)
\end{array}\right.
\end{equation*}を定めるものとします。ただし、\begin{equation*}
X=\left\{ \left( x,y\right) \in \mathbb{R} ^{2}\ |\ x+y>0\right\}
\end{equation*}です。\(f\)のエピグラフは、\begin{eqnarray*}\mathrm{epi}\left( f\right) &=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\geq f\left( x,y\right) \right\} \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\geq \frac{1}{x+y}\right\} \cup \left\{ \left( x,y,z\right) \in \left( \mathbb{R} ^{2}\backslash X\right) \times \mathbb{R} \ |\ z\geq +\infty \right\} \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\geq \frac{1}{x+y}\right\} \cup \phi \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\geq \frac{1}{x+y}\right\}
\end{eqnarray*}ですが、これは凸集合であるため\(f\)は凸関数です。

 

ハイポグラフを用いた多変数の拡大実数値凸関数の判定

拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ -\infty \right\} \)が凹関数であることは、\begin{equation*}\forall \boldsymbol{x},\boldsymbol{y}\in \mathbb{R} ^{n},\ \forall \lambda \in \left[ 0,1\right] :\lambda f\left( \boldsymbol{x}\right) +\left( 1-\lambda \right) f\left( \boldsymbol{y}\right) \leq f\left(
\lambda \boldsymbol{x}+\left( 1-\lambda \right) \boldsymbol{y}\right)
\end{equation*}が成り立つこととして定義されます。拡大実数値をとる凹関数に関しても、それをハイポグラフを用いて表現できます。

拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ -\infty \right\} \)に対して、そのハイポグラフを、\begin{equation*}\mathrm{hyp}\left( f\right) =\left\{ \left( \boldsymbol{x},y\right) \in \mathbb{R} ^{n+1}\ |\ y\leq f\left( \boldsymbol{x}\right) \right\}
\end{equation*}と定義します。\(f\)は拡大実数を値としてとり得る一方で、ハイポグラフの定義において\(y\)は実数だけを値としてとり得る状況を想定していることに注意してください。言い換えると、\(\boldsymbol{x}\)がとり得る値の範囲を\(f\)の有効領域\begin{equation*}\mathrm{dom}\left( f\right) =\left\{ \boldsymbol{x}\in \mathbb{R} ^{n}\ |\ f\left( \boldsymbol{x}\right) >-\infty \right\}
\end{equation*}に制限した上でハイポグラフを定義するということです。

拡大実数値関数\(f\)に関しても、\(f\)のハイポグラフが\(\mathbb{R} ^{n+1}\)上の凸集合であることと\(f\)が凹関数であることは必要十分です。

命題(拡大実数値凹関数とハイポグラフ)
拡大実数値関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ -\infty \right\} \)のハイポグラフ\(\mathrm{hyp}\left( f\right) \)が凸集合であることと、\(f\)が凹関数であることは必要十分である。
証明

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

例(拡大実数値凹関数とハイポグラフ)
拡大実数値関数\(f:\mathbb{R} ^{2}\rightarrow \mathbb{R} \cup \left\{ -\infty \right\} \)はそれぞれの\(\left( x,y\right) \in \mathbb{R} ^{2}\)に対して、\begin{equation*}f\left( x,y\right) =\left\{
\begin{array}{cl}
\frac{1}{x+y} & \left( if\ \left( x,y\right) \in X\right) \\
-\infty & \left( if\ \left( x,y\right) \not\in X\right)
\end{array}\right.
\end{equation*}を定めるものとします。ただし、\begin{equation*}
X=\left\{ \left( x,y\right) \in \mathbb{R} ^{2}\ |\ x+y<0\right\}
\end{equation*}です。\(f\)のハイポグラフは、\begin{eqnarray*}\mathrm{hyp}\left( f\right) &=&\left\{ \left( x,y,z\right) \in \mathbb{R} ^{3}\ |\ z\leq f\left( x,y\right) \right\} \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\leq \frac{1}{x+y}\right\} \cup \left\{ \left( x,y,z\right) \in \left( \mathbb{R} ^{2}\backslash X\right) \times \mathbb{R} \ |\ z\leq -\infty \right\} \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\leq \frac{1}{x+y}\right\} \cup \phi \\
&=&\left\{ \left( x,y,z\right) \in X\times \mathbb{R} \ |\ z\leq \frac{1}{x+y}\right\}
\end{eqnarray*}ですが、これは凸集合であるため\(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\)が凸関数であることをエピグラフを用いて示してください。
解答を見る

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

問題(エピグラフと凸関数)
関数\(f:\mathbb{R} ^{n}\rightarrow \mathbb{R} \cup \left\{ +\infty \right\} \)はそれぞれの\(\boldsymbol{x}\in \mathbb{R} ^{n}\)に対して、\begin{equation*}f\left( \boldsymbol{x}\right) =\left\{
\begin{array}{cl}
0 & \left( if\ \left\Vert \boldsymbol{x}\right\Vert \leq 1\right) \\
+\infty & \left( otherwise\right)
\end{array}\right.
\end{equation*}を定めるものとします。\(f\)が凸関数であることをエピグラフを用いて示してください。
解答を見る

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

関連知識

メール
Xで共有

質問とコメント

プレミアム会員専用コンテンツです

会員登録

有料のプレミアム会員であれば、質問やコメントの投稿と閲覧、プレミアムコンテンツ(命題の証明や演習問題とその解答)へのアクセスなどが可能になります。

WIISでは、年齢・性別・学歴・職業・社会的立場などにかかわらず、すべてのユーザーが「学ぶ人」として対等であると考えています。ここは、知識を競う場所ではなく、互いに尊重し合いながら理解を深めていく場です。安心して思考し、質問し、考え続けられる環境を、みなさんと一緒につくっていきたいと考えています。

誤字脱字、リンク切れ、内容の誤りを発見した場合にはコメントに投稿するのではなく、以下のフォームからご連絡をお願い致します。

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