I am Charmie

メモとログ

最適化

とある論文のアルゴリズムを自分の研究で使いたくて,2週間ほど最適化の勉強.
その論文では,最適化に共役勾配法(CG)を使っていたのだが,最適化について無知だったので,そもそもCGって何?という所から,実際に自分の研究で使うためには,どーすればいいのか知るために,けっこうな時間をかけた.
その結果,安定化双共役勾配法(BiCGSTAB)なるアルゴリズムをCGの代わりに使えばいいという結論に達する.CGについてはかなり理解出来たものの,BiCGSTABは複雑過ぎるそうなので,擬似コードを基に実装するにとどめた.

で,さっき試しにプログラムを動かした所,うまく収束してくれたみたいで,かなり綺麗な結果が出た.これで,後輩の論文投稿に無事間に合った.

CGについてのWikipediaの記述を見ても思うが,反復法に限らず,最適化のアルゴリズムはけっこーシンプル.もちろん,その裏にはエレガントで感動できるほど素敵な理論が隠されているわけだが,擬似コードという形にして表してみると,どれもシンプル.
何か,ここにきてドンドン頭が良くなっていると実感している.最近,上り調子なだけに,次につまずいた時の落ちっぷりが怖いが,上り調子な内に,上れる所までいくしかない.