《凸解析》
【とつかいせき (convex analysis)】
凸解析 (convex analysis) は,ベクトル空間における凸集合あるいはベクトル空間上で定義された凸関数に関する諸性質を取り扱うものであり,数理計画の基礎理論として非常に重要な役割を果たしている.
次の性質をもつ空間 $\mathbf{R}^n$ の部分集合 $S \subseteq \mathbf{R}^n$ を凸集合 (convex set) と呼ぶ.
x, \, y \in S, \ \alpha \in (0,1)
\ \Longrightarrow \ \alpha x + (1-\alpha) y \in S
特に,有限個の半空間の共通部分として表される凸集合を凸多面体と呼ぶ.
空間 $\mathbf{R}^n$ 上で定義された拡張実数値関数 $f : \mathbf{R}^n \to [-\infty,+\infty]$ に対して,そのエピグラフを$\mbox{epi}\, f := \{ (x,\mu) \in \mathbf{R}^{n+1} \, | \,f(x) \le \mu \}$と定義し,$\mbox{epi}\, f$ が凸集合であるような関数 $f$ を凸関数 (convex function) と呼ぶ.ここで,関数 $f$ の値域に $\pm \infty$ が含まれていることは重要である.考察の対象とする関数をこのように拡張することにより,最適化問題に関連する諸性質を統一的に記述することが可能となる.例えば,実数値凸関数 $h : \mathbf{R}^n \to \mathbf{R}$ を凸集合 $S \subseteq \mathbf{R}^n$ 上で最小化する制約つき最適化問題は,拡張実数値関数 $\hat h : \mathbf{R}^n \to (-\infty,+\infty]$ を $\hat h(x) = h(x) \ (x \in S \ \mbox{のとき}), \ = + \infty \ (x \not\in S \ \mbox{のとき})$ と定義することにより,見かけ上,凸関数 $\hat h$ を制約なしで最小化する問題として表すことができる.また,$f(x) = -\infty$ となる点 $x$ が存在せず,さらに恒等的に $f(x) \equiv +\infty$ ではないようなものを,特に真凸関数といい,集合 $\mbox{dom}\, f := \{ x \, | \, f(x) < +\infty \}$ を $f$ の実効定義域あるいは単に定義域と呼ぶ.真凸関数は理論的にも実際的にも意味のある凸関数のクラスと考えることができる.なお,$f(x) = -\infty$ となる $x$ が存在しないような関数 $f$ に対しては
x, \, y \in \mbox{dom} \, f, \ \alpha \in (0,1)
\ \Longrightarrow \ f(\alpha x + (1-\alpha)y)
\le \alpha f(x) + (1-\alpha) f(y)
を凸関数の定義とすることもできる.さらに,
x, \, y \in \mbox{dom} \, f,
\ x \ne y, \ \alpha \in (0,1)
\ \Longrightarrow \ f(\alpha x + (1-\alpha)y)
< \alpha f(x) + (1-\alpha) f(y)
であるとき,$f$ を狭義凸関数という.明らかに,狭義凸関数は凸関数である.文献 \cite{1,2,3,4} に凸関数や凸集合の様々な性質に関する詳しい説明がある.
次の性質をもつ集合 $C \subseteq \mathbf{R}^n$ を錐と呼ぶ.
x \in C, \ \alpha \ge 0 \ \Longrightarrow \ \alpha x \in C
特に,凸集合であるような錐を凸錐 (convex cone) という.最適化理論においては,凸錐はしばしば方向ベクトルの集合を表し,特に最適性条件の導出に際して重要である [4].凸錐 $C \subseteq \mathbf{R}^n$ に対して,集合 $\{ y \in \mathbf{R}^n \, | \,x^{\top}y \le 0 \ \forall x \in C \}$ を $C$ の極錐と呼び,$C^*$ と表す.与えられたベクトル $a^1, \dots, a^m \in \mathbf{R}^n$ に対して定義される凸錐 $C = \{ x \in \mathbf{R}^n \, | \, x=\sum_{i=1}^m \gamma_i a^i,\ \gamma_i \ge 0, \ i=1,\dots,m \}$ の極錐は $C^* = \{ y \in \mathbf{R}^n \, | \, y^{\top}a^i \le 0, \, i=1,\dots,m \}$ で与えられ,さらに $C = (C^*)^*$ が成り立つ.これは,$b \in C$,すなわち $ \sum_{i=1}^m \gamma_i a^i = b$ を満たす $\gamma_i \ge 0, \, i=1,\dots,m,$ が存在することと,$b \not\in C$,すなわち $y^{\top} b > 0$ を満たすベクトル $y \in C^*$ が存在することの,どちらか一方のみが成立することを意味している.これはファーカスの定理と呼ばれている.このように,2つの条件の一方のみが必ず成り立つことを保証する定理は,一般に二者択一定理 (theorem of the alternative) と呼ばれ,最適性条件の導出に有用である [2].
真凸関数 $f$ に対して,次式を満足するベクトル $\xi \in \mathbf{R}^n$ を $f$ の $x$ における劣勾配 (subgradient) と呼ぶ.
\begin{equation} \label{A-B-09+siki1}
f(y) \ge f(x) + \xi^{\top}(y-x) \quad\quad \forall \, y \in \mathbf{R}^n
\end{equation}
真凸関数はその実効定義域 $\mbox{dom} \, f$ の任意の相対的内点において,少なくとも1つの劣勾配をもつ.特に,凸関数 $f$ が点 $x$ において微分可能ならば,$f$ の $x$ における劣勾配は唯一存在し,通常の勾配 $\nabla f(x)$ に等しい.しかし,$f$ が点 $x$ において微分可能でないときには劣勾配は無数に存在する.一般に,$f$ の $x$ における劣勾配全体の集合は $\partial f(x)$ と表される.劣勾配の定義 (1) より,$0 \in \partial f(x)$ は点 $x$ が凸関数の最小点であるための必要十分条件であることは容易に確かめられる.劣勾配の概念は非凸関数に対しても拡張され,微分不可能最適化において基本的な役割を果たしている [1,3,4].
真凸関数 $f$ に対して,次式で定義される真凸関数 $f^*$ を $f$ の共役関数 (conjugate function) という.
\begin{equation} \label{A-B-09+siki2}
f^*(\xi) := \sup_{x \in \mathbf{R}^n} \{ \, \xi^{\top} x - f(x) \, \}
\end{equation}
いま,$\partial f$ と $\partial f^*$ を点-集合写像とみなせば,$\partial f$ と $\partial f^*$ は互いに逆写像の関係にあり,さらに,$\partial f^*(\xi)$ の任意の要素 $x$ は共役関数 $f^*$ の定義 (2) の右辺の最大を与える.すなわち,次の関係が成立する.
\xi \in \partial f(x) \quad \Longleftrightarrow \quad
x \in \partial f^*(\xi) \quad \Longleftrightarrow \quad
f(x) + f^*(\xi) = \xi^{\top} x
共役関数の概念は最適化問題に対する双対理論において特に重要である [3,4].
参考文献
[1] J.-B. Hiriart-Urruty and C. Lemaréchal, Convex Analysis and Minimization Algorithms, I and II, % Springer, 1993.
福島雅夫, 『非線形最適化の基礎』, 朝倉書店, 2001.
[2] O.L. Mangasarian, Nonlinear Programming, McGraw-Hill, 1969; (reprint, SIAM, 1994).
[3] R.T. Rockafellar, Convex Analysis, Princeton University Press, 1970.
[4] R.T. Rockafellar and R.J.B. Wets, Variational Analysis, Springer, 1998.