53
1 2 最適化理論の基礎 1 章では,最適設計問題の具体例を挙げて最適性の条件を求めるまでをみてきた. その過程で最適化理論で使われる用語や結果が使われた.本章では,最適化理論を体 系的に解説しておきたい. 本章の舞台は有限次元ベクトル空間である.すなわち,設計空間状態空間は有限 次元ベクトル空間で与えられると仮定する.本書では,将来,関数空間上で最適化問 題を構成してその解法を考える.しかし,本章で示される概念や結果の多くはそのま ま関数空間でも使うことができる.その意味で,本章の内容は本書の基盤をなすとい える.いいかえれば,本書がどれだけ信頼に値するかは本章の内容にかかっていると いっても過言ではない.そのために,やや抽象的な内容になるが,定義と定理の形式 でまとめておきたい.ここでは,これらの抽象的な内容を具体的なイメージにむすび つけることができるように,読者になじみのある簡単なばね系を用いた例題をはさみ ながら説明を進めていくことにする. 2.1 最適化問題の定義 最初に,第 1 章でみてきた問題を念頭において,本章で考察の対象とする最適化問 題を定義しよう.問題 1.5 では,断面積を a X = R n ,変位を u U = R n とお き,第 1 章ではそれらを設計変数および状態変数とよんだ.ここで,X U はそれ らの線形空間を表していた.まず,この問題が含まれるような一般化を行って,いく つかの最適化問題を定義しよう. 最初に,線形空間に対する記号法について,他の章とは異なる使い方をすることを 断っておこう.第 1 章では,X U をそれぞれを設計変数と状態変数に対する線形 空間を表していた.第 2 章では,設計変数と状態変数をあわせて設計変数とよび,X

最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

1

第 2章

最適化理論の基礎

第 1章では,最適設計問題の具体例を挙げて最適性の条件を求めるまでをみてきた.その過程で最適化理論で使われる用語や結果が使われた.本章では,最適化理論を体系的に解説しておきたい.本章の舞台は有限次元ベクトル空間である.すなわち,設計空間と状態空間は有限次元ベクトル空間で与えられると仮定する.本書では,将来,関数空間上で最適化問題を構成してその解法を考える.しかし,本章で示される概念や結果の多くはそのまま関数空間でも使うことができる.その意味で,本章の内容は本書の基盤をなすといえる.いいかえれば,本書がどれだけ信頼に値するかは本章の内容にかかっているといっても過言ではない.そのために,やや抽象的な内容になるが,定義と定理の形式でまとめておきたい.ここでは,これらの抽象的な内容を具体的なイメージにむすびつけることができるように,読者になじみのある簡単なばね系を用いた例題をはさみながら説明を進めていくことにする.

2.1 最適化問題の定義最初に,第 1章でみてきた問題を念頭において,本章で考察の対象とする最適化問題を定義しよう.問題 1.5 では,断面積を a ∈ X = Rn,変位を u ∈ U = Rn とおき,第 1章ではそれらを設計変数および状態変数とよんだ.ここで,X と U はそれらの線形空間を表していた.まず,この問題が含まれるような一般化を行って,いくつかの最適化問題を定義しよう.最初に,線形空間に対する記号法について,他の章とは異なる使い方をすることを断っておこう.第 1章では,X と U をそれぞれを設計変数と状態変数に対する線形空間を表していた.第 2章では,設計変数と状態変数をあわせて設計変数とよび,X

Page 2: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2 第 2章 最適化理論の基礎

を設計変数に対する線形空間を表すことにする.すなわち,第 1 章の変数に対してx =

(aT,uT

)T ∈ X のように定義しようということである.このような定義に変更しなければならない理由は,標準的な最適化問題では,設計変数と状態変数を区別することなく,すべての変数を設計変数として扱うためである.次に,第 1 章でみてきた問題を含む形で最適化問題を一般化することを考えよう.例えば,問題 1.5 では,ある n ∈ N に対して x =

(aT,uT

)T ∈ R2n とおき,h (x) = K (a)u− p = 0Rn を等式制約においていた.2n を d > n に一般化すれば,次のような最適化問題になる.

問題 2.1 (最適化問題) X = Rd とする.i ∈ {0, · · · ,m} に対して fi : X → R とh = (h1, · · · , hn)

T: X → Rn が与えられたとき,

minx∈X

{f0 (x) | fi (x) ≤ 0, i ∈ {1, · · · ,m} , h (x) = 0Rn}

を満たす x を求めよ.

また,問題 1.5 において x = a ∈ Ξ = X を設計変数とみなし,u ∈ U を媒介変数とみなして,fi (a,u) と K (a)u − p = 0Rn を関数 fi (a) = fi (a,u (a)) の媒介変数表示とみなせば,等式制約を除いた形式で x ∈ X に対する最適化問題をかくことができる.ここで,fi (a) を fi (x) にかきかえ,d = n とおけば,問題 1.5 は次の問題にも含まれる.

問題 2.2 (最適化問題) X = Rd とする.fi : X → R, i ∈ {0, · · · ,m}, が与えられたとき,

minx∈X

{f0 (x) | fi (x) ≤ 0, i ∈ {1, · · · ,m}}

を満たす x を求めよ.

さらに,設計変数 x ∈ X の許容集合あるいは実行可能集合を

S = {x ∈ X | fi (x) ≤ 0, i ∈ {1, · · · ,m}} (2.1)

とおけば,次の問題は問題 2.2 と同値である.

問題 2.3 (最適化問題) X = Rd とする.fi : X → R, i ∈ {0, · · · ,m}, が与えられ,S を (2.1) とする.このとき,

minx∈S

f0 (x)

を満たす x を求めよ.

Page 3: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.1 最適化問題の定義 3

X 0

g2

g0=0

f0

f2=0f1=0

X

g1

x

R

図 2.1 最適化問題における最小点 (すべての制約が無効)

X 0

@Xh1

f0

h1=0

X

x

g0

R

図 2.2 最適化問題における最小点 (等式制約が有効)

本章では,問題 2.1 から 2.3 に対して考察していきたい.考察を始める前に,これから使われる用語の定義と注意を示しておきたい. f0 を目的関数, h を等式制約関数,f1, · · · , fm を不等式制約関数とよぶことにする.ここで,2つのことを注意しておきたい.ひとつは,fi の最大化は −fi の最小化と同値である点である.そこで,f0を最小化に限定し,さらに f1, · · · , fm を非正に限定しても一般性を失わない.もうひとつは,制約条件に fi ≤ 0 と −fi ≤ 0 を同時に加えることと fi = 0 を加えること

Page 4: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

4 第 2章 最適化理論の基礎

X 0

g2

g0

g1

Xf2=0

f1=0

f0

x

R

図 2.3 最適化問題における最小点 (不等式制約が有効)

は同値である点である.したがって,問題 2.1 において,等式制約を表す方法として 2

つの方法があることになる.すなわち,fi ≤ 0 と −fi ≤ 0 を仮定する方法と hi = 0

を仮定する方法がある.本章では,状態変数による評価関数の媒介変数表示で使われる等式制約を h を使って与えることにする.それ以外の等式制約が必要になった場合には fi ≤ 0 と −fi ≤ 0 を同時に与えることにする.そのように考えれば,問題 2.2

あるいは 2.3 において不等式制約だけを仮定していたとしても,等式制約を含む一般的な最適化問題としての一般性は失われないことになる.なお,このような最適化問題における等式制約の定義の仕方は,以下に示す凸最適化問題の分類に影響を及ぼす.以上の点に注意して,本章では,目的関数と不等式制約関数を合わせて f0, · · · , fm を評価関数とよぶことにする.図 2.1 から 2.3 に X = R2 の場合の最適化問題における最小点の例を示す.g0,

g1, g2, ∂Xh1 は x ∈ X における f0, f1, f2, h1 の Frechet 微分あるいは勾配 (定義 2.2) を表す.X ′ はそれらの微分が属する空間で X の双対空間とよぶ (第 4 章で定義する).しかし,有限次元ベクトル空間では X ′ = X となることから,ここではX ′ = R2 とみてよい.第 7章でこの図を使うときは X ′ は X とは別のベクトル空間として扱われる.今後,最適化問題が定義されたときは,そこに登場する変数や関数をこれらの図に当てはめて状況を把握してほしい.

Page 5: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.2 最適化問題の分類 5

x

X

R

S

f0

f2=0

f1=0

図 2.4 線形最適化問題

2.2 最適化問題の分類次に,問題 2.1 から問題 2.3 で使われている関数の性質によって最適化問題を分類することを考えてみよう.問題 2.1 において f0, · · · , fm, h1, · · · , hn がすべて 1次関数,あるいは問題 2.2 と

2.3 において f0, · · · , fm がすべて 1 次関数のとき,これらの問題を線形最適化問題(あるいは線形計画問題) という. 図 2.4 に X = R2 のときの線形最適化問題の様子を示す.線形最適化問題に対しては,1 次関数の性質を利用した単体法や主双対内点法などの解法が知られている.非線形最適化問題も逐次線形近似により線形最適化問題に変換して解かれることもある.しかし,本書では直接利用することがないことから詳細を省く.一方,問題 2.1 において f0, · · · , fm, h1, · · · , hn のいずれかが 1次関数ではない,あるいは問題 2.2 と 2.3 において f0, · · · , fm のいずれかが 1 次関数ではないとき,これらの問題を非線形最適化問題 (あるいは非線形計画問題) という.また,f0 が 2次関数, h1, · · · , hn, f1, · · · , fm のすべてが 1次関数のとき,あるいは問題 2.2 と 2.3 において f0 が 2次関数, f1, · · · , fm のすべてが 1次関数のとき,これらの問題を 2次最適化問題 (あるいは 2次計画問題) という. 図 2.5 に X = X ′ = R2

のときの 2次最適化問題のイメージを示す.さらに,問題 2.1 において f0, · · · , fm が凸関数 (定義 2.3), h1, · · · , hn が 1次関数のとき,あるいは問題 2.2 と 2.3 において f0, · · · , fm が凸関数のとき,これらの問題を凸最適化問題 (あるいは凸計画問題) という. ここで,問題 1.2 が凸最適化問題であるのかを考えるときにやや混乱がおこる.問題 1.2 を問題 2.1 としてみたときには,h (x) = K (a)u− p = 0Rn は h (x) は x の 1次関数になっていないので,凸最

Page 6: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

6 第 2章 最適化理論の基礎

X

X 0

x

R

g2 g0

f0

f2=0

f1=0

g1

図 2.5 2次最適化問題における最小点

適化問題ではないようにみえる.しかし,u ∈ U を媒介変数とみなして,問題 2.2 としてみれば凸最適化問題になっていることがわかる.実際,f0 の Hesse 行列 H0 が正定値となることが第 1章で確認されているので,後で示す定理 2.4 により f0 は凸関数である.また,f1 は設計変数に対して 1次関数になっているので凸関数である.なお,問題 2.1 から 2.3 の形式とは異なるが,目的関数を複数設けた最適化問題を多目的最適化問題とよぶことがある.例えば,問題 2.2 の f1, · · · , fm を用いて,

minx∈X

f1 (x) , · · · , minx∈X

fm (x)

を同時に満たす x を求めるような問題である.このような問題の最小点は存在するとは限らない.最小点が存在しないとき,次善の策として Pareto 解が使われる.Pareto 解とは次のように定義されている.ある集合 P ⊂ X が存在して,すべてのy ∈ P に対して,fi (x) ≤ fi (y) がすべての i ∈ {1, · · · ,m} に対して成り立つような x ∈ X はなく,かつ,ある i ∈ {1, · · · ,m} に対して fi (x) ≤ fi (y) が成り立つような x ∈ X (理想的な最適解) はないとき,P を Pareto 解の集合という.図 2.6 に 2

つの評価関数のときのイメージを示す.その集合の中から,1つの点を選ぶためには,何らかの選考規準が必要となる.本書では,選考規準に関する複雑さを避けるために,多目的最適化問題は扱わないことにする.さらに,問題 2.3 において,許容集合 S が整数のように離散的な点の集合となるとき,そのような問題を整数最適化問題あるいは整数計画問題という.この問題は NP

困難とよばれる性質をもち,解法には特別の工夫が必要である.本書では,この問題

Page 7: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.3 最小点の存在 7

(f1(P),f2(P))

f2

f1 x1

x2

x3

P

