2

FMINSEARCH を使用して Nelder-Mead アルゴリズムを停止するまで実行するのにかかる合計コンピューター時間を決定するために MATLAB で使用する必要があるコマンドを知っている人はいますか? TQ

4

4 に答える 4

3

まず、tic / toc命令を使用して計算時間を確認できます。例えば:

tic
x = fminsearch('x^2+x+2',10)
toc

第二に、Nelder-Mead アルゴリズムは、ヒューリスティックな方法で最小値に向かって反復的に進む制約のない非線形最適化アルゴリズムです。私の観点からは、遅くなり、「良い」最小値が見つからない可能性があります。したがって、BFGS のような準ニュートン法を使用することをお勧めします。関数fminuncを使用するだけです。

于 2013-02-07T09:30:55.190 に答える
1

特定のコードの時間を計りたい場合は、次を使用できます。

tic
% yourcode
toc

コードを編集できない場合、または関数の合計実行時間を確認したい場合は、試してみてください

help profile
于 2013-02-07T09:29:35.623 に答える
0

コード:

t=cputime; 
your_operation; 
cputime-t

プロセスが費やした計算 (CPU) 時間を返します。Tic/toc コマンドは実行経過時間を返します。これは、同時に CPU を使用している他のプログラムに依存する場合があります。

于 2013-02-09T10:39:00.613 に答える