手習ひデジタル信号処理(214) Scilab、{Scilabデモ}、早く言ってよバナナ関数

Joseph Halfmoon

前回、fminsearch関数がネルダーミード法を駆使してバナナ関数(Rosenbrock関数)の最適解に「這いよる」様子をOutputFcnなるもので表示できました。しかし、シンプレックスが変形して解に迫る様子を表示するオプションがあったのです。聞いてないよ~。最初から言ってよ~。まあ、デモを見てみれば一目瞭然。

※「手習ひデジタル信号処理」投稿順 Indexはこちら

※Windows11上の    Scilab2024.0.0を使用させていただいております。(Scilabについては御本家 Scilab 様へ)

fminsearch_display.sce

前回は、シンプレックスが「伸びたり」「縮んだり」「ヒックリ返ったり」しながら、バナナ関数(Rosenbrock関数)の最適解に迫る様子をfminsearch 関数の出力関数(OutputFcn)を利用して観察しました。しかし、そのためには出力関数を定義する必要がありました。

しかし、今回「鑑賞」させていただくfminsearch_display.sce なるデモでは、前回と同様な途中経過をしめしてくれる「表示オプション」が語られます。だったらそうと早く言ってよ。以下のデモ選択画面から起動できます。selectFminsearchDisplay

ソースコードの中の表示オプション設定部分が以下の左の赤枠に。そして結果出力が右側に。fminsearchDisp_opt

まあ、前回の方法の方が御随意になんでも出力できて自由度は高いのだろうけれども、今回の方法の方が圧倒的に簡単じゃん。

手習ひデジタル信号処理(213) Scilab、{Scilabデモ}、目出度いバナナ関数 へ戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です