V

(a) 評価関数の線形空間 (b) 設計変数の線形空間

図 2.6 Pareto 解の集合 P

も扱わない.

2.3 最小点の存在最適化問題が定義されたので,次に,それらの問題において最小点が存在するための条件について考えてみよう.以下は当然のように思われるが,関数最適化問題ではそれを意識しないと最小点のない問題を定義することになる.まず,極小点と最小点の違いに注意しよう.

定義 2.1 (極小点と最小点) X = Rd として,S を X の空でない部分集合とする.ある x ∈ S に対して,近傍 (凸開集合) B が存在して,任意の y ∈ B ∩ S に対して

f0 (x) ≤ f0 (y)

が成り立つとき,x を極小点という.さらに,任意の y ∈ S に対して,上の不等式が成り立つとき,x を最小点という.

図 2.7 に X = R のときの極小点と最小点を示す.近傍や開集合 (集合の凸性は定理 2.3 で示す) などの用語の解説を付録 I にまとめて示している.最小点を定義 2.1

のように定義するとき,最小点が存在するための十分条件について,次の定理が知られている.

定理 2.1 (Weierstrass の定理) 問題 2.3 において,S は X の有界閉部分集合,かつ f0 : S → R は連続とする.このとき,最小点 x ∈ S が存在する.

Page 8: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

8 第 2章 最適化理論の基礎

f 0(x)

X

S

B B

f 0(y)

x y

図 2.7 極小点 x と最小点 y

なお,付録 I に関数の連続性についてその定義を示している.定理 2.1 は,連続を下連続に拡張しても成り立つ.しかし,今後の展開で下連続を必要としないことから省略する.定理 2.1 において,S が有界閉集合でない場合に最小点が存在しない場合があることをみてみよう.例えば,問題 1.2 では,

S ={a ∈ X = R2

∣∣ a ≥ a0, f1 (a) = l (a1 + a2)−m0 ≤ 0}

を仮定した.この S は有界閉集合である.しかし,これを

S ={a ∈ X = R2

∣∣ a > 0R2 , f1 (a) = l (a1 + a2)−m0 ≤ 0}

におきかえれば,この S は有界閉集合ではなくなる.例えば p1 = 0, p2 = 0 とおいたとき,a1 = m0/2l, a2 = 0 が f0 の極小点になるが,この a は S に含まれない.そこで,S の中に最小点は存在しないことになる.また,関数が連続でない場合,あるいは値が一意に定まらない関数になっている場合も,最小値が存在する保証はないことになる.これまでみてきたような関数ではそのようなものはなかった.しかし,関数最適化問題では注意していないと値が一意に定まらない関数 (汎関数) を扱っていることになる. 第 4章では,設計変数が定義された線形空間が連続 (完備) で,その上で定義された関数が連続であるような状況を設定していくことになる.

2.4 微分法と凸関数問題 2.1に取り組む前に,最適化理論で使われる微分法の基礎と凸関数の定義についてみておこう.本書では,s ∈ {0, 1, 2, · · · } 階までの導関数が連続な関数 f : X → Rの全体からなる集合を Cs (X;R) とかくことにする. 連続関数 f の微分について,今後,次の定義を用いることにする.

Page 9: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.4 微分法と凸関数 9

定義 2.2 (勾配と Hesse 行列) f ∈ C2 (X;R) とする.x ∈ X において

∂Xf =

∂f∂x1∂f∂x2

...∂f∂xd

, ∂X∂TXf =

∂2f

∂x1∂x1

∂2f∂x1∂x2

. . . ∂2f∂x1∂xd

∂2f∂x2∂x1

∂2f∂x2∂x2

. . . ∂2f∂x2∂xd

...∂2f

∂xd∂x1

∂2f∂xd∂x2

. . . ∂2f∂xd∂xd

をそれぞれ f の微分あるいは勾配および Hesse 行列という.

なお,本書では,表記をすっきりさせるために,特にことわらずに ∂Xf = g,

∂Xf0 = g0, · · · , ∂Xfm = gm, ∂X∂TXf = H, ∂X∂T

Xf0 = H0, · · · , ∂X∂TXfm = Hm

とかくことにする.x ∈ X とおいているときは ∂Xf を fx ともかくことにする.偏微分方程式などでは ∂Xf を ∇f ともかく. 今後,いろいろな微分が定義されるため,多様な表現方法が必要となる.それぞれの場面で定義を示すので混乱のないようにしてほしい.

2.4.1 Taylor の定理次の定理は,今後,いろいろな場面で利用される.

定理 2.2 (Taylor の定理) X = Rd,f ∈ C2 (X;R) とする.このとき,任意の x,

z = x+ y ∈ X に対して

f (z) = f (x) + g (x) · y +1

2!x ·H ((1− θ)y + θz)y (2.2)

を満たす θ ∈ (0, 1) が存在する.

Taylor の定理は任意の階数に対して示される.しかし,ここでは高階微分の表記法に関する準備 (4.2節で示す)ができていないことと,当面はそれで間に合うことから 2

階微分までにとどめた.また, 12!x ·H ((1− θ)y + θz)y のような θ を含む項は剰余

項とよばれる.本書では,Bachmann-Landau の small-o 記号 (limϵ→0 o (ϵ) /ϵ = 0)

を用いて,(2.2) を

f (z) = f (x) + g (x) · y +1

2!y ·H (x)y + o

(∥y∥2

)(2.3)

ともかくことにする.この式を x まわりの f の Taylor 展開という.(定理 2.2 の証明) まず,X = R のときを考える.任意の x, z ∈ R に対して

f (z) = f (x) + (z − x)

∫ 1

0

1f ′ (x+ t (z − x)) dt

Page 10: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

10 第 2章 最適化理論の基礎

= f (x) + zf ′(z)− xf ′(x)− (z − x)2∫ 1

0

tf ′′ (x+ t (z − x)) dt

= f (x) + zf ′(x) + z (z − x)

∫ 1

0

f ′′ (x+ t (z − x)) dt− xf ′(x)

− (z − x)2∫ 1

0

tf ′′ (x+ t (z − x)) dt

= f (x) + (z − x) f ′(x) + (z − x)

∫ 1

0

(z − t (z − x)) f ′′ (x+ t (z − x)) dt

= f (x) + (z − x) f ′(x) +1

2(z − x)2 f ′′ ((1− θ)x+ θz) .

が成り立つ.ただし,df/dx を f ′ とかいた.また,最後の等式は平均値の定理を用いた.次に,X = R2 とする.任意の x, z ∈ R に対して,t ∈ R の関数を

ϕ (t) = f (x1 + ty1, x2 + ty2) = f (x1, x2) + t

(y1

∂x1+ y2

∂x2

)f (x1, x2)

+t2

2

(y1

∂x1+ y2

∂x2

)2

f ((1− θ)x1 + θz1, (1− θ)x2 + θz2)

とおく.X = R のときの Taylor 展開は上で示されているので,ϕ (1) の t = 0 周りの Taylor

展開を求めると

ϕ (1) = f (x1 + y1, x2 + y2) = f (x1, x2) +

(y1

∂x1+ y2

∂x2

)f (x1, x2)

+1

2

(y1

∂x1+ y2

∂x2

)2

f ((1− θ)x1 + θz1, (1− θ)x2 + θz2)

= f (x) +{(

∂∂x1

∂∂x2

)f (x)

}(y1y2

)+

1

2

(y1 y2

){( ∂∂x1∂

∂x2

)(∂

∂x1

∂∂x2

)f ((1− θ)x+ θz)

}(y1y2

)となる.X = Rd のときは (2.2) となる. □

2.4.2 凸関数次に凸関数の定義と基本的な結果について示そう.後で示されるように,凸最適化問題 では極小点は同時に最小点になる (定理 2.8).そのために,関数の凸性は最適化理論では役に立つ性質である.まず,凸関数の定義を示そう.

定義 2.3 (凸関数) X = Rd とする.S を X の空ではない部分集合とする.関数f : S → R が任意の x,y ∈ S, θ ∈ (0, 1) に対して

(1− θ)x+ θy ∈ S (2.4)

Page 11: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.4 微分法と凸関数 11

S

x yX

S

x y

(a) X = R (b) X = R2

図 2.8 線形空間の部分集合 S が凸集合の例

SS

x yX S

x yS

x

y

(a) X = R (b) X = R2 (c) X = R2

図 2.9 線形空間の部分集合 S が凸集合ではない例

f ((1− θ)x+ θy) ≤ (1− θ) f (x) + θf (y) (2.5)

を満たすとき,f を凸関数という.また,(2.5) の不等号が ≥ のとき,凹関数という.

(2.4) を集合の凸性,(2.5) を関数の凸性という.S が凸集合の例を図 2.8 に,そうではない例を図 2.9 に示す.図 2.9 (c) のような S が整数値ベクトルの集合の場合は整数計画問題となる.整数計画問題の難しさはこのような集合の性質にある.f が凸関数の例を図 2.10 に示す.微分が不連続でも凸性は成り立つことがわかる.凸関数が 1階微分連続ならば微分が定義できて,次の結果を得る.

定理 2.3 (凸関数と 1階微分) X = Rd,S ⊆ X を開凸集合,f ∈ C1 (S;R) とする.f が凸関数であるための必要十分条件は,任意の x,y ∈ S に対して

g (x) · (y − x) ≤ f (y)− f (x) (2.6)

Page 12: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

12 第 2章 最適化理論の基礎

f(x)

Sx y

f(y)

X

f(x)

Sx y

f(y)

X

f(x)

Sx y

f(y)

X

(a) f ∈ C2 (X;R) (b) f : 1次関数 (c) f ∈ C0 (X;R)

図 2.10 f が凸関数の例

が成り立つことである.

(証明) まず,必要性 (f が凸関数ならば (2.6) が成り立つこと) を示す.f は凸関数なので,任意の x ∈ S, 任意の θ ∈ (0, 1) に対して

f ((1− θ)x+ θy) = f (x+ θ (y − x)) ≤ f (x) + θ (f (y)− f (x))

が成り立つ.そこで,

f (x+ θ (y − x))− f (x)

θ≤ f (y)− f (x) (2.7)

を得る.θ → 0 のとき, (2.6) を得る.次に,十分性 ((2.6) が成り立つならば f が凸関数であること) を示す.x = (1− θ)z+ θw,

y = z とおけば,(2.6) は

f (z)− f (x) ≥ g (x) · (z − x) (2.8)

となる.一方.x = (1− θ)z + θw, y = w とおけば,(2.6) は

f (w)− f (x) ≥ g (x) · (w − x) (2.9)

となる.(2.8) を (1− θ) 倍,(2.9) を θ 倍して両辺の和をとると,

(1− θ) f (z) + θf (w)− f (x) ≥ g (x) · ((1− θ)z + θw − x) = 0

を得る.すなわち,S は凸集合で,f の凸性

(1− θ) f (z) + θf (w) ≥ f ((1− θ)z + θw)

が成り立つことから f は凸関数である. □

図 2.11 は定理 2.3 が成り立つ様子を示している.さらに,凸関数が 2階微分連続ならば Hesse 行列が定義できて,それを使った条件を得る.それを示すために,正定値実対称行列の定義を示しておこう.

Page 13: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.4 微分法と凸関数 13

X

Sx y

