[問題]fminsearch提出每一次迭代到的值

看板MATLAB作者 (achu)時間8年前 (2016/09/23 18:55), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串1/1
版上前輩先進大大好 如題 小弟最近在使用nelder-mead演算法 而matlab有fminsearch指令使用 [x,fval,exitflag,output]=fminsearch(@fun,[1;1],opt) 最後可以搜索出x的區域最佳解 而我想把nelder-mead法所有迭代過程中的x提出來 上網查了一些,都沒有太大幫助 想請各位大大幫個忙,感謝 幫助我並解決掉這個問題的一位大大,小弟將奉上僅有的300P~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.115.153.229 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1474628158.A.B7F.html

09/23 23:05, , 1F
請大家幫解惑~
09/23 23:05, 1F

09/24 02:12, , 2F
最簡單暴力的方法,設global變數,但後續維修比較麻煩
09/24 02:12, 2F

09/24 02:13, , 3F
不然就是用fminsearch的option中的plotfcns變相完成此事
09/24 02:13, 3F

09/24 10:49, , 4F
edit fminsearch可看source code 最好另存新檔免得改壞了
09/24 10:49, 4F

09/24 10:50, , 5F
然後多令個變數把每步x儲存輸出
09/24 10:50, 5F

09/24 10:52, , 6F
更暴力的方法就是把最大迭代次數設1 寫個迴圈把每次輸出x
09/24 10:52, 6F

09/24 10:53, , 7F
存起來 然後當下一次的初始猜值
09/24 10:53, 7F

09/26 01:20, , 8F
如果演算法有用到前n次的資訊,那迭代次數設1會出問題
09/26 01:20, 8F
文章代碼(AID): #1NvGe-j_ (MATLAB)
文章代碼(AID): #1NvGe-j_ (MATLAB)