有限要素法数値解析とその制御解析 2004.01.20〜                前橋工科大学建設工学科 助教授 梅津 剛


最適制御

Optimal Control。最適とは何か?

我々はしょっちゅう、最適最適最適と、何かにつけ、最適な値を探す!などといいますね。
私の博士号の研究課題となった、有限要素法による流れ解析とその制御解析、このテーマの「お勉強」は相当つらいものがありました。
そんな、苦労話はさておき、まずは、「最適とはなにか?」です。

これには少々、びっくりしました。今まで単純に考えていたイメージと違ったからです。
最適であると言い切るには、それを評価する指標が必要です。
定量化するのは、極、当然のこととして、「いやー、最適になったよー」「ナニが?」「いや操作方法が」
「ふーん、ナニを最小にしたの?、あるいは最大化したのよっ」
まずは、最適というのは、最小値もしくは最大値に至ったことです。何かといえば、評価関数。そう、評価するものです。
しかも、そこには、「目標とする状態を最大化し、なおかつ、それに払った努力も最小化した」の2つの意味を含むのです。

「努力は数にならんべよ」「そうだねー、ほんじゃ、いくらかかったか、にしましょう。世の中、金だからねー」「せちがらいねぇ」
というわけで、
「状態よければ全てよし、それが最適じゃー!」では、足りないのです。
「これっぽっちの金で、コンだけの成果が得ましたー。その双方の成果を評価する関数も、最大となりましたー。」
これが最適だったんですね。んだもんで、評価関数はCost function なんても、言うんですよ。
しらなかったよ。
だから、思わず、今でも環境問題関連で、めったに行かない学会でときどき「最適な値を得ました」なんぞと口走る発表を聞くと、
おもわず、「評価関数をみせて、ちょうーだいっ」て、質問したくなります。いやみだからやめるけど。
なんで最適って思ったの?そういうのはね、適当な値を得ましたってぐらいが、適当なんだよ、といいたくなるわけです。

有限要素法流体解析では、メッシュを構成する全節点に、流速や水位などの物理量が計算されます。
制御問題では、これらのうち、目的とする状態を決める物理量を状態変数といいます。
たとえば、計算領域全ての水位をコンくらいにしたいよー、いう目的であれば、水位が状態変数となります。
そして、
制御問題では、もう一つの変数、制御変数があります。これは、その状態にするために操作した、努力した、使ったものです。

評価関数は、「(この状態にできましたか)の2乗+(どのくらい制御しましたか)の2乗」の形となります。

「ふーん。なるほどねー、状態の目標と、制御のための払った努力を足すんだねー。でも、なんで、2乗にするの?」
「2乗するとね、ずえんぶ、正になるでしょー。そうするとね、評価関数の極地が求めやすく、なるんだよー」
そのニュアンスをつかむには、「最小2乗法による回帰直線でも求めるか」あたりを、ちょろちょろ勉強すれば理解できます。

そんなわけで、私が行ったこの研究の内容は、
「ダムに洪水流が押し寄せてくると、
ダム内の水位が上がって危険なので、
ダムゲートを操作して、
水位を常に、一定の安全な値に保つ、
ほんじゃぁ、そのためには、
ダム内に洪水流が押し寄せてきた際に、ダム内の水位変化はどうするの、そりゃ有限要素法でとくのよ、
ほんじゃ、ダムゲートを操作するって、どうすんの、そりゃ、下流のゲート点で、境界条件で流量を出してやるのよ強制的に。」
という、ものでした。
これが、すごい計算量、すごいメモリーの必要なプログラム、その割には、メッシュ数が数百ぐらいで、
それまで数万要素の計算をしていたのに、いきなり、三角形がちゃんとみられる粗いメッシュになってしまいました。
だって、全節点、全時間の、状態変数を保管するのですもの。いやもうアレには恐れ入りました。

そんなわけで、


おっと、時間だ。センターは寒くていかん。今日はこれまで。