[問題]最佳化設定裡 有沒有限制參數計算區間的 …已回收
在最佳化工具裡 有沒有選項可以設定電腦計算參數的區間??
我使用最小平方做參數最佳化估計
由於參數若是太大或太少會使我的系統發散
導致最佳化過程出現錯誤而終止
最佳化中最小平方法是可以設定參數上下限(ub & lb)
不過在設定上下限後,電腦在估算參數時有時會高於上限,但不會低於下限
例如 參數初始值=[1.8e-21, 1e-21, 1.5e-3, 2.1e-3]
ub=[1.8e-20, 1e-20, 1.5e-2, 2.1e-2]
lb=[1.8e-22, 1e-22, 1.5e-4, 2.1e-4]
電腦過程中會出現[1.4e-8, 1e-21, 1.5e-3, 2.1e-3] ← 第一個參數高於上限值很多
或[1.8e-21, 1.0001e-22, 1.5e-3 2.1e-3] ←第二個參數接近下限值
類似這樣的參數來計算
不知道有沒有選項是可以限制參數"實際上"變動的區間??
目前一直碰到電腦參數跳動太大的情況,導致系統會發散
希望板上前輩能指點一下
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.126.65.55
→
07/19 08:27, , 1F
07/19 08:27, 1F
這我知道 可是我設定後電腦在估算過程中還是會超過這區間(就像我上面的例子)
我在想是不是只有最後的output參數落在這區間呢??
有沒有辦法在電腦估算過程中,參數不要超過這個區間
→
07/19 10:24, , 2F
07/19 10:24, 2F
我的function是聯立ODE利用lsqcurvefit做最佳化參數估計
→
07/20 10:47, , 3F
07/20 10:47, 3F
遞迴式? 我想應該是吧
lsqcurvefit這最佳化工具一開始要輸入一組initial parameter
這組參數會代入ode45中積分,積分完得到目標函數
lsqcurvefit內建的演算法依照目標函數的誤差再產生一組參數帶入ode45中積分
這算是L大你說的遞迴嗎? 我不是讀電資科系的 對一些名詞可能不太熟悉
現在碰到問題是lsqcurvefit的演算法產生的參數數值變動太大
即使我設定了ub、lb,好像沒辦法限制lsqcurvefit產生的參數的範圍
有沒有其他細部選項能夠限制它參數範圍呢?
※ 編輯: yichen1006 來自: 122.126.67.14 (07/20 12:30)
→
07/20 16:13, , 4F
07/20 16:13, 4F
→
07/20 16:14, , 5F
07/20 16:14, 5F