最適制御問題(ポントリャーギンの最大原理)における
解の必要十分条件について
Joe Yuichiro Wakano
24 Nov 2004
10 Feb 2006 追記
ポントリャーギンの最大原理は通常「目的関数を最大にするような制御関数が存在するならば、以下の条件を満たす」という形で記述されている。十分条件については、特殊な場合を除いてなんら言及がない。この文書では、必要十分条件について、私が現段階で理解していることを記す。
一般に、目的関数は制御関数全体の集合上で定義された実数関数である。制約条件も考慮して、許容される制御関数全体の集合をと定義すると、目的関数とは、からへの写像といえる。目的関数を最大にするような要素が常に存在するとは限らない。1つ目の反例は、適当なを選ぶことによってがいくらでも大きくなるような場合である。2つめの反例は、あるが存在して、がに近づけば近づくほどはどんどん大きくなるような場合である。後者は、数直線上の開区間(0,1)で定義された関数(例えば)は、上に有界であるにもかかわらず最大値は存在しない、というケースと直感的に等しい。
目的関数として、からへの写像一般を考えるのは困難なので、まずは変分問題を考える。この問題の制御関数は、で定義された連続微分可能関数で、境界条件としておよびの値は定められているものとする。目的関数は、汎関数
ただし
である。ここでは、単なる3変数実数値関数であって、制御関数の関数としての性質のうち、各点での値とその一階導関数の値だけに着目している点に注意しよう。解析学の基本的なコンセプトに従い、まずは極値を考える。すなわち、ある関数に十分近い任意の関数に対して、となるとき、は極大値を与える。ここで、2つの関数の間に距離の定義がなければ、極大値は定義できない。距離の入れ方(位相の入れ方?)としては、次のものが便利らしい。
(0)
最大値関数は、の定義域全体からとる。距離が定義できたので、今度はのε近傍はどのように表わされるかを考える。からの距離がε未満であるような要素全体の集合は、
かつ
であるようなすべての連続微分可能関数を用いて、と表わされるだろう(あまり自明ではないかも。がのε近傍であることは確かだとしても、これで本当にすべてなのか? 追記:自明な気がするが、私は何を考えていたのか?)。近傍の関数として、だけを満たす任意の連続微分可能関数を用いて、を用いることも出来る。
「に十分近い関数はかならずを満たす」
ならば
「十分小さな実数に対して、が任意のについて成り立つ」
よって、を、のまわりでTaylor展開した
を考えると、が小さければ正負に関わらずにが成り立つというのだから、
(1)
でなければならない。変分問題の場合は、(1)が任意のに対して成り立つことと同値な命題として、Eulerの方程式
が導かれる。この式を満たす関数は停留曲線と呼ばれる。つまり、停留性とは、の一次の係数が0ということである。
次に、の二次の係数を考えてみる。がなりたつためには、明らかに
(2)
でなければならない。変分問題の場合は、(2)が任意のに対して成り立つことの必要条件として、Legendreの必要条件
「上の各点で常に 」
が導かれる。
逆に、が極大値を与えることの十分条件を考えてみる。が任意のについて成り立つ一番単純な例は、Taylor展開が
かつ
の場合である。すなわち
(3)
の場合である。(3)が成り立つための条件は(に依存しない形で書くのは)かなり複雑で、変分問題の場合は、Yacobiの条件として知られている。
まとめよう。関数空間の距離として、(0)式を採用した場合(弱極値の場合)に、目的関数を極大にする解を探す過程は、以下のようになる。
まず、Eulerの方程式を満たす関数を求める。これが存在しない場合は、解なしである。
次に、が存在したとして、それがLegendreの必要条件を満たすか調べる。満たさないような関数は、解ではない。生き残る関数がない場合は、やはり解なしである。
ここまで生き残っても、まだそれが解とは限らない。解であると証明するには、Yacobiの条件をみるしかない。Euler,Legendreの条件を満たす関数をすべて並べ上げ、かつそのなかでYacobiの条件を満たすものがあるとすれば、それは解であると証明できる。ただし、Yacobiの条件は、Taylor展開の二次の係数が負であることに由来する極大性しかみていないので、Yacobiの条件を満たさないような解(たとえば1-3次の係数は全て0で、4次の係数が負の場合とか)が並べ上げた中に存在する可能性は否定できない。
最大と極大について:
これまでの議論はすべて、の近傍に関する議論であった。すなわち局所的な性質をみているだけで(だから極大なのだ)、「最大値を与える制御が知りたい」という当初の目的はまだ達成されていない。極大が存在しても、最大が存在しない例は、開区間上の連続関数を考えればいくらでもあるだろう。だから、Euler、Legendre、Yacobiの条件をすべて満たす制御は極大であると証明できるが、最大であるとは一般にはいえない(追記:をにどんどん近づけたとき、目的関数の値はどんどん大きくなるというのが極大の定義である。だからならば、は局所的には最大になっているが、全体の中で最大とは限らない)。
逆に、最大であれば極大なのだろうか? これも、として何を選ぶかに依存する気がする。変分問題の場合、はで定義された連続微分可能関数で、境界での値が固定された関数の集合である。これに(0)式で定義された距離を入れたとき、はコンパクトになるのだろうか? もしコンパクトであるなら、目的関数はあきらかに上で定義された連続関数なので、最大値をもち、しかもそれは極大にもなっているだろう。
Pontryaginの場合:
この場合も、事態は決して改善されているわけではない(多分)。「最大値を与える制御が存在するなら・・・を満たす」という定理は、実際的には極大値が満たす必要条件なのであろう。この場合は、のコンパクト性の問題に加えて、目的関数は上の連続関数なのかという問題もある。直感的には、目的関数は状態変数(と制御変数)の連続関数であり、状態変数は力学系の形で制御変数と結びついているので、ある意味において目的関数は制御変数と連続な写像で結ばれているといえる。ということから、極大であることの必要条件だけは、変分の場合の作戦を応用させればいけそうな気もする。
結論:
ようするに、厳密に言えるのは必要条件だけということ。最大問題の解の候補達を並べることが、出来る限界である。この候補が1つだけしかなく、が常識的な集合であるならば、最大値を与える解は、その候補だろうということは、まあ直感的には支持されるであろ〜。十分条件(あるいはもう少し狭く、解の存在証明)は、厳密に立ち向かうには、強すぎる壁である。
そもそも、「集合の中で何かを最大にするような要素を求めよ」という問題を、解析的な手法で解くためには、が距離空間になってないとお手上げなわけである。そして、適当な要素に対して収束していく要素の列を考えて、どんどん値が大きくなっていくとか、そういうイメージなくして解析的手法は成り立たない。しかるに、関数空間に距離を入れるやり方は1通りじゃないし、入れ方によって位相的な性質も変わるだろう。下手すると、最大要素が存在するのかどうかというバイナリな命題だって、距離の入れ方に依存するかもしれん(なんせ相手は無限集合である)。距離の定義を変えるということは、要素Pに収束する点列P1,P2,...が、もはやまったく無関係な点の集合に変わってしまう(可能性もある)ということだから、要素Pがある位相で極大であっても、別の位相で極大とは限らないわけである(位相同型なら成り立つが)。
逆にいうと、どういう距離を使って考えたのかの情報をまったく知らなくても、変分法なりPontryaginなりを使えてしまうところが、すごいところかもしれない。