f(y){f(x)g(x)¢(y{x)

図 2.11 凸関数と 1階微分

定義 2.4 (正定値実対称行列) A = AT ∈ Rd×d とする.任意の x ∈ Rd に対して

x ·Ax ≥ α ∥x∥2

を満たす α > 0 が存在するとき,A を正定値であるという.α ≥ 0 が存在するとき,A を半正定値であるという.また,

x ·Ax ≤ −α ∥x∥2

を満たす α > 0 が存在するとき,A を負定値であるという.α ≥ 0 が存在するとき,A を半負定値であるという.

定義 2.4 の中の α あるいは −α は A の絶対値最小の固有値と一致する (演習問題(1)).さらに,凸関数が 2 階微分連続ならば Hesse 行列が定義できて,次の結果を得る

(図 2.12).

定理 2.4 (凸関数と 2階微分) X = Rd,S ⊆ X を開凸集合,f ∈ C2 (S;R) とする.f が凸関数であるための必要十分条件は,任意の x ∈ S に対して Hesse 行列 H (x)

が半正定値であることである.

(証明) まず,必要性を示す.f は凸関数なので,任意の x,y ∈ S, 任意の θ ∈ (0, 1) に対して,(2.7) が成り立つ.(2.7) の右辺は,f ∈ C2 (S;R) なので,任意の x,y ∈ S に対して,ある ϑ ∈ (0, 1) が存在して

f (y)− f (x) = g (x) · (y − x) +1

2(y − x) ·H ((1− ϑ)x+ ϑy) (y − x) (2.10)

とかける.(2.7) の左辺は θ = ϑ のとき,

f (x+ ϑ (y − x))− f (x)

ϑ

Page 14: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

14 第 2章 最適化理論の基礎

¡

X

S

x x+y

y ¢H(x)y+o(kyk)12

図 2.12 凸関数と 2階微分

= g (x) · (y − x) +1

2ϑ (y − x) ·H ((1− ϑ)x+ ϑy) (y − x) (2.11)

が成り立つ.したがって,θ = ϑ のときの (2.7) に (2.10) と (2.11) を代入すれば

(1− ϑ) (y − x) ·H ((1− ϑ)x+ ϑy) (y − x) ≥ 0

を得る.ϑ → 0 のとき,H (x) は半正定値となる.次に十分性を示す.任意の x,y ∈ S に対してある ϑ ∈ (0, 1) が存在して,(2.10) を満たす.H ((1− ϑ)x+ ϑy) は半正定値であることより,(2.10) の右辺第 2項は非零である.このとき,

f (y)− f (x) ≥ g (x) · (y − x)

が成り立つ.したがって,定理 2.3 より f は凸関数である. □

2.4.3 例題微分法と凸関数に関する定理を簡単な力学の問題に対して使ってみよう.まず,例題 1.1 で考えた 1自由度ばね系のポテンシャルエネルギーが正定値であることを確認しておこう.

例題 2.1 (1自由度ばね系のポテンシャルエネルギー) 図 1.2 のような 1 自由度ばね系のポテンシャルエネルギーは

f (u) =

∫ u

0

(kv − p) dv =1

2ku2 − pu

であった.f は凸関数であることを示せ.

(解答) f に対して

d2f

du2= k > 0

Page 15: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.4 微分法と凸関数 15

となる.定理 2.4 より,f は凸関数である. □

さらに,2自由度ばね系のポテンシャルエネルギーも凸関数になることを確認しておこう.

例題 2.2 (2自由度ばね系のポテンシャルエネルギー) 図 1.3 のような 2自由度ばね系のポテンシャルエネルギーは

f (u) =1

2k1u

21 +

1

2k2 (u2 − u1)

2 − (p1u1 + p2u2)

であった.f は凸関数であることを示せ.

(解答) f の Hesse 行列は

H =

(k1 + k2 −k2−k2 k2

)となる.H の固有値 λ は

det

∣∣∣∣k1 + k2 − λ −k2−k2 k2 − λ

∣∣∣∣ = 0

を満たすことから,

λ1, λ2 =(k1 + 2k2)

2 ±√

(k1 + 2k2)2 − 4k1k2

2

となる.k1, k2 > 0 のとき λ1, λ2 > 0 となる.すべての固有値が正なので,H は正定値行列である (付録 II).定理 2.4 より,f は凸関数である. □

この節の最後に,身近な関数であるが凸関数にならない例をみておこう.

例題 2.3 (矩形の面積) x1, x2 ∈ R を矩形の縦と横の長さとする.このとき,面積はf (x) = x1x2 の凸関数ではないことを示せ.

(解答) x = (1, 0)T, y = (0, 1)T を (2.5) に代入すれば,

f ((1− θ)x+ θy) = {(1− θ)x1 + θy1} {(1− θ)x2 + θy2} = (1− θ) θ

≥ (1− θ) f (x) + θf (y) = 0

となる.したがって,f は凸関数ではない. □

Page 16: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

16 第 2章 最適化理論の基礎

x1

x2

f(x)=x1x2

0

1

0

1

1

図 2.13 関数 f (x) = x1x2

2.5 制約なし問題これより問題 2.1 から 2.3 においていろいろな場合を想定して最適化理論をよばれている内容についてみていこう.まずは,制約がない場合を考える.あるいは,すべての制約が無効である場合と考えてもよい.すなわち,問題 2.3 において S ⊆ X = Rd

が開集合であって,最小点が存在する場合は S の内点にあるとみなすことができる.そこで,2.5 では,制約関数が現れないことから,f0 を f とかくことにして,次の問題を考えることにしよう.

問題 2.4 (制約なし最適化問題) X = Rd の開部分集合 S と f : X → R が与えられたとき,

minx∈S

f (x)

を満たす x を求めよ.

2.5.1 極小点の必要条件ある x ∈ S が極小点のときに成り立つ条件を極小点の必要条件という.f が 1階微分連続ならば微分が定義できて,極小点の必要条件について次の結果を得る.

定理 2.5 (極小点 1次の必要条件) 問題 2.4 において,f ∈ C1 (S;R) とする.このとき,x ∈ S が極小点ならば,

g (x) = 0Rd (2.12)

Page 17: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.5 制約なし問題 17

が成り立つ.あるいは,任意の y ∈ X に対して

g (x) · y = 0 (2.13)

が成り立つ.

(証明) g (x) = 0Rd とおいて矛盾を導こう.y = −g (x)とおくと,g (x)·y = −∥g (x)∥2 <

0 となる.g は連続であるので,ある t1 が存在して,t ∈ [0, t1] に対して

g (x+ ty) · y < 0

が成り立つ.また,平均値の定理より,任意の t ∈ (0, t1] = {t ∈ R | 0 < t ≤ t1} に対して

f (x+ ty) = f (x) + tg (x+ θty) · y

となる θ ∈ (0, 1) が存在する.ここで,θt ∈ (0, t1) より,g (x+ θty) · y < 0 である.この関係を上式に代入すれば,f (x+ ty) < f (x) の矛盾を得る. □

ここで,(2.12) を微分形式,(2.13) を変分形式とよぶことにしよう. 本来,変分の用語は,第 4 章で解説するように,関数を変数にした関数 (汎関数) に対して使われる.ここでは関数 f ∈ C1 (S;R) に対してもそれを適用することにする.すなわち,xの任意の変動 y に対して

f (x+ y) = f (x) + g (x) · y + o (∥y∥)

と Taylor 展開したときの右辺第 2項を f の x における第 1変分とよんで,それが零となる条件を変分形式とよぼうというわけである.(2.12) の等号は d 次元ベクトルに対するもので,いってみれば d 個の等号を表しているのに対して,(2.12) の等号は実数同士を関連付ける 1個の等号を表している.両者が同値であるのは,(2.12) は任意の y ∈ X に対して成り立つことを要請しているためである.このような任意のベクトルを用いた表現は,今後,頻繁に現れる.ここでそれらの同値性について了解しておいてほしい.f が 2階微分連続ならば,Hesse 行列が定義できて次の結果を得る.

定理 2.6 (極小点 2次の必要条件) 問題 2.4 において,f ∈ C2 (S;R) とする.このとき,x ∈ S が極小点ならば,Hesse 行列 H (x) は非負定値である.

(証明) x が極小点ならば,定義 2.1 より x の近傍 B ⊂ S をとり,任意の y ∈ B に対して

f (y)− f (x) ≥ 0

Page 18: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

18 第 2章 最適化理論の基礎

とできる.一方,x は極小点なので,Taylor の定理より

f (y)− f (x) =1

2(y − x) ·H (x) (y − x) + o

(∥y − x∥2

).

が成り立つ.z ∈ X を任意として,両辺に 2z/ ∥y − x∥2 をかけて,y → x とすれば,

z ·H (x)z ≥ 0

が成り立つ. □

2.5.2 極小点の十分条件次に,ある x ∈ S が極小点であるならば成り立つ条件をみてみよう.それを示すために,停留点を次のように定義する.

定義 2.5 (停留点) S ⊆ X を開集合とする.x ∈ S において

g (x) = 0Rd

のとき,x を停留点という.

f が 2階微分連続ならば Hesse 行列が定義できて,極小点の十分条件について次の結果を得る.

定理 2.7 (極小点 2次の十分条件) 問題 2.4 において,f ∈ C2 (S;R) とする.このとき,x ∈ S が停留点で,かつ Hesse 行列 H (x) が正定値ならば,x は極小点である.

(証明) x が停留点ならば,x の近傍 B ∈ S をとり,任意の x+y ∈ B に対して,θ ∈ (0, 1)

が存在して

f (x+ y)− f (x) =1

2y ·H (x+ θy)y

を得る.H (x+ θy) は正定値である.したがって,

f (x+ y) > f (x)

が成り立つ. □

Page 19: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.5 制約なし問題 19

2.5.3 最小点の十分条件前項までは極小点についての条件であった.ここでは,最小点であるならば成り立つ条件についてみてみよう.問題 2.4 が凸最適化問題ならば,次の結果を得る.

定理 2.8 (最小点の十分条件) 問題 2.4 において,S ⊆ X を空でない開凸集合,f : S → R を凸関数とする.このとき,x ∈ S が極小点ならば,x は S 上の最小点である.

(証明) x が極小点ならば,x の近傍 B ⊂ S をとり,x は B において最小となる.もしも,別の解 y ∈ S があったと仮定すると,θ ∈ (0, 1) に対して

(1− θ) f (x) + θf (y) ≥ f ((1− θ)x+ θy) = f (z)

が成り立つ.ここで, θ を十分小さくとれば z ∈ B とできる.これは x が極小点であることに反する. □

2.5.4 解法定理 2.5 から定理 2.8 を用いれば,問題 2.4 の解法に関して次のことがいえる.

(1) 問題 2.4 の停留点 (g (x) = 0Rd を満たす x) を解析的に求めることができれば,x は極小点の候補となる.

(2) 一般的な最適化問題では,解析的に停留点を求めることは困難である.その場合は,停留点ではないある試行点 x を選び,g (x) ( = 0Rd) を求め,第 3章で示す勾配法を使って x を更新していく方法がとられる.

(3) 停留点 x が求まった上で,もしも Hesse 行列 H (x) が正定値であることが確認されれば,定理 2.7 より,x は極小点と判定される.

(4) さらに,f が凸関数であることが確認されれば,極小点と判定された停留点 x

は,定理 2.8 より,最小点と判定される.(5) また,後で示す定理 2.14 の系 2.1 を用いれば,極小点と判定されなくても,f

が凸関数であれば停留点は最小点と判定されることになる.

第 1章で取り上げた 1次元線形弾性体や 1次元定常 Stokes 流れ場の形状最適化問題では,ひずみエネルギー密度一定や管壁の散逸エネルギー密度一定の条件で断面積や半径を解析的に求めることができた.例題 1.3 と第 1章の演習問題 (3) では具体的な数値を求めてみた.このことは (1) に相当する.しかし,一般的には (2) となる.

Page 20: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

20 第 2章 最適化理論の基礎

2.5.5 例題前節と同様,ここでもばね系を用いて制約なし問題に対するこれまでの結果を確認してみよう.まず,1自由度ばね系について次のことを確認しよう.

例題 2.4 (1自由度ばね系の力の釣合方程式) 図 1.2 の 1 自由度ばね系における力の釣合方程式を満たす u はポテンシャルエネルギー最小の条件を満たすことを示せ.

(解答) f は凸関数である (例題 2.1).そこで,力の釣合方程式を満たす u は定理 2.7 より極小点となる.さらに,定理 2.8 より最小点となる. □

多自由度ばね系についても同様のことは次のような論理になる.

例題 2.5 (2自由度ばね系の力の釣合方程式) 図 1.3 の 2 自由度ばね系における力の釣合方程式を満たす u はポテンシャルエネルギー最小の条件を満たすことを示せ.

(解答) f は凸関数である (例題 2.2).そこで,力の釣合方程式を満たす u は定理 2.7 より極小点となる.さらに,定理 2.8 より最小点となる. □

2.6 等式制約問題次に,問題 2.1 において等式制約 h (x) = 0Rn が有効で,かつすべての不等式制約は無効である場合を考えよう.第 1章の 1次元線形弾性体の形状最適化問題では,断面積 a を設計変数,変位 u を状態変数とおいた.これらを問題 2.1 にあてはめれば,x は設計変数と状態変数をあわせた変数であったので x =

(aT,uT

)T とおいたことになる.目的関数 f0 (u) = p · u は f0 (x) とかくことができて,そのとき状態方程式は等式制約 h (x) = K (a)u− p = 0Rn とおいたことに相当する.このように,等式制約は変数 x の内,制約の個数分の変数を決定してしまうことになる.そこでこの節以降では,等式制約で決定されてしまう制約の個数分の変数をu ∈ U = Rn とおいて,残りの変数を ξ ∈ Ξ = Rd−n とおくことにする.最適設計問題では ξ が設計変数にあたる.また,2.6 では,不等式制約関数が現れないことから,f0 を f とかくことにして,X = Ξ×U であることを想いながら,次の問題を考える.

Page 21: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 21

問題 2.5 (等式制約付き最適化問題) f : X → R, h = (h1, · · · , hn)T: X → Rn が

与えられたとき,

minx∈X

{f (x) | h (x) = 0Rn}

を満たす x を求めよ.

2.6.1 極小点の必要条件問題 2.5 の極小点ならば成り立つ関係について考えてみよう.図 2.14 に X = R2,

n = 1 の場合の極小点のようすを示す.この図をみながら,極小点ならば成り立つ関係について考えてから,一般の場合をみていくことにしよう.図 2.14 の x を極小点とする. すなわち,BX を x の近傍とすれば,x から等式制約 h1 (x+ y) = 0 を満たしながら x+ y ∈ BX に移動したとき,f (x) ≤ f (x+ y)

が成り立つことになる.ここで,f と h1 が C1 (BX ;R) の要素であると仮定する.このとき,g と ∂Xh1 が定義できて,次の関係が成り立つ.

(1) y と ∂Xh1 は直交する.(2) y と g は直交する.

(1) は,制約を満たす y の方向に移動しても制約が満たされる関係を表している.実際,

h1 (x+ y) = h1 (x) + ∂Xh1 · y + o (∥y∥)

とかけるので,xの近傍 x+y ∈ BX で h1 (x+ y) = h1 (x)であることは ∂Xh1·y = 0

と同値である.一方,(2) は,制約を満たす方向に移動しても目的関数が変動しないことを表している.この関係は定理 2.5 において目的関数の変動方向を y に限定したのみで,(2.13) と同じ関係を表している.これらの関係を使って等式制約問題の極小点に対する必要条件が得られそうである.以下で,これらの関係を一般化しよう.まず,(1) の関係を一般化しよう.許容集合を

V = {x ∈ X | h (x) = 0Rn} (2.14)

とおく.図 2.14 では h1 = 0 を満たす曲線上の点の集合となる.ここで,ある x ∈ V

の近傍を BX ⊂ X とかいて,h ∈ C1 (BX ;Rn) のとき,

TV (x) = {y ∈ X | hxT (x)y = 0Rn } (2.15)

Page 22: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

22 第 2章 最適化理論の基礎

X 0

f

h1=0X

R

@Xh1(x)

TV(x)

g(x)

V

TV(x)0

x y

BX

図 2.14 等式制約問題の極小点 (X = R2, n = 1)

を x における許容方向集合あるいは接面という.ただし,hxT = (∂hi/∂xj) =

(∂Xh1, · · · , ∂Xhn)T は h の x の変動に対する Jacobi 行列に相当し,正則であると

仮定する. 図 2.14 では曲線 h1 = 0 の x における接線を TV (x) とおいたことになる.X = R3 のときは n = 1 と n = 2 の場合が考えられるが,それらの場合のTV (x) を図 2.15 に示す.n = 1 の場合は,V は曲面になり, TV (x) は,文字通り,x における接面になる.n = 2 の場合は,V は曲線になり,TV (x) は x における接線になる.n = 2 のときに,hxT (x) = (∂Xh1 (x) , ∂Xh2 (x))

T が正則であることは,∂Xh1 (x) と ∂Xh2 (x) が異なる方向を向いていることを意味する.すなわち,2つの制約関数が定数倍で変換できるような関係 (1次従属) ではなく,本質的に異なる関係(1次独立) になっていることを要請している.(2.15) による TV (x) の定義は,零空間と像空間あるいは核空間と値空間の定義 (付録 III) に従えば,

TV (x) = KerhxT (x)

とかける.それに対して,(2) の条件を一般化すると次のようになる.(2) の条件は,g は

TV (x) に含まれるすべてのベクトルと直交することを表していた.そこで,

T ′V (x) = (TV (x))

′= {z ∈ X | z · y = 0 for all y ∈ TV (x)} (2.16)

を定義し,TV (x) の双対集合あるいは双対面とよぶことにする.このとき,f , h が 1

階微分連続で,T ′V が評価可能ならば,次の結果を得る.

Page 23: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 23

g(x)

@Xh1(x)TV(x)

V

TV(x)0

x1

x2

x3

x

y

x1

x2

x3

TV(x)

V

@Xh2(x)

0

g(x)

@Xh1(x)

TV(x)

x

y

(a) n = 1 (b) n = 2

図 2.15 等式制約問題の極小点 (X = R3)

定理 2.9 (極小点 1次の必要条件) 問題 2.5 において,f ∈ C1 (X;R), h ∈C1 (X;Rn) で,x ∈ V において ∂Xh1 (x), · · · , ∂Xhn (x) が 1次独立のとき,x が極小点ならば,任意の y ∈ TV (x) に対して,

g (x) · y = 0

が成り立つ.また,

g (x) ∈ T ′V (x)

が成り立つ.

(証明) 任意の y ∈ TV (x) に対して,g (x) ·y = 0 とすると,定理 2.5 と同様の矛盾を得る.後半は,前半と同値である. □

2.6.2 Lagrange 乗数法定理 2.9 は,極小点の必要条件を任意の y ∈ TV (x) あるいは T ′

V (x) を用いて与えていた.その意味は分かり易くても,その評価は容易ではない.そこで,任意のy ∈ TV (x) や T ′

V (x) を用いない表現方法について考えてみよう.最初に,図 2.14 において基本的な関係を確認してから一般化していくことにしよう.ここでも,f と h1 が C1 (BX ;R) の要素であると仮定する.ここで,g と

Page 24: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

24 第 2章 最適化理論の基礎

y ∈ TV (x) は直交し,y ∈ TV (x) と ∂Xh1 が直交することに注目する.この関係は,g と ∂Xh1 が同じ方向を向いていることと同値である.さらに,その関係は,

g + λ1∂Xh1 = 0R2 (2.17)

が成り立つようなある λ1 ∈ R が存在することと同値である. なぜならば,もしも,g と ∂Xh1 が同じ方向ではない非零のベクトルならば (2.17) が成り立つような λ1 は存在しないためである (方向が異なる 2 つのベクトルを固定して λ1 が存在しないことを確認してみよ).(2.17) を一般化しよう.V を (2.14) の許容集合とする.ここで,次の条件が満たされていると仮定する.

仮定 2.1 (陰関数定理の仮定) X = Ξ × Rn とする.h : X → Rn は,ある x =(ξT0 ,u

T0

)T

の近傍 BX = BΞ ×BRn において,

(1) h (x) = 0Rn (すなわち x ∈ V ),

(2) h ∈ C0 (BX ;Rn),

(3) 任意の y =(ξT,uT

)T

∈ BΞ ×BRn に対して h (ξ, · ) ∈ C1 (BRn ;Rn),

(4) x における Jacobi 行列 huT (x) は正則

が満たされている.

このとき,陰関数定理 (定理 A.8)より,ある近傍 (凸開集合) UΞ×URn ⊂ BΞ×BRn

と連続な関数 υ : UΞ → URn が存在して,h (x) = 0Rn は

u = υ (ξ) (2.18)

と同値となる.X = R2, n = 1 のとき,等式制約を満たす集合と ξ–u 局所座標系を図 2.16 に示す.そこで,

y (ξ) =(ξT,υ (ξ)

T)T

とおけば,y (ξ) ∈ V となる.ξ を V の局所座標という.さらに,f (ξ) = f (y (ξ)) とかく.f ∈ C1 (BX ;Rn) ならば,ξ ∈ BΞ, x = y (ξ) ∈

BX が極小点のとき,

∂f

∂ξ(ξ) =

(∂y

∂ξT(ξ)

)T∂f

∂x(x) =

(yξT (x)

)Tg (x) = 0Ξ′ (2.19)

Page 25: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 25

X

u=À(»)

u

»x

BX

V

f(y(»))

¥

»

(a) ξ–u 座標系 (b) ξ 座標系

図 2.16 等式制約を満たす集合と ξ–u 局所座標系

が成り立つ.この関係は,零空間と像空間の定義に従えば,

g (x) ∈ T ′V (x) = Ker

(yξT (x)

)T(2.20)

とかける.一方,h (x) = h (y (ξ)) = 0 の両辺を ξ で微分すると,

∂h

∂xT(x)

∂y

∂ξT(ξ) = hxT (x)yξT (x) =

(yξT (x)

)T∂XhT (x) = 0Rn×d

(2.21)

が成り立つ.この関係は,零空間と像空間の定義に従えば,xξT (x) の像空間がhxT (x) の零空間になっていることから,

TV (x) = KerhxT (x) = ImyξT (x) (2.22)

とかける.これらの関係を用いれば,TV (x) あるいは T ′

V (x) を用いない次のような極小点の必要条件が得られる.

定理 2.10 (Lagrange 関数を用いた極小点 1次の必要条件) 問題 2.5 において,f ∈C1 (X;R), h ∈ C1 (X;Rn) とする.x ∈ X において ∂Xh1 (x), · · · , ∂Xhn (x) が 1

次独立とする.このとき,x が極小点ならば,

g (x) + ∂XhT (x)λ = 0Rd , (2.23)

h (x) = 0Rn (2.24)

を満たす λ ∈ Rn が存在する.

Page 26: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

26 第 2章 最適化理論の基礎

(証明) 定理の仮定より,x において仮定 2.1 が成り立つ.x が問題 2.5 の極小点ならば,(2.20) と (2.22) および零空間と像空間の直交補空間に関する補題 A.1 より

g (x) ∈ T ′V (x) = Ker

(yξT (x)

)T=(ImyξT (x)

)⊥= (KerhxT (x))⊥ = Im (hxT (x))T

= Im (∂Xh1, · · · , ∂Xhn)

が成り立つ.この関係は,(2.23) と同値である.また,(2.24) は x が問題 2.5 の解ならば成り立つ. □

ここで,λ = (λ1, · · · , λn)T ∈ Rn を Lagrange 乗数とよび,

L (x,λ) = f (x) + λ · h (x) (2.25)

を問題 2.5 に対する Lagrange 関数とよぶ.(2.25) の L (x,λ) を用いれば,(2.23), (2.24) は L (x,λ) の停留点の条件と一致する.そこで,次の問題の解を問題 2.5 の解の候補とする方法を考えることができる.その方法を等式制約問題に対する Lagrange 乗数法という.

問題 2.6 (等式制約問題に対する Lagrange 乗数法) L (x,λ) を (2.25) とする.L (x,λ) の停留条件

∂XL (x,λ) = g (x) + ∂XhT (x)λ = 0Rd , (2.26)

∂L

∂λ(x,λ) = h (x) = 0Rn (2.27)

を満たす (x,λ) を求めよ.

Lagrange 乗数法は,今後,様々な場面で使われる.法というよばれ方をすることから,問題 2.5 の解法を意味しているように思われるが,極小点の必要条件に対する一つの表現方法という意味で理解してほしい.ここでは,Lagrange 乗数の物理的意味についてみておこう.(2.26) は,任意の y ∈ X に対して

λi = −

(g (x) +

∑j∈{1,··· ,n}, j =i λj∂Xhj (x)

)· y

∂Xhi (x) · y(2.28)

とかくことができる.f , h1, · · · , hn が力学量のとき λi は f/hi の単位をもつ力学量となる.実際,問題 1.2 では,等式制約 K (a)u = p は力 [N] の単位をもち,f0 = p · u は仕事 [Nm] の単位をもち,状態方程式に対する Lagrange 乗数 (随伴変数) として導入された v0 は変位 [m = Nm/N] の単位をもっていた.物理的意味につ

Page 27: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 27

いては,不等式制約問題に対する Lagrange 乗数法についても同様である.問題 1.2

では,f1 は体積 [m3] の単位をもち,f0 は仕事 [Nm] の単位をもっていた.そこで,Lagrange 乗数 λ1 はエネルギー密度 [N/m2 = Nm/m3] の単位をもっていたわけである.定理 2.10 では評価関数が 1 階微分連続を仮定していた.さらに 2 階微分連続ならば次の結果を得る.以後,Lagrange 関数の x の変動に対する Hesse 行列 を∂X∂T

XL (x,λ) = HL (x,λ) ∈ Rd×d とかくことにしよう.

定理 2.11 (Lagrange 関数を用いた極小点 2次の必要条件) 問題 2.5 において,f ∈C2 (X;R), h ∈ C2 (X;U) とする.x ∈ V において ∂Xhi (x), i ∈ {1, · · · , n}, が 1

次独立とする.このとき,x が極小点ならば,任意の y ∈ TV (x) に対して,

y ·HL (x,λ)y ≥ 0

が成り立つ.

(証明) (2.19) と同様の計算により

∂2f

∂ξ∂ξT(ξ) =

(∂y

∂ξT(ξ)

)T∂2f

∂x∂xT(x)

∂y

∂ξT(ξ)

=(yξT (x)

)T∂X∂T

Xf (x)yξT (x) ∈ R(d−n)×(d−n)

が成り立つ.x が極小点ならば,∂2f/∂ξ∂ξT (ξ) は正定値行列である.また, (2.21) から(∂y

∂ξT(ξ)

)T∂hi

∂x∂xT(y)

∂y

∂ξT(ξ)

=(yξT (x)

)T∂X∂T

Xhi (x)yξT (x) = 0R(d−n)×(d−n)

が成り立つ.L (x,λ) = f (x) + λ · h (x) より,定理の式が成り立つ. □

2.6.3 極小点の十分条件さらに,極小点であるための十分条件について,次の結果を得る.

定理 2.12 (Lagrange 関数を用いた極小点 2次の十分条件) 問題 2.6 において,f ∈C2 (X;R), h ∈ C2 (X;U) とする.x ∈ X において ∂Xhi (x), i ∈ {1, · · · , n}, が 1

次独立とする.このとき,x が問題 2.6 の解で,任意の y ∈ TV (x) に対して

y ·HL (x,λ)y > 0

を満たす (x,λ) が存在するならば,x は問題 2.5 の極小点である.

Page 28: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

28 第 2章 最適化理論の基礎

(証明) f に対して定理 2.7 の証明を用いる. □

2.6.4 直接微分法と随伴変数法これまで,等式制約問題 (問題 2.5) について極小点の必要条件と十分条件についてみてきた.ここでは,問題 2.5 を第 1章でみてきたような最適設計問題の形式におきかえて,設計変数の変動に対する評価関数の Frechet 微分を計算する方法についてみてみたい.第 1章ではそれらの方法を直接微分法と随伴変数法とよんで手順だけをみた.ここでは,それらの定義を示し,随伴変数法は Lagrange 関数の停留条件を用いて評価関数の Frechet 微分を求める方法と同値であることをみておこう.ここでは,(2.18) を次の問題におきかえよう.第 1章では,次のような問題を主問題とよんだ.ただし,Ξ = Ξ′ = Rd−n, U = U ′ = Rn とかく.

問題 2.7 (線形システム問題) ある ξ ∈ Ξ が与えられたとき,K (ξ) : Ξ → Rn×n とb : Ξ → U ′ が与えられると仮定する.このとき,

K (ξ)u = b (ξ) (2.29)

を満たす u ∈ U を求めよ.

このような主問題を用いて,次の問題を考えよう.

問題 2.8 (等式制約付き最適化問題) f ∈ C1 (Ξ× U ;R), K ∈ C1 (Ξ;Rn×n) と b ∈C1 (Ξ;U ′) が与えられたとき,

min(ξ,u)∈Ξ×U

{f (ξ,u) | 問題 2.7 }

を満たす (ξ,u) を求めよ.

解説を始める前に,第 1章において断面積微分や半径微分とよんだ設計変数の変動に対する評価関数の Frechet 微分は,2.6 においてこれまで使われた g (x) とは定義が異なることを注意しておこう.例えば,(2.19) では,f (ξ) = f (ξ,υ (ξ)) とかいたが,g (x) は ∂Xf ∈ X ′ の意味で使われた.一方,第 1章では g0 は ∂Ξf ∈ Ξ′ の意味で使われた.ここでは混乱をさけるために,g = ∂Ξf とかくことにする.すなわち,(2.19) の左辺が g の定義となる.まず,直接微分法の定義を示そう.f , K, b が 1階微分連続ならば,

g =∂f

∂ξ(ξ) =

∂f

∂ξ(ξ) +

(∂u

∂ξT(ξ)

)T∂f

∂u(ξ) (2.30)

Page 29: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 29

が成り立つ.一方,(2.29) を ξT で微分すれば,

∂K

∂ξTu+K

∂u

∂ξT=

∂b

∂ξT

となる.そこで,

∂u

∂ξT= K−1

(∂b

∂ξT− ∂K

∂ξTu

)(2.31)

の右辺を計算し,その結果を (2.30) に代入して g を求める方法を直接微分法とよぶ.ここで,∂f/∂ξ, ∂f/∂u, ∂K/∂ξT, ∂b/∂ξT は解析的に計算可能とみなしている.それに対して,随伴変数法は次のように定義される.まず,f に対する随伴問題を次のように定義する.

問題 2.9 (f に対する随伴問題) ある ξ ∈ Ξ が与えられたとき,問題 2.8 の K と f

に対して

KTv =∂f

∂u(2.32)

を満たす関数 v ∈ U を求めよ.

問題 2.9 の解 v を随伴変数とよぶ.このとき,(2.31) と (2.32) より(∂u

∂ξT

)T∂f

∂u=

(∂b

∂ξT− ∂K

∂ξTu

)T

K−TKTv =

(∂b

∂ξT− ∂K

∂ξTu

)T

v

(2.33)

が得られ,(2.33) を (2.30) に代入すれば

g =∂f

∂ξ+ v ·

(∂b

∂ξ− ∂K

∂ξu

)∈ Ξ′ (2.34)

を得る.そこで,(2.32) で v を求め,(2.34) で g を計算する方法を随伴変数法とよぶ.この定義では Lagrange 関数の定義は不要であった.一方,問題 2.8 に対して Lagrange 関数の停留条件を用いて評価関数の Frechet 微分を求めることを考えてみよう.まず,v ∈ Rn を等式制約 (状態方程式) に対するLagrange 乗数とおいて,Lagrange 関数を

L (ξ,u,v) = f (ξ,u) + v · (b (ξ)−K (ξ)u)

とおく.L (ξ,u,v) の u, v に対する停留条件

∂L

∂u(ξ,u,v) =

∂f

∂u−KTv = 0U ′

Page 30: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

30 第 2章 最適化理論の基礎

∂L

∂v(ξ,u,v) = b−Ku = 0U ′

は,それぞれ (2.34), (2.29) と一致する.そこで,Lagrange 関数の停留条件を用いた場合も,(2.29), (2.34) により u, v を求め,(2.34) で g を計算することになる.すなわち,随伴変数法と同値となる.このとき,随伴変数は状態方程式に対する Lagrange

乗数の意味をもつことになる.

2.6.5 解法以上の結果に基づけば,等式制約問題 2.5 の解法について次のことがいえる.

(1) 問題 2.6 の解 (x,λ) は極小点の必要条件を満たすことから,極小点の候補となる.

(2) 一般的な最適化問題では,Lagrange 関数の停留条件を満たす解を解析的に求めることは困難である.その場合は,ある試行点 x を選び,2.6.4 で示した随伴変数法 (Lagrange 乗数法) で等式制約を満たす下での g (= 0Ξ′) を求め,第 3

章で示す数値解法によって g = 0Ξ′ となる (x,λ) を求めることができる.(3) 問題 2.6 の解 (x,λ) が得られたとき,等式制約を満たす任意の変動 y ∈ TV (x)

に対して,Lagrange 関数の Hesse 行列 HL (x,λ) が正定値をとることが確認されたならば,定理 2.12 より,x は極小値と判定される.

(4) また,後で示す定理 2.18 の系 2.2 を用いれば,問題 2.5 が凸最適化問題のとき,定理 2.12 の仮定を用いなくても,Lagrange 乗数法の解は最小点と判定されることになる.

(5) 一方,f が凸関数のときには,g = 0Ξ′ が成り立つ停留点は,後で示す定理 2.14

の系 2.1 より最小点と判定されることになる.

2.6.6 例題ばね系の等式制約付問題を Lagrange 乗数法で解いてみよう.

例題 2.6 (ばねの結合問題) 図 2.17 の 2自由度ばね系に対して,k1, k2 ∈ R をばねの剛性を表す正定数,a ∈ R をばねのすきま (長さ) を表す正定数とする.これらのばねを結合したときにポテンシャルエネルギーが最小となる変位 u = (u1, u2)

T ∈ R2 を求めよ.すなわち

minu∈R2

{f (u) =

1

2k1u

21 +

1

2k2u

22

∣∣∣∣ h1 (u) = a− (u1 + u2) = 0

}

Page 31: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.6 等式制約問題 31

k1 a

u1

k2

u2

図 2.17 ばねの結合問題

を満たす u を求めよ.

(解答) 最初に,代入法で解いてみよう.u2 = a− u1 とおき,

f (u) = f (u1) =1

2k1u

21 +

1

2k2 (a− u1)

2

とかく.このとき,

df

du1(u1) = k1u1 − k2 (a− u1) = (k1 + k2)u1 − k2a = 0

より,f ′ の停留点は

u1 =k2

k1 + k2a, u2 = a− u1 =

k1k1 + k2

a

となる.さらに,

d2f

d2u1(u1) = k1 + k2 > 0

より,(u1, u2)T は最小点である.

次に, Lagrange 乗数法で解いてみよう.Lagrange 関数を

L (u, λ) =1

2k1u

21 +

1

2k2u

22 + λ (a− u1 − u2)

とおく.L (u, λ) の停留条件はLu1

Lu2

=

k1u1 − λk2u2 − λ

a− u1 − u2

=

000

となる.すなわちk1 0 −1

0 k2 −11 1 0

u1

u2

λ

=

00a

とかける.この式よりu1

u2

λ

=1

k1 + k2

1 −1 k2−1 1 k1−k2 −k1 k1k2

00a

=

k2

k1+k2a

k1k1+k2

ak1k2k1+k2

a

Page 32: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

32 第 2章 最適化理論の基礎

X 0

f0

f1=0

X

RTS(x)

g0(x)

TS(x)0x

y

g1(x)

図 2.18 X = R2, m = 1 のときの不等式制約問題の極小点

を得る.u は代入法の結果と一致する.また,λ = k1u1 = k2u2 は内力の意味を持つ.さらに,Lagrange 関数の u ∈ U = R2 の変動に対する Hesse 行列

∂U∂TUL (u, λ) = HL (u, λ) =

(k1 00 k2

)は u, λ によらず正定値である.そこで,定理 2.12 より,u は最小点である. □

2.7 不等式制約問題制約条件を等式から不等式に変更してみよう.ここでは,問題 2.2 あるいは 2.3 のような不等式制約のみが仮定されている場合について考えよう.X = R2, m = 1 の場合の極小点のようすを図 2.18 に示す.X = R2, m = 2 のときは 図 2.19 のようになる.まずは,これらの図を使って極小点ならば成り立つ条件について考えてから,一般の場合をみていくことにしよう.

2.7.1 極小点の必要条件まず,極小点では不等式制約の 1つが有効になっている場合について考えてみよう.図 2.18 の x が極小点であるとする.このとき,次のことがいえる.

(1) x からの変動が許されている方向は g1 ·y ≤ 0 を満たすすべての y の方向である.このようなすべての方向は,図中 TS (x) とかかれた半円の領域になる.

Page 33: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 33

x1

x2

TS(x)

S

0

TS(x)

x

g0(x)

g1(x)

g2(x)

図 2.19 X = R2, m = 2 のときの不等式制約問題における極小点

(2) x が極小点であれば,これらすべての y ∈ TS (x) 方向への変動に対して f0 は変動しないかあるいは増加するはずである.この関係は,すべての y ∈ TS (x)

に対して g0 ·y ≥ 0となることを意味する.いいかえれば,すべての y ∈ TS (x)

に対して z · y ≤ 0 を満たすような z の向きは,図中 T ′S (x) とかかれた半直

線の領域になる.(3) x が極小点であれば,すべての y ∈ TS (x) に対して g0 · y ≥ 0 となることは,

−g0 が T ′S (x) に含まれていることと同値である.

不等式制約の 2 つが有効になった場合は,図 2.19 のようになる.x から変動が許される方向の集合 TS (x) は 2 つの不等式制約が同時に満たされる方向に制限されるために扇形となる.それに対して T ′

S (x) は,不等式制約が 1 つの場合よりも広がって,扇形になる.x が極小点であれば,すべての y ∈ TS (x) に対して g0 · y ≥ 0 となる関係や −g0 が T ′

S (x) に含まれる関係はここでも成り立つ.さらに,X = R3 のときの極小点の様子を図 2.20 に示す.それでは,以上のことを一般化しよう. 図 2.18 から 2.20 では,g1 や g2 を使って TS (x) と T ′

S (x) を定義した.ここでは,CS (x) を TS (x) を含むような許容方向集合として定義して,CS (x) と C ′

S (x) を使って同様の議論をする.なお,TS (x) とCS (x) の関係は,後で示す命題 2.1 の条件が満たされれば同一視することができる.まず,不等式制約を満たす許容集合を

S = {y ∈ X | fi (x) ≤ 0, i ∈ {1, · · · ,m}}

Page 34: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

34 第 2章 最適化理論の基礎

S

TS(x)

TS(x)

0

x1

x2

x3

x

y

g0(x)

g1(x)

x1

x2

x3

TS(x)

S

TS(x)0

x

g0(x)

g1(x)

g2(x)

m = 1 m = 2

図 2.20 X = R3 のときの不等式制約問題における極小点

とかくことにする.また,ある x ∈ S に対して

IA (x) = { i ∈ {1, · · · ,m} | fi (x) = 0}

を有効な制約の添え字の集合とする.さらに,ある x ∈ S に収束するすべての無限点列 {yk}k∈N ∈ S に対して

CS (x) =

{y ∈ X

∣∣∣∣ y

∥y∥= lim

k→∞

yk − x

∥yk − x∥for y = 0X

}を S の許容方向集合あるいは接錐という.CS (x) に対して

C ′S (x) = {z ∈ X | z · y ≤ 0 for all y ∈ CS (x)}

を CS (x) の双対錐という.f0 が 1階微分連続で,C ′

S が評価可能ならば,上で示した考察のように,次の結果は分かりやすい結果である.

定理 2.13 (極小点 1次の必要条件) 問題 2.2 において,f0 ∈ C1 (X;R) とする.x

が極小点ならば,任意の y ∈ CS (x) に対して,

g0 (x) · y ≥ 0

が成り立つ.また,

− g0 (x) ∈ C ′S (x)

が成り立つ.

Page 35: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 35

(証明) 任意の y ∈ CS (x) に対して,g0 (x) · y = 0 とすると,定理 2.5 と同様の矛盾を得る.後半は,前半と同値である. □

2.7.2 最小点の必要十分条件問題 2.2 が凸最適化問題で,C ′

S が評価可能ならば,次のような最小点の必要十分条件を得る.

定理 2.14 (最小点 1次の必要十分条件) 問題 2.2 において,f0 ∈ C1 (X;R),fi (x) ∈ C0 (X;Rm), i ∈ {1, · · · ,m} を凸関数とする.このとき,x ∈ S =

{y ∈ X | fi (x) ≤ 0, i ∈ {1, · · · ,m}} が最小点であるための必要十分条件は

− g0 (x) ∈ C ′S (x)

が成り立つことである.

(証明) 必要条件は定理 2.13 より明らかである.十分条件を示す.任意の y ∈ S に対して,βk ∈ (0, 1) かつ βk → 0 なる {βk}k∈N を用いて {yk}k∈N を yk = (1− βk)x+βky とする.S は凸集合であるので,{yk}k∈N ⊆ S となり,CS (x) の定義より,y − x ∈ CS (x) となる.そこで,C′

S (x) の定義と −g0 (x) ∈ C′S (x) より,

− g0 (x) · (y − x) ≤ 0

が成り立つ.f0 は凸関数なので,定理 2.3 より,

g0 (x) · (y − x) ≤ f0 (y)− f0 (x)

が成り立つ.よって,f0 (x) ≤ f0 (y) が成り立つ. □

最小点が S の内点にあるならば,定理 2.14 は制約なし問題の最小点に対する必要十分条件を与える.このことは 2.5.4 でも説明した.

系 2.1 (最小点 1次の必要十分条件) f0 ∈ C1 (X;R), fi ∈ C0 (X;Rm), i ∈{1, · · · ,m},を凸関数とする.このとき,x ∈ intS = {y ∈ X | fi (y) < 0, i ∈ {1, · · · ,m}}(S の内点) が問題 2.2 の最小点であるための必要十分条件は

g0 (x) = 0Rd

が成り立つことである.

(証明) x ∈ intS のとき,CS (x) = X となる.よって,C′S (x) = {0Rd} となる.定理 2.14

より,g0 (x) = 0Rd を得る. □

Page 36: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

36 第 2章 最適化理論の基礎

2.7.3 KKT 条件これまでみてきた問題 2.2 の極小点あるいは最小点についての必要条件や十分条件には,すべての y ∈ CS (x) や C ′

S が含まれていた.しかし,これらの評価は容易ではない.そこで,等式制約問題でみてきたように,ここでも Lagrange 関数を用いた表現を考えてみよう.まず,不等式制約の 1つが有効となっている図 2.18 の極小点 x の場合について考えてみよう.不等式制約条件は有効であることから,等式制約が課されていたと考えても x は極小点となる.このとき,(2.17) をこの問題用にかきかえた

g0 + λ1g1 = 0R2 (2.35)

が成り立つようなある λ1 ∈ R が存在することと同値である.しかし,不等式制約では有効な変動方向が広くなる.ここで,任意の y ∈ R2 と (2.35) の内積をとれば,

g0 · y + λ1g1 · y = 0 (2.36)

となる.(2.36) において,y が不等式制約を満たす方向であれば,g1 · y ≤ 0 となる.また,x が極小点であれば,そのような y のときに目的関数が変動しないかあるいは増加することから,g0 · y ≥ 0 となる.この 2つの条件を同時に満たすためには,

λ1 ≥ 0 (2.37)

でなければならない.さらに,不等式制約が無効の場合,すなわち f1 (x) < 0 のときには,λ1 = 0 となり,(2.35) においても g1 を含む項を削除するためには

λ1f1 = 0 (2.38)

が成り立てばよい.これに本来の不等式制約

f1 ≤ 0 (2.39)

を加えれば,(2.35), (2.37), (2.38), (2.39) が不等式制約が 1つの場合の極小点で成り立つ条件となる.これらの条件は,後で示す KKT 条件になっている.次に,図 2.19 のような 2つの不等式制約が有効になっている極小点の場合について考えてみよう.ここでも,等式制約が課されていたとみなせば,

g0 + λ1g1 + λ2g2 = 0R2 (2.40)

Page 37: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 37

が成り立つようなある λ1, λ2 ∈ R が存在することと同値である.ここで,(2.40) は

− g0 = λ1g1 + λ2g2 (2.41)

とかける.ここで,g1 と g2 を固定して,すべての λ1 ≥ 0 と λ2 ≥ 0 によってつくられる (2.41) 右辺のベクトルは図 2.19 の T ′

S (x) とかかれた扇形になる.したがって,(2.41) は定理 2.13 の C ′

S (x) を T ′S (x) にかきかえた条件になっている.さらに,極

小点であれば,上の説明のように,λ1f1 = 0, λ2f2 = 0 が成り立ち,本来の不等式制約 f1 ≤ 0, f2 ≤ 0 も成り立つことになる.以上の結果を一般化しよう. まず,結果を示すために必要な定義と仮定を示す.ある x ∈ S の近傍を BX ⊂ X とかく.x において有効な制約関数の添え字の集合を IA (x) = {i1, · · · , ik} とかくことにする.ここで,任意の y ∈ BX に対して,fi ∈ C1 (BX ;R), i ∈ IA (x), で,かつ gi (y), i ∈ IA (x), は 1次独立であるとする.このとき,

TS (x) = {y ∈ X | gi (x) · y ≤ 0 for all i ∈ IA (x)}

を x における線形化許容方向集合という.TS (x) は,等式制約問題における零空間に対応させて,

TS (x) = Kco(gi1 (x) , · · · , gik

(x))T

(2.42)

とかくことにする.また,

T ′S (x) = {z ∈ X | z · y ≤ 0 for all y ∈ TS (x)}

を TS (x) の双対錐という.ここで,TS (x) と CS (x) の違いについて調べておこう.TS (x) は閉凸多面錐となるが,CS (x) は閉凸多面錐になるとは限らない [4]. 例えば,

S ={y ∈ R2

∣∣ f1 = −y21 + y31 + y22 ≤ 0, f2 = −y1 − y2 ≤ 0}

(2.43)

のとき,

CS (0R2) ={y ∈ R2

∣∣ y1 + y2 ≥ 0, y1 − y2 ≥ 0}∪{y ∈ R2

∣∣ y1 + y2 = 0},

C ′S (0R2) =

{α (1, 1)

T ∈ R2∣∣∣ α ≤ 0

}となる.図 2.21 に CS (0R2) を示す.図より,CS (0R2) は閉凸多面錐ではないことがわかる.また,一般に,任意の x ∈ S に対して

CS (x) ⊆ TS (x)

Page 38: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

38 第 2章 最適化理論の基礎

x1

x2

図 2.21 CS が閉凸多面錐ではない例: CS (0R2)

が成り立つ.例えば,(2.43) の S のとき,

TS (0R2) = R2, T ′S (0R2) = {0R2}

となる.TS (x) = CS (x) となるための十分条件は 1次の制約想定とよばれる.Cottle 制約想定はその一つである [5].

命題 2.1 (Cottle 制約想定) ある x ∈ S に対して,ある y ∈ X が存在して,すべての i ∈ IA (x) に対して,gi (x) が 1次式のときは gi (x) · y ≤ 0 が成り立ち,それ以外のときは gi (x) · y < 0 が成り立つとき,TS (x) = CS (x) となる.

このような制約想定を用いれば,問題 2.2 の極小点ならば成り立つ条件を次のようにかくことができる.

定理 2.15 (KKT 条件) 問題 2.2 において,fi ∈ C1 (X;R), i ∈ {0, · · · ,m}, とする.x ∈ S において gi, i ∈ IA (x), が 1次独立で,かつ 1次の制約想定を満たすとする.x が極小点ならば,

g0 (x) +∑

i∈{1,··· ,m}

λigi (x) = 0Rd , (2.44)

fi (x) ≤ 0 i ∈ {1, · · · ,m} , (2.45)

λifi (x) = 0 i ∈ {1, · · · ,m} , (2.46)

λi ≥ 0 i ∈ {1, · · · ,m} (2.47)

を満たす λi ∈ R, i ∈ {1, · · · ,m}, が存在する.

Page 39: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 39

(証明) x が問題 2.2 の極小点で,1次の制約想定が満たされていれば,定理 2.13 と (2.42)

および Farkas の補題 (補題 A.2) より

− g0 (x) ∈ C′S (x) = T ′

S (x) = (TS (x))′ =(Kco

(gi1

(x) , · · · , gik(x))T)′

= Ico(gi1

, · · · , gik

)が成り立つ.ただし,λ = (λi1 , · · · , λik )

T とかいて

Ico(gi1

, · · · , gik

)={(

gi1, · · · , gik

)λ ∈ X

∣∣ λ ≥ 0Rk

}である.i /∈ IA (x) に対して λi = 0 とおけば,この関係は,定理の条件と同値である. □

(2.44)から (2.47)を Karush-Kuhn-Tucker条件あるいは KKT条件という.(2.45)

は x が不等式制約を満たしていることを示している.(2.46) は,相補性条件とよばれ,有効でない制約 fi (x) < 0 に対して λi = 0 となることで (2.44) から gi を削除する作用をする.最後に (2.44) と (2.47) をあわせた条件は,図 2.19 を用いた考察で解説したように,図 2.19 の T ′

S (x) とかかれた扇形に −g0 が入る条件を与えており,定理 2.13 の C ′

S (x) を T ′S (x) にかきかえた条件になっている.

不等式制約問題に対しても Lagrange 関数を定義しよう.ここでは,後で示す双対定理との関係を考えて

L (x,λ) =

f0 (x) +

∑i∈{1,··· ,m} λifi (x)

if λi ≥ 0 for all i ∈ {1, · · · ,m}−∞ if λi < 0 for some i ∈ {1, · · · ,m}

(2.48)

とおく.ここで,λ = (λ1, · · · , λm)T ∈ Rm は Lagrange 乗数である.このとき,

(2.44), (2.45) は L (x,λ) を用いた条件にかきかえることができる.そこで,次の問題の解を問題 2.2 の解の候補とする方法を不等式制約問題に対する Lagrange 乗数法という.

問題 2.10 (不等式制約問題に対する Lagrange 乗数法) L (x,λ)を (2.48)とする.KKT 条件

Lx (x,λ) = g0 (x) +∑

i∈{1,··· ,m}

λigi (x) = 0Rd , (2.49)

Lλi (x,λ) = fi (x) ≤ 0 i ∈ {1, · · · ,m} , (2.50)

λifi (x) = 0 i ∈ {1, · · · ,m} , (2.51)

λi ≥ 0 i ∈ {1, · · · ,m} (2.52)

を満たす (x,λ) を求めよ.

Page 40: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

40 第 2章 最適化理論の基礎

さらに,fi, i ∈ {0, · · · ,m}, が 2階微分連続のとき,問題 2.2 の極小点ならば次の条件を得る.問題 2.2 に対する Lagrange 関数 L (x,λ) の x の変動に対する Hesse

行列を HL (x,λ) = ∂X∂TXL (x,λ) とかく.

定理 2.16 (Lagrange 関数を用いた極小点 2次の必要条件) 問題 2.2において,fi ∈C2 (X;R), i ∈ {0, · · · ,m}, とする.x ∈ X において gi, i ∈ IA (x), が 1次独立で,かつ 1次の制約想定を満たすとする.このとき,x が問題 2.2 の極小点ならば,任意の y ∈ TS (x) に対して,

y ·HL (x,λ)y ≥ 0

が成り立つ.

(証明) {yk}k∈N を λifi (yk) = 0, i ∈ {1, · · · ,m}, を満たし, limk→∞ yk = x となるようにとる.x は極小点であることから,x の近傍 B をとり,任意の yk ∈ B に対して,θ ∈ (0, 1)

が存在して

f0 (yk)− f0 (x) = L (yk,λ)− L (x,λ)

=1

2(yk − x) ·HL (x+ θ (yk − x) ,λ) (yk − x) ≥ 0 (2.53)

が成り立つ.両辺に 2y/ ∥yk − x∥2 をかけて,k → ∞ をすると定理の式を得る. □

2.7.4 極小点の十分条件問題 2.2 の極小点であるための十分条件について次の条件を得る.

定理 2.17 (極小点 2次の十分条件) 問 題 2.2 に お い て ,fi ∈ C2 (X;R),i ∈ {0, · · · ,m}, とする.x ∈ X において gi, i ∈ IA (x), が 1 次独立で,かつ 1次の制約想定を満たすとする.このとき,KKT 条件を満たし,任意の y ∈ TS (x)

に対して

y ·HL (x,λ)y > 0

を満たす (x,λ) が存在するならば,x は極小点である.

(証明) (x,λ) が KKT 条件を満たすならば,(2.53) を得る.ここで,HL (x,λ) は正定値である.したがって,x は極小点となる. □

Page 41: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 41

2.7.5 KKT 条件を用いた最小点の十分条件さらに,問題 2.2 が凸最適化問題ならば,最小点の十分条件を得る.

定理 2.18 (KKT 条件を用いた最小点 1次の十分条件) 問 題 2.2 に お い て ,fi ∈ C1 (X;R), i ∈ {0, · · · ,m}, が凸関数とする.x ∈ X において gi, i ∈ IA (x),

が 1次独立で,かつ 1次の制約想定を満たし,(x,λ) は KKT 条件を満たすとする.このとき,x は最小点である.

(証明) KKT 条件を満たす λi ≥ 0, i ∈ {1, · · · ,m}, を固定して,

l (y) = f0 (y) +∑

i∈{1,··· ,m}

λifi (y)

とおく.KKT 条件より,∂X l (x) = 0Rd が成り立つ.l は凸関数なので,系 2.1 より,x はl の最小点となる.すなわち,任意の y ∈ S = {y ∈ X | fi (y) ≤ 0, , i ∈ {1, · · · ,m}} に対して

f0 (x) +∑

i∈{1,··· ,m}

λifi (x) ≤ f0 (y) +∑

i∈{1,··· ,m}

λifi (y)

が成り立つ.KKT 条件より,λifi (x) = 0, λi ≥ 0, i ∈ {1, · · · ,m}, なので,任意の y ∈ S

に対して

f0 (x) ≤ f0 (y)

が成り立つ. □

さらに,定理 2.18 を応用すれば,2.6.5 でかいたように,等式制約の問題 2.5 が凸最適化問題のときの最小点の十分条件を得る.

系 2.2 (等式制約問題に対する最小点 1次の十分条件) f0 ∈ C1 (X;R) を凸関数,

h ∈ C1 (X;Rn) を 1次関数,x ∈ X において ∂Xh1 (x), · · · , ∂Xhn (x) が 1次独立で,かつ 1次の制約想定を満たし,(x,λ) は問題 2.6 の解とする.このとき,x は問題 2.5 の最小点である.

(証明) 等式制約は

h (x) ≤ 0Rn , −h (x) ≤ 0Rn

Page 42: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

42 第 2章 最適化理論の基礎

と同値である.これらに対する Lagrange 乗数を λ+ = (λ+1, · · · , λ+n)T ∈ Rn, λ− =

(λ−1, · · · , λ−n)T ∈ Rn とおく.h1, · · · , hn は,1次関数なので,任意の x,y ∈ X に対して

∂Xhi (x) · (y − x) = hi (y)− hi (x)

を満たすので,凸関数である (定理 2.3).したがって,この問題は不等式制約の凸最適化問題となっている.このときの KKT 条件は,

Lx (x,λ+,λ−) = g0 (x) + ∂XhT (x) (λ+ − λ−) = 0Rd ,

Lλ+i (x,λ+,λ−) = hi (x) ≤ 0 i ∈ {1, · · · , n} ,Lλ−i (x,λ+,λ−) = −hi (x) ≤ 0 i ∈ {1, · · · , n} ,λ+ihi (x) = 0 i ∈ {1, · · · , n} ,λ−ihi (x) = 0 i ∈ {1, · · · , n} ,λ+i ≥ 0 i ∈ {1, · · · , n} ,λ−i ≥ 0 i ∈ {1, · · · , n}

とかける.λ+ − λ− = λ とかけば,(x,λ) は問題 2.6 の解と同値になる. □

2.7.6 解法この節の内容から,不等式制約問題 2.2 の解法について次のことがいえる.

(1) Lagrange 乗数法 (問題 2.10) の解は極小点の必要条件を満たす.そこで,ある試行点 x を選び,g0 (x), · · · , gm (x) を求め,(2.50) から (2.52) を満たすように λ1, · · · , λm を決定し,それらを使って Lagrange 関数が停留する方向に試行点を移動していく方法が考えられる.詳細は第 3章で示すことにしよう.

(2) そのようにして得られた Lagrange 乗数法の解に対して,Lagrange 関数の x

の変動に対する Hesse 行列 HL (x,λ) が正定値であることが分かれば,定理2.17 により,Lagrange 乗数法の解は極小値と判定される.

(3) 問題 2.5 が凸最適化問題であることが確認できれば,定理 2.18 より,Lagrange乗数法の解は最小点と判定されることになる.

2.7.7 例題KKT 条件を,ばねの結合問題に対して用いてみよう.

例題 2.7 (ばねの結合問題) 例題 2.6 において,ばねの結合条件を

a ≤ (u1 + u2)

Page 43: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.7 不等式制約問題 43

に変更したときの最小点を求めよ.また,

a ≥ (u1 + u2)

に変更したときの最小点を求めよ.

(解答) a ≤ (u1 + u2) のとき,問題は

minu∈R2

{f0 (u) =

1

2k1u

21 +

1

2k2u

22

∣∣∣∣ f1 (u) = a− (u1 + u2) ≤ 0

}とかける.この問題の Lagrange 関数は,λ ∈ R を Lagrange 乗数として,

L (u, λ) =1

2k1u

21 +

1

2k2u

22 + λ (a− u1 − u2)

となる.L (u, λ) の停留条件は例題 2.6 の結果と等しく,k1 > 0, k2 > 0, a > 0 のとき

u1 =k2

k1 + k2a > 0, u2 =

k1k1 + k2

a > 0, λ =k1k2

k1 + k2a > 0

となる.この結果は KKT 条件を満たす.この問題は,例題 2.6 で調べたように,凸最適化問題なので,定理 2.18 により u は最小点となる.一方,a ≥ (u1 + u2) のとき,問題は

minu∈R2

{f0 (u) =

1

2k1u

21 +

1

2k2u

22

∣∣∣∣ f1 (u) = (u1 + u2)− a ≤ 0

}とかける.この問題の Lagrange 関数は

L (u, λ) =1

2k1u

21 +

1

2k2u

22 + λ (u1 + u2 − a)

となる.L (u, λ) の停留条件は,k1 > 0, k2 > 0, a > 0 のとき

u1 =k2

k1 + k2a > 0, u2 =

k1k1 + k2

a > 0, λ = − k1k2k1 + k2

a < 0

となる.λ < 0 より,この結果は KKT 条件を満たさない.したがって,結合制約を無効とみなし,λ = 0 とおき,問題を

minu∈R2

{f0 (u) =

1

2k1u

21 +

1

2k2u

22

}にかきかえる.この問題に対して

g0 (u) =

(k1 00 k2

)(u1

u2

)=

(00

)より,u = 0R2 を得る. □

Page 44: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

44 第 2章 最適化理論の基礎

2.8 等式と不等式制約問題問題 2.1 に対して,これまで等式制約のみの場合と不等式制約のみの場合に分けてみてきた.ここでは,両方を同時に考えたい.2.1 の冒頭でも説明したように,最適設計問題では,等式制約として状態方程式が設定され,不等式制約として評価関数についての制約が使われる.そこで,ここでは最適設計問題を意識して,問題 2.1 を次のようにかいてみよう.ただし,X = Ξ× U = Rd, U = Rn, Ξ = Rd−n とおく.

問題 2.11 (等式と不等式制約付き最適化問題) fi : Ξ × U → R, i ∈ {0, · · · ,m},K : Ξ → Rn×n と b : Ξ → U ′ が与えられたとき,

min(ξ,u)∈Ξ×U

{f0 (ξ,u) | h (ξ,u) = −K (ξ)u+ b (ξ) = 0Rn ,

fi (ξ,u) ≤ 0, i ∈ {1, · · · ,m}}

を満たす (ξ,u) を求めよ.

問題 2.11 に対する KKT 条件を求めてみよう.この問題の Lagrange 関数は

L (ξ,u,v0, · · · ,vm,λ) = L0 (ξ,u,v0) +∑

i∈{1,··· ,m}

λiLi (ξ,u,vi) (2.54)

とおくことができる.ただし,λ = (λ1, · · · , λm)T ∈ Rm は fi (ξ,u) ≤ 0, i ∈

{1, · · · ,m}, に対する Lagrange 乗数であり,

Li (ξ,u,vi) = fi (ξ,u) + vi · (b (ξ)−K (ξ)u) (2.55)

は fi (ξ,u) に対する Lagrange 関数である.v0, · · · , vm は,f0, · · · , fm に対する随伴変数 (h (ξ,u) = 0Rn に対する Lagrange 乗数) である.2.6.4 でみてきたように,等式制約を満たした関数 fi の ξ に対する Frechet 微分

gi は,(2.34) と同様に,

gi =∂fi∂ξ

+ vi ·(∂b

∂ξ− ∂K

∂ξu

)∈ Ξ′ (2.56)

によって求めることができる.なお,2.6.4 では,gi の記号を用いたが,ここでは gi

とかくことにする.(2.56) において,vi ∈ U は随伴方程式

KTvi =∂fi∂u

(2.57)

Page 45: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.8 等式と不等式制約問題 45

の解とする.そこで,(2.54) で定義した Lagrange 関数 L (ξ,u,v0, · · · ,vm,λ) をL (ξ,λ) = L (ξ,u (ξ) ,v0 (ξ) , · · · ,vm (ξ) ,λ) とおけば,

Lξ (ξ,λ) = g0 +∑

i∈{1,··· ,m}

λigi (2.58)

となる.したがって,L (ξ,λ) に対して定理 2.15 を適用すれば,問題 2.11 に対するKKT 条件として

Lξ (ξ,λ) = g0 +∑

i∈{1,··· ,m}

λigi = 0Ξ′ , (2.59)

Lλi (ξ,λ) = fi (ξ,u) ≤ 0 i ∈ {1, · · · ,m} , (2.60)

λifi (ξ,u) = 0 i ∈ {1, · · · ,m} , (2.61)

λi ≥ 0 i ∈ {1, · · · ,m} (2.62)

を得る.

2.8.1 解法等式制約と不等式制約のある問題 2.11 の解法について次のことがいえる.

(1) ある試行点 ξ を選んだとき,f0, · · · , fm に対して等式制約を満たしたときの(f0, · · · , fm の ξ に対する) Frechet 微分 g0, · · · , gm は,2.6 節で示した随伴変数法によって求めることができる.

(2) 第 3章で示す勾配法を用いれば,g0, · · · , gm を使って f0, · · · , fm が等式制約を満たしながら減少する方向ベクトル yg0, · · · , ygm を求めることができる.

(3) 勾配法で得られた yg0, · · · , ygm を用いて,Lagrange 乗数 λ1, · · · , λm を未定乗数と仮定して,

y = yg0 +∑

i∈{1,··· ,m}

λiygi = 0Rd (2.63)

を試行点の更新方向ベクトルとおく.このとき,更新先で KKT 条件 (2.60) から (2.62) が満たされている条件を用いれば,λ1, · · · , λm が決定されることになる.その具体的な内容は第 3章で説明される.

(4) λ1, · · · , λm が求まれば,(2.63) で計算される y の方向に試行点 ξ を更新していけば,等式と不等式制約を満たしながら f0 は減少することになる.その詳細についても第 3章で説明される.その結果,(2.59) を満たす ξ が見つかれば,それは問題 2.11 に対する極小点の候補となる.

Page 46: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

46 第 2章 最適化理論の基礎

(x,¸)

x

¸

図 2.22 鞍点

(5) 等式制約を満たす f0, · · · , fm を使って不等式制約だけにかきかえた問題 2.11

に対して,定理 2.17 の仮定が成り立つことが確認できれば,(2.59) を満たす ξ

とそのときの u は問題 2.11 の極小値となる.(6) f0, · · · , fm でかきかえた問題 2.11 が凸最適化問題のとき,定理 2.18 より,

(2.59) を満たす ξ は問題 2.11 の最小点と判定される.

第 1章の 1次元線形弾性体と 1次元定常 Stokes 流れ場の形状最適化問題は等式と不等式制約問題の例題となっていた.その際,定理 2.17 の仮定は成り立たなかったが,定理 2.18 の仮定は成り立ったために,KKT 条件を満たす点はそれらの問題の最小点であることがいえることになる.

2.9 双対定理不等式制約問題 2.2 に対する KKT 条件では,f0, f の 1階微分連続が必要であった.この条件を凸性に変えたとき,次の双対定理が成り立つ.本書で,この定理を直接使うことがないため,証明を省略して結果だけをみておこう.

定理 2.19 (双対定理) 問題 2.2が凸最適化問題で,ある y ∈ S において f (y) < 0Rm

が成り立つ (Slater 制約想定) とする.L (x,λ) を (2.48) とする.このとき,x ∈ X

が最小点であるための必要十分条件は,任意の y ∈ X, µ ∈ Rm, µ ≥ 0Rm に対して

L (x,µ) ≤ L (x,λ) ≤ L (y,λ) (2.64)

が成り立つような (x,λ), λ ≥ 0Rm , が存在することである.

(2.64) を満たす (x,λ) は図 2.22 のような鞍点となる.そのために,双対定理を鞍点定理ともよばれる.

Page 47: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.9 双対定理 47

2.9.1 例題ここでも,ばねの結合問題において双対定理を使ってみよう.

例題 2.8 (ばねの結合問題) 例題 2.7 において,ばねの結合条件を

f1 (u) = a− (u1 + u2) ≤ 0

とおく.このときの最小点が鞍点となることを示せ.

(解答) f0 (u), f1 (u) は凸関数であるので,例題 2.7 は凸最適化問題である.例えば u1 =

u2 = a/4 のとき f1 < 0 となることから,Slater 制約想定は満たされている.この問題のLagrange 関数を,任意の v ∈ R2 と µ ∈ R に対して

L (v, µ) = f0 (v) + µf1 (v) =1

2k1v

21 +

1

2k2v

22 + µ (a− v1 − v2)

とおく.このとき,µ > 0 に対して

L (u, µ) = infv∈R2

L (v, µ) = L

k1,µ

k2, µ

)= LS (µ)

=1

2

µ2

k1+

1

2

µ2

k2+ µ

(a− µ

k1− µ

k2

)= −1

2

(1

k1+

1

k2

)µ2 + aµ

となる.さらに,L (µ) = L (u (µ) , µ) とおけば,

dL

dµ= −

(1

k1+

1

k2

)µ+ a = 0

を満たす µ を λ とおく.また,

d2L

d2µ= −

(1

k1+

1

k2

)< 0

となる.したがって,

L (u, µ) ≤ L (u, λ)

が成り立つ.一方,L (u, λ) ≤ L (v, λ) は明らかである. □

例題 2.8 の結果が鞍点になっていることを図で確かめてみよう.変数は(u1, u2, λ)

T ∈ X = R3 であった.このままでは図にすることは難しいので,u2 = 0,

k1 = 1, a = 1 とおく.このとき,

L (u1, λ) =1

2u21 + λ (1− u1)

Page 48: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

48 第 2章 最適化理論の基礎

u1

(u1,¸)

¸

V

0

2

0

1

2

1

0

1

2

図 2.23 例題 2.8 の鞍点

p ua

l

x

¡1¡0

図 2.24 1個の断面積をもつ 1次元線形弾性体

となり,鞍点は (u1, λ) = (1, 1) となる.図 2.23 にその様子を示す.鞍点の条件は成り立っていることを確認してほしい.なお,λ は内力の意味をもつ.工学では −L (u,λ) をコンプリメンタリエネルギーとよび,その最小点を求める問題の解として内力を求める方法が使われる.この章の最後に,第 1 章でみてきたような最適設計問題に対して双対定理を使ってみよう. 1.1 や 2.2 で解説したように,本書で考えるような最適設計問題は,状態方程式を満たす変数の集合に限定すれば凸最適化問題になっていた.それならば双対定理が適用できて,最適設計問題の最小点では設計変数と Lagrange 乗数に対してLagrange 関数は鞍点を形成しているはずである.そのことを図で確認してみよう.ここでも変数を 2次元空間に限定しなければならない.1つを Lagrange 乗数にとれば,設計変数を 1つに限定する必要がある.そこで,図 2.24 のような 1つだけの断面積をもつ 1次元線形弾性体を考えよう.

例題 2.9 (平均コンプライアンス最小化問題) eY, l, c1 を正実定数,p を実定数とす

Page 49: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.10 第 2章のまとめ 49

0

0

01

1

2

2

a

(a,¸)

¸

V

4

2

図 2.25 例題 2.9 の鞍点

る.このとき,

min(a,u)∈R2

{f0 (u) = pu

∣∣∣ f1 (a) = la− c1 ≤ 0, a > 0,eYlau = p

}を満たす (a, u) を求めよ.ただし,l = 1, eY = 1, m0 = 1, p = 1 とおいてよい.

(解答) f0 (a) = f0 (u (a)) = f0 (1/a) = 1/a となる.f0 (a) と f1 (a) は凸関数なので

mina∈R

{f0 (a) | f1 (a) ≤ 0, a > 0

}は凸最適化問題である.Slater制約想定が満たされることは自明である.この問題の Lagrange

関数は,λ ∈ R を f1 (a) ≤ 0 に対する Lagrange 乗数として

L (a, λ) = f0 (a) + λf1 (a) =1

a+ λ (a− 1)

で与えられる.このとき,

La = − 1

a2+ λ = 0

Lλ = a− 1 = 0

より,(a, λ) = (1, 1) が L (a, λ) の停留点となる.この点が鞍点になる様子は図 2.25 で確かめることができる. □

2.10 第 2章のまとめ有限次元ベクトル空間上で定義された評価関数で構成された最適化問題に関する理論をみてきた.

Page 50: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

50 第 2章 最適化理論の基礎

(1) 制約なし問題の極小点では目的関数の勾配が零になる (定理 2.5).• 目的関数の停留点 (勾配が零) で,Hesse 行列が正定値ならば,極小点である (定理 2.7).

• さらに,目的関数が凸関数ならば,極小点は最小点である (定理 2.8 あるいは定理 2.14 の系 2.1).

(2) 等式制約問題の極小点では Lagrange 関数が停留する (定理 2.10).• Lagrange 関数の停留点で,Lagrange 関数の x の変動に対する Hesse 行列が正定値ならば,極小点である (定理 2.12).

• 凸最適化問題ならば,Lagrange 関数の停留点は最小点である (定理 2.18

の系 2.2).(3) 不等式制約問題の極小点では 1次の制約想定が満たされた下で KKT 条件が成り立つ (定理 2.15).• 1次の制約想定が満たされた下で KKT 条件を満たす点で,かつ Lagrange

関数の x の変動に対する Hesse 行列が正定値ならば,極小点である (定理2.17).

• 凸最適化問題で,評価関数の勾配が 1次独立で,かつ 1次の制約想定が満たされた下で KKT 条件を満たす点は,最小点である (定理 2.18).

2.11 第 2章の演習問題(1) 定義 2.4 の中の α あるいは −α は A の絶対値最小の固有値と一致することを示せ.(ヒント: 定理 A.6 を参考にせよ.)

(2) 関数 f : R2 7→ R を

f (x1, x2) =1

2

(ax2

1 + 2bx1x2 + cx22

)+ dx1 + ex2.

とする.ただし,a, b, c, d ∈ R は定数とする.f が最小値をとるための必要条件を示せ.また,十分条件が a > 0, ac − b2 > 0 であることを示せ.ただし,Sylvester 判定法 (定理 A.7) を用いてよい.

(3) 周の長さが一定値以下である長方形のうちで,面積が最大となるものは正方形であることを示せ.• 長方形の隣り合う 2辺の長さを x = (x1, x2)

T ∈ R2, x ≥ 0R2 , 周の長さを制限する正定数を c とおいて問題を構成せよ.

• Lagrange 関数を定義して,KKT 条件を求めよ.

Page 51: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

2.11 第 2章の演習問題 51

• KKT 条件を満たす解が最小点であることを示せ.(ヒント:この問題は凸最適化問題であるかを考え,そうでない場合には,目的関数を制約を満たす変数の集合に対する関数 (本文では f0 とかいた) で再構成した問題が凸最適化問題になっていることを示せばよい.)

(4) 付録 III の補題 A.1 と A.2 を証明せよ.(5) 定理 2.19 を証明せよ.

Page 52: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して
Page 53: 最適化理論の基礎 - 名大の授業 (NU OCW)2 第2 章 最適化理論の基礎 を設計変数に対する線形空間を表すことにする.すなわち,第1 章の変数に対して

53

参考文献

[1] M. S. Bazaraa and C. M. Shetty. Nonlinear programming : theory and algo-

rithms. Wiley, 1979.

[2] M. W. Jeter. Mathematical programming : an introduction to optimization. M.

Dekker, Inc., 1986.

[3] 久志本茂. 最適化問題の基礎. 森北出版, 1979.

[4] 藤田宏, 今野浩, 田邉國士. 最適化法. 岩波書店, 1994.

[5] 福島雅夫. 非線形最適化の基礎. 朝倉書店, 2001.

[6] 田村明久, 村松正和. 最適化法. 共立出版, 2002.

[7] 矢部博. 工学基礎 : 最適化とその応用. 数理工学社, 2006.

[8] E. K. P. Chong and Zak. S. H. An introduction to optimization. Wiley, 2008.

[9] O. Guler. Foundations of optimization. Springer, New York, 2010.