下位集合を用いた1変数の準凸関数の判定
区間上に定義された関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が準凸関数であることは、\begin{equation*}\forall x_{1},x_{2}\in I,\ \forall \lambda \in \left[ 0,1\right] :f\left(
\lambda x_{1}+\left( 1-\lambda \right) x_{2}\right) \leq \max \left\{
f\left( x_{1}\right) ,f\left( x_{2}\right) \right\}
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が準凸であることを示す作業は煩雑になりがちです。ただし、関数\(f\)が\(C^{1}\)級である場合、\begin{equation*}\forall x_{1},x_{2}\in I:\left[ f\left( x_{2}\right) \leq f\left(
x_{1}\right) \Rightarrow \left( x_{2}-x_{1}\right) \cdot f^{\prime }\left(
x_{1}\right) \leq 0\right]
\end{equation*}が成り立つことは、\(f\)は準凸関数であるための必要十分条件です。では、関数\(f\)が微分可能でない場合、\(f\)が準凸関数であることを簡単に判定する方法はあるのでしょうか。
関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が与えられたとき、\(f\left( x\right) \)の値がある実数\(c\in \mathbb{R} \)以下になるような定義域の点\(x\in I\)からなる集合を、\begin{equation*}L\left( c\right) =\left\{ x\in I\ |\ f\left( x\right) \leq c\right\}
\end{equation*}で表記し、これを\(f\)の\(c\)に関する下位集合(lower level set)や劣位集合(sublevel set)などと呼びます。
関数\(f\)が準凸関数であることは、任意の実数\(c\)に関する\(f\)の下位集合\(L\left( c\right) \)が凸集合であることとして特徴づけられます。ちなみに、ある値\(c\)に対する下位集合\(L\left( c\right) \)が空集合であるような状況は起こり得ますが、空集合は凸集合であるためそのような値\(c\)は問題になりません。
\end{equation*}が凸集合であることは、\(f\)が準凸関数であるための必要十分条件である。
\end{equation*}を定めるものとします。実数\(c\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}L\left( c\right) &=&\left\{ x\in \mathbb{R} _{++}\ |\ f\left( x\right) \leq c\right\} \quad \because \text{下位集合の定義} \\
&=&\left\{ x\in \mathbb{R} _{++}\ |\ \ln \left( x\right) \leq c\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} _{++}\ |\ x\leq e^{c}\right\} \\
&=&(0,e^{c}] \end{eqnarray*}となります。任意の\(c \in \mathbb{R}\)に対して\(e^{c}>0\)であるため、\((0,e^{c}]\)すなわち\(L\left( c\right) \)は空集合ではありません。有界半閉区間は\(\mathbb{R} \)上の凸集合であるため\(L\left( c\right) \)は凸集合です。したがって\(f\)は準凸関数です。
\end{equation*}を定めるものとします。実数\(c\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}L\left( c\right) &=&\left\{ x\in \mathbb{R} \ |\ f\left( x\right) \leq c\right\} \quad \because \text{下位集合の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ 2x\leq c\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ x\leq \frac{c}{2}\right\} \\
&=&\left( -\infty ,\frac{c}{2}\right] \end{eqnarray*}となりますが、\(\mathbb{R} \)上の無限半閉区間は凸集合であるため\(L\left(c\right) \)は凸集合です。したがって\(f\)は準凸関数です。
先の命題は関数が準凸であるための必要十分条件を与えているため、関数が準凸ではないことを証明する際にも利用できます。具体的には、区間上に定義された関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が与えられたとき、少なくとも1つの実数\(c\in \mathbb{R} \)に関する下位集合\begin{equation*}L\left( c\right) =\left\{ x\in I\ |\ f\left( x\right) \leq c\right\}
\end{equation*}が凸集合ではない場合、\(f\)は準凸関数ではありません。
\end{equation*}を定めるものとします。実数\(1\)に関する下位集合は、\begin{eqnarray*}L\left( 1\right) &=&\left\{ x\in \mathbb{R} \ |\ f\left( x\right) \leq 1\right\} \quad \because \text{下位集合の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ -x^{2}\leq 1\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ x^{2}\geq 1\right\} \\
&=&\left\{ x\in \mathbb{R} \ |\ x\leq -1\vee x\geq 1\right\} \\
&=&\left( -\infty ,-1\right] \cup \lbrack 1,+\infty )
\end{eqnarray*}ですが、これは凸集合ではないため\(f\)は準凸関数ではありません。
上位集合を用いた1変数の準凹関数の判定
区間上に定義された関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が準凹関数であることは、\begin{equation*}\forall x_{1},x_{2}\in I,\ \forall \lambda \in \left[ 0,1\right] :\min
\left\{ f\left( x_{1}\right) ,f\left( x_{2}\right) \right\} \leq f\left(
\lambda x_{1}+\left( 1-\lambda \right) x_{2}\right)
\end{equation*}が成り立つこととして定義されますが、定義にもとづいて関数が準凹であることを示す作業は煩雑になりがちです。ただし、関数\(f\)が\(C^{1}\)級である場合、\begin{equation*}\forall x_{1},x_{2}\in I:\left[ f\left( x_{2}\right) \geq f\left(
x_{1}\right) \Rightarrow \left( x_{2}-x_{1}\right) \cdot f^{\prime }\left(
x_{1}\right) \geq 0\right]
\end{equation*}が成り立つことは、\(f\)は準凹関数であるための必要十分条件です。では、関数\(f\)が微分可能でない場合、\(f\)が準凹関数であることを簡単に判定する方法はあるのでしょうか。
関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が与えられたとき、\(f\left( x\right) \)の値がある実数\(c\in \mathbb{R} \)以上になるような定義域の点\(x\in I\)からなる集合を、\begin{equation*}U\left( c\right) =\left\{ x\in I\ |\ f\left( x\right) \geq c\right\}
\end{equation*}で表記し、これを\(f\)の\(c\)に関する上位集合(upper level set)や優位集合(super level set)などと呼びます。
関数\(f\)が準凹関数であることは、任意の実数\(c\)に関する\(f\)の上位集合\(U\left( c\right) \)が凸集合であることとして特徴づけられます。ちなみに、ある値\(c\)に対する上位集合\(U\left( c\right) \)が空集合であるような状況は起こり得ますが、空集合は凸集合であるためそのような値\(c\)は問題になりません。
\end{equation*}が凸集合であることは、\(f\)が準凹関数であるための必要十分条件である。
\end{equation*}を定めるものとします。実数\(c\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}U\left( c\right) &=&\left\{ x\in \mathbb{R} _{++}\ |\ f\left( x\right) \geq c\right\} \quad \because \text{上位集合の定義} \\
&=&\left\{ x\in \mathbb{R} _{++}\ |\ \ln \left( x\right) \geq c\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} _{++}\ |\ x\geq e^{c}\right\} \\
&=&[e^{c},+\infty )
\end{eqnarray*}となりますが、\(\mathbb{R} \)上の無限半閉区間は凸集合であるため\(U\left(c\right) \)は凸集合です。したがって\(f\)は準凹関数です。
\end{equation*}を定めるものとします。実数\(c\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}U\left( c\right) &=&\left\{ x\in \mathbb{R} \ |\ f\left( x\right) \geq c\right\} \quad \because \text{上位集合の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ 2x\geq c\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ x\geq \frac{c}{2}\right\} \\
&=&\left[ \frac{c}{2},+\infty \right)
\end{eqnarray*}となりますが、\(\mathbb{R} \)上の無限半閉区間は凸集合であるため\(U\left(c\right) \)は凸集合です。したがって\(f\)は準凹関数です。
先の命題は関数が準凹であるための必要十分条件を与えているため、関数が準凹ではないことを証明する際にも利用できます。具体的には、区間上に定義された関数\(f:\mathbb{R} \supset I\rightarrow \mathbb{R} \)が与えられたとき、少なくとも1つの実数\(c\in \mathbb{R} \)に関する上位集合\begin{equation*}U\left( c\right) =\left\{ x\in I\ |\ f\left( x\right) \geq c\right\}
\end{equation*}が凸集合ではない場合、\(f\)は準凹関数ではありません。
\end{equation*}を定めるものとします。実数\(1\)に関する上位集合は、\begin{eqnarray*}U\left( 1\right) &=&\left\{ x\in \mathbb{R} \ |\ f\left( x\right) \geq 1\right\} \quad \because \text{下位集合の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ x^{2}\geq 1\right\} \quad \because f\text{の定義} \\
&=&\left\{ x\in \mathbb{R} \ |\ x\leq -1\vee x\geq 1\right\} \\
&=&\left( -\infty ,-1\right] \cup \lbrack 1,+\infty )
\end{eqnarray*}ですが、これは凸集合ではないため\(f\)は準凹関数ではありません。
演習問題
\sin \left( x\right) :\mathbb{R} \rightarrow \mathbb{R} \end{equation*}が準凸関数や準凹関数ではないことを上位集合や下位集合を用いて示してください。
\end{equation*}を定めるものとします。\(f\)が準凸かつ準凹であることを上位集合と下位集合を用いて示してください。
\begin{array}{cl}
-x^{2} & \left( x<0\right) \\
0 & \left( 0\leq x\leq 1\right) \\
-\left( x-2\right) ^{2}+1 & \left( 1\leq x\right)
\end{array}\right.
\end{equation*}を定めるものとします。\(f\)が準凹であることを示してください。
プレミアム会員専用コンテンツです
【ログイン】【会員登